Parrot Embed Grant - Report #5
Sat, 30-Apr-2011 by
_Jonathan Leto wrote:_
I am still on the path of increasing "test coverage in src/extend_vtable.c":https://github.com/parrot/parrot/blob/master/t/src/extend_vtable.t. It is much like a zen study, where you methodically concentrate on many tiny little pebbles, one at a time, moving them in the sand, to just the right place. According to the latest code coverage statistics, we are now at "72% code coverage":http://tapir2.ro.vutbr.cz/cover/latest-c_cover/src-extend_vtable-c.html, which is an increase of about 8% since my last report.
Many, many more tests involving "Key PMCs":http://docs.parrot.org/parrot/devel/html/src/pmc/key.pmc.html were added. For an intro to what they are, take a look at my "previous grant update":http://leto.net/dukeleto.pl/2011/04/parrot-embed-grant-update-4-the-journey-continues.html. Many of the tests are clusters of related tests, because most VTABLEs have many similar forms which take integer, string or PMC-flavored keys. I ran into some platform-specific bugs which only manifest on Darwin machines, which were reported by "Jim Keenan in TT #2098":http://trac.parrot.org/parrot/ticket/2098 and which I then fixed by querying with a non-empty Key, which is more prudent.
I also ran into some actual bugs which I reported as Trac Tickets. First is that the cmp_pmc VTABLE does not seem to be working correctly from extend_vtable, which was reported in "TT #2103":http://trac.parrot.org/parrot/ticket/2103. Then I fell into a "hole" in the VTABLE API, where ResizablePMCArray does not respond to defined_keyed(), which it should. This is described in "TT #2094":http://trac.parrot.org/parrot/ticket/2094.
In retrospect, this was one of the most productive periods of my grant work. I estimate that I will be very close to the 95% milestone by my next grant update at this pace, which is very exciting.
_Original article at "dukeleto.pl":http://leto.net/dukeleto.pl/2011/04/parrot-embed-grant-update-5-zen-pebbles.html ._