@@ -84,6 +84,9 @@ def test_002_count_intersection(self):
8484 self ._nodeset_t (["--count" , "foo[395-442]" , "--intersection" , "foo" , "-i" , "foo[1-200,245-394]" ], None , b"0\n " )
8585 self ._nodeset_t (["--count" , "foo[395-442]" , "-i" , "foo" , "-i" , "foo[0-200,245-394]" ], None , b"0\n " )
8686 self ._nodeset_t (["--count" , "foo[395-442]" , "--intersection" , "bar3,bar24" , "-i" , "foo[1-200,245-394]" ], None , b"0\n " )
87+ # multiline args (#394)
88+ self ._nodeset_t (["--count" , "foo[1,2]" , "-i" , "foo1\n foo2" ], None , b"2\n " )
89+ self ._nodeset_t (["--count" , "foo[1,2]" , "-i" , "foo1\n foo2" , "foo3\n foo4" ], None , b"4\n " )
8790
8891 def test_003_count_intersection_stdin (self ):
8992 """test nodeset --count --intersection (stdin)"""
@@ -114,6 +117,9 @@ def _battery_fold(self, args):
114117 self ._nodeset_t (args + ["--fold" , "foo[395-442]" , "foo" , "foo[1-200,245-394]" ], None , b"foo,foo[1-200,245-442]\n " )
115118 self ._nodeset_t (args + ["--fold" , "foo[395-442]" , "foo" , "foo[0-200,245-394]" ], None , b"foo,foo[0-200,245-442]\n " )
116119 self ._nodeset_t (args + ["--fold" , "foo[395-442]" , "bar3,bar24" , "foo[1-200,245-394]" ], None , b"bar[3,24],foo[1-200,245-442]\n " )
120+ # multiline arg (#394)
121+ self ._nodeset_t (args + ["--fold" , "foo3\n foo1\n foo2\n bar" ], None , b"bar,foo[1-3]\n " )
122+ self ._nodeset_t (args + ["--fold" , "foo3\n \n \n foo1\n \n foo2\n \n " ], None , b"foo[1-3]\n " )
117123 # stdin
118124 self ._nodeset_t (args + ["--fold" ], "\n " , b"\n " )
119125 self ._nodeset_t (args + ["--fold" ], "foo\n " , b"foo\n " )
@@ -212,6 +218,9 @@ def test_009_fold_xor(self):
212218 self ._nodeset_t (["--fold" , "foo[395-442]" , "-X" , "foo" , "-X" , "foo[1-200,245-394]" ], None , b"foo,foo[1-200,245-442]\n " )
213219 self ._nodeset_t (["--fold" , "foo[395-442]" , "-X" , "foo" , "-X" , "foo[0-200,245-394]" ], None , b"foo,foo[0-200,245-442]\n " )
214220 self ._nodeset_t (["--fold" , "foo[395-442]" , "-X" , "bar3,bar24" , "-X" , "foo[1-200,245-394]" ], None , b"bar[3,24],foo[1-200,245-442]\n " )
221+ # multiline args (#394)
222+ self ._nodeset_t (["--fold" , "foo[1-10]" , "-X" , "foo5\n foo6\n foo7" ], None , b"foo[1-4,8-10]\n " )
223+ self ._nodeset_t (["--fold" , "foo[1-10]" , "-X" , "foo5\n foo6\n foo7" , "foo5\n foo6" ], None , b"foo[1-6,8-10]\n " )
215224
216225 def test_010_fold_xor_stdin (self ):
217226 """test nodeset --fold --xor (stdin)"""
@@ -241,6 +250,9 @@ def test_011_fold_exclude(self):
241250 # Do no change
242251 self ._nodeset_t (["--fold" , "foo[6-10]" , "-x" , "bar[0-5]" ], None , b"foo[6-10]\n " )
243252 self ._nodeset_t (["--fold" , "foo[0-10]" , "foo[13-18]" , "--exclude" , "foo[5-10,15]" ], None , b"foo[0-4,13-14,16-18]\n " )
253+ # multiline args (#394)
254+ self ._nodeset_t (["--fold" , "foo[0-5]" , "-x" , "foo0\n foo9\n foo3\n foo2\n foo1" ], None , b"foo[4-5]\n " )
255+ self ._nodeset_t (["--fold" , "foo[0-5]" , "-x" , "foo0\n foo9\n foo3\n foo2\n foo1" , "foo5\n foo6" ], None , b"foo[4-6]\n " )
244256
245257 def test_012_fold_exclude_stdin (self ):
246258 """test nodeset --fold --exclude (stdin)"""
0 commit comments