Thursday, August 2, 2007

AbTLinux - coding month reduces failing unit tests to 18

I finally found a few weeks where I could spend some time almost daily on AbTLinux and made a real good coding push. I finished up last time with 27 unit tests failing. After this coding push I am down to 18 unit tests to go!

This coding push involved some major refactoring, included a migration of the file names, method names in all classes, and general unit testing cleanup. This all involved turning my 'java-ish' code into a more 'ruby-ish' look, something pointed out to me by some of you. I checked each of these changes with the fine people that hang out on irc at #ruby-lang. Outside of this work, here is a list of issues that have been implemented:

  • able to purge sources for packages not installed.
  • a simple single word search of package descriptions available.
  • the verification of installed package files (are they installed) implemented.
  • able to view install, build, integrity, configure logs from an installed package.
  • able to generate a list of installed packages.
  • source packages are validated for sha1, currently not allowing failing checks to install.
  • implemented reinstalling of a package.
  • implemented removal of an installed package.
  • can remove build directory (unpacked source tree) or not, configurable in abtconfig.rb.
  • added ipc package source tarball to packages directory, used for copy to correct location instead of having to download sources. This speeds up unit testing.
  • diverse small bugs found along the way.
Over 76 separate code commits over a three week period. We have 46 unit tests running with 54 assertions, 18 failures, and no errors. Things are starting to shape up and I really need a package file generator soon to expand the testing. Things are starting to shape up nicely for the abt framework! ;-)