[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 8/8] OptsVisitor: introduce unit tests, with tes
From: |
Laszlo Ersek |
Subject: |
Re: [Qemu-devel] [PATCH 8/8] OptsVisitor: introduce unit tests, with test cases for range flattening |
Date: |
Tue, 23 Jul 2013 00:37:40 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130621 Thunderbird/17.0.7 |
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
- [Qemu-devel] [PATCH 1/8] OptsVisitor: introduce basic list modes, (continued)
- [Qemu-devel] [PATCH 1/8] OptsVisitor: introduce basic list modes, Laszlo Ersek, 2013/07/22
- [Qemu-devel] [PATCH 6/8] OptsVisitor: don't try to flatten overlong integer ranges, Laszlo Ersek, 2013/07/22
- [Qemu-devel] [PATCH 5/8] OptsVisitor: opts_type_uint64(): recognize intervals when LM_IN_PROGRESS, Laszlo Ersek, 2013/07/22
- [Qemu-devel] [PATCH 7/8] add "test-int128" to .gitignore, Laszlo Ersek, 2013/07/22
- [Qemu-devel] [PATCH 4/8] OptsVisitor: rebase opts_type_uint64() to parse_uint_full(), Laszlo Ersek, 2013/07/22
- [Qemu-devel] [PATCH 2/8] OptsVisitor: introduce list modes for interval flattening, Laszlo Ersek, 2013/07/22
- [Qemu-devel] [PATCH 8/8] OptsVisitor: introduce unit tests, with test cases for range flattening, Laszlo Ersek, 2013/07/22
Re: [Qemu-devel] [PATCH 0/8] OptsVisitor: support / flatten integer ranges for repeating options, Laszlo Ersek, 2013/07/29