[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: |
Eric Blake |
Subject: |
Re: [Qemu-devel] [PATCH 8/8] OptsVisitor: introduce unit tests, with test cases for range flattening |
Date: |
Mon, 22 Jul 2013 16:26:02 -0600 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130625 Thunderbird/17.0.7 |
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. So no, I
won't insist on a respin :)
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature
- [Qemu-devel] [PATCH 3/8] OptsVisitor: opts_type_int(): recognize intervals when LM_IN_PROGRESS, (continued)
- [Qemu-devel] [PATCH 3/8] OptsVisitor: opts_type_int(): recognize intervals when LM_IN_PROGRESS, Laszlo Ersek, 2013/07/22
- [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