Mac::AppleEvents Porting

pudge on 2006-06-18T06:15:46

I totally think I finished porting Mac::AppleEvents. I didn't write every test I could -- there's always more that can be tested -- but I am confident the things left untested aren't endian issues.

The tests did uncover a bunch of bugs, some endian, and some not. Over 2500 tests, mostly just testing creating AEDescs, including lists (arrays) and records (hashes), but also making object specifier records (I didn't bother creating other kinds of records, like logical, range, comparison, and so on ... if one works, they all should ... right? :-), and, of course, creating and sending actual Apple events.

I also test each kind of method of creating AEDescs, lists, records, and events, and of adding parameters to events.

For the curious:

PowerBook G4 1GHz:  Files=2, Tests=2543, 12 wallclock secs ( 2.14 cusr +  0.26 csys =  2.40 CPU)
Intel mini 1.66GHz: Files=2, Tests=2543,  3 wallclock secs ( 0.67 cusr +  0.08 csys =  0.75 CPU)


I am going to take tomorrow off (it's my day, after all), and then attack the rest of the modules with a vengeance on Monday night. As noted before, Mac::AppleEvents uses a lot of other modules, and all the other Mac-Carbon tests pass, so I think I am in good shape. The other modules all had decent test suites before, with pretty much the whole API being tested, at least somewhat, for most of them.