On 02/17/2015 03:04 PM, Cyril Hrubis wrote:
> Hi!
>> Alternatively, you could approach it a bit differently - test the
>> actual kernel namespacing functionality using unshare/setns in
>> *kernel*/containers/ and verify that iproute2 uses it in
>> network/iproute/ (or perhaps commands/ip/ ?).
> 
> Right what needs to be tested is the kernel functionality and that the
> tools call correct syscall with correct paramters, these are two
> different things. But still as far as I can see the easiest way is to
> run the whole test and switch between the tool it uses which is just a
> few lines of code.
> 
> How do you plan to test that ip does what it should? Run it under strace
> and grep for the syscall and check the parameters? That sound fragile to
> me. Or is there a better way?

$ ip netns add testns

and the following two have to return different IDs:

$ readlink /proc/self/ns/net
net:[4026531969]

$ ip netns exec testns readlink /proc/self/ns/net
net:[4026532368]

(And the kernel tests would ideally ensure that different procfs/ns
 values *really* result in different namespaces based on tested
 behavior.)

> 
>> The idea being that you don't exactly need to "brute force" test
>> everything everytime - the kernel functionality doesn't change
>> based on what utility uses the unshare() syscall.
>> I (in ltp-unrelated activities) found out that this approach gives
>> the best coverage / time / maintenance ratio.
> 
> Agree that the kernel functionality is the same. But how does having two
> different testcases one for kernel functionality and one for ip decrease
> maintenance ratio? This soulution would IMHO be more complicated. The
> coverate should be same. The only aspect in which this solution is
> likely better is test runtime, but that shouldn't be a problem because
> these testcases does not take long time. Or am I mistaken?

Right now, they don't (IIRC), but will you document it? Will you watch
for future tests added to this area, to make sure they don't take a long
time because of this "hack"? I guess these are the maintenance costs
I'm trying to point out.

In the end, my suggestion was really just a suggestion - each approach
has pros and cons and it's up to the author (and you, as an upstream
maintainer) to pick the one you want.

Thanks,
Jiri


------------------------------------------------------------------------------
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration & more
Get technology previously reserved for billion-dollar corporations, FREE
http://pubads.g.doubleclick.net/gampad/clk?id=190641631&iu=/4140/ostg.clktrk
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list

Reply via email to