Test-Unit

 view release on metacpan or  search on metacpan

doc/class-diagram.txt  view on Meta::CPAN


These objects then percolate into the depths of the mechanism, to be
collected and reported later.  I'm being vague, to spare you the
details.

Test::Unit::Assert isn't for use explicitly in your code, but the
manpage contains a handy breakdown of the various assert methods you
can use.


* Construction of class diagram
** Generate the bulk of the diagram
I fired up "autodia" aka. "autodial" with

  cd $PROJDIR
  autodia.pl -d lib/ -rC
  dia-gnome autodia.out.xml &

Then I started moving boxes around.  Don't worry, they are joined
together!  It helps to set the "autoroute" property on the
connectors...  use the "group properties..." dialog?  I didn't get as
far as hacking the template to fix this.

...shuffle boxes until they're close to the relevant thing and you
have a big tangle of class usage.  Time to simplify.  Probably easier
if you crib my layout.

[later] It doesn't list inheritance outside the codebase...?  Or just
not for "use base".  And not for Test::Unit::TestSuite,
Test::Unit::Warning...  argh.

** Remove stuff that isn't helping
There are dependencies in there which don't need to be graphed.

List of class/what uses it, plus rough notes:

  base
	used by many classes

  Config
		Test::Unit::UnitHarness

  Error
	base class for Test::Unit::Exception, so left on the diagram
	also used by
		Test::Unit::Procedural
		Test::Unit::Assertion::Exception
		Test::Unit::Assert
		Test::Unit::Result
		Test::Unit::TestCase

  File::Basename
		Test::Unit::TkTestRunner

  Tk, Tk::BrowseEntry
		Test::Unit::TkTestRunner


  Tk::ROText	Tk::ArrayBar		(?) should be TkTestRunner
  Tk::DialogBox	Tk::ArrayBar		(?)
  Tk::Derived	Tk::ArrayBar
  Tk::Canvas	Tk::ArrayBar

  Devel::Symdump
>	what's this all about, then?
		Test::Unit::Procedural
		Test::Unit::TestCase

  Filehandle
		Test::Unit::Loader
		Test::Unit::UnitHarness

  Benchmark
>	candidate for moving to Test::Unit::Runner
		Test::Unit::TestRunner
		Test::Unit::TkTestRunner

  Exporter
>	(list incomplete)
>	may be useful to know...
		Test::Unit::Debug
		Test::Unit::Procedural
		Test::Unit::UnitHarness


  Class::Inner
>	was split off this project at some point?
		Test::Unit::Procedural
		Test::Unit::UnitHarness
		Test::Unit::TestCase

  Tk:ArrayBar -> is part of Test::Unit::TkTestRunner, interesting in its own right, but not relevant here


  Test::Unit::Debug
	used by many things, but basically dull
		Test::Unit::Assertion::CodeRef
		Test::Unit::Assert
		Test::Unit::Assertion::Exception
		Test::Unit::TestSuite
		Test::Unit::Result
		Test::Unit::Test
		Test::Unit::TestCase
		Test::Unit::UnitHarness
		Test::Unit::Loader

  Test::Unit::Loader
>	used by many things; headed towards "scary"
>	looks like it should be used by the Runner instead?
		Test::Unit::Listener
		Test::Unit::TestSuite
		Test::Unit::HarnessUnit
		Test::Unit::TkTestRunner
		Test::Unit::TestRunner
	uses
		Test::Unit::UnitHarness
		Test::Unit::TestSuite

  Test::Unit::Warning
	mundane helper class
		Test::Unit::TestSuite



( run in 0.594 second using v1.01-cache-2.11-cpan-71847e10f99 )