On 07/23/13 00:26, Eric Blake wrote: > On 07/22/2013 04:24 PM, Laszlo Ersek wrote: >>> Pretty thorough, although I thought of a couple other ideas to test: >>> i64=5z-6 should fail; i64=5-6-7 should fail >> >> I can add them if you insist, but I wrote (and single-stepped all of) >> the test cases so that all branches added by patches 3, 5 and 6 would be >> covered. (Some of the final tests in this function are actually >> redundant, but I liked how they looked :)) >> >> For example, "i64=5z-6" is no different from "i64=5z", in patch 3 both >> the first added (*endptr == '\0') condition and the (*endptr == '-') >> fail the same way for both input strings: we never look past the "z". >> >> Likewise, "i64=5-6-7" is the same case as "i64=5-6z": both characters >> after the "6" (ie. "-" and "z") violate the second added (*endptr == >> '\0') condition in patch 3 the same way. >> >> Do you accept this argument? :) > > Yes, I can agree you have 100% code coverage as currently coded. Adding > what currently forms redundant cases may avoid future patch-writers from > breaking 100% coverage while actually triggering different paths between > the cases; but at the same time, we can assume such a future > patch-writer would be adding some new feature to the parser, and could > expand the testsuite accordingly as part of their efforts.
Agreed! > So no, I > won't insist on a respin :) Thank you very much :) /me bows and scrapes Laszlo