From: Michael Schroeder Date: Mon, 23 Mar 2015 14:13:37 +0000 (+0100) Subject: Add str2dep testcases using the genid feature X-Git-Tag: 0.6.11~36 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=850794025c60bf3efe8bd9e402a19cfe83b2fd7b;p=thirdparty%2Flibsolv.git Add str2dep testcases using the genid feature --- diff --git a/test/testcases/testcase/str2dep.t b/test/testcases/testcase/str2dep.t new file mode 100644 index 00000000..d08c110e --- /dev/null +++ b/test/testcases/testcase/str2dep.t @@ -0,0 +1,185 @@ +# testcase for testcase_str2dep and testcase_dep2str + +# +# first test literal escaping +# +genid dep +result genid +#>genid 1: genid null +#>genid dep +nextjob + +genid dep \00 +result genid +#>genid 1: genid lit +#>genid dep \00 +nextjob + +genid dep \21\20\22\23\24\25\26\27\28\29\2a\2b\2c\2d\2e\2f\3a\3b\3c\3d\3e\3f\40\5b\5c\5d\5e\5f\60\7b\7c\7d\7e +result genid +#>genid 1: genid lit ! "#$%&'()*+,-./:;<=>?@[\]^_`{|}~ +#>genid dep \21\20"#$%&'\28\29*+,-./:;<=>?@[\5c]^_`{|}~ +# make vim happy again: ' +nextjob + +genid dep foo(bar) +result genid +#>genid 1: genid lit foo(bar) +#>genid dep foo(bar) +nextjob + +genid dep foo()bar\29 +result genid +#>genid 1: genid lit foo()bar) +#>genid dep foo\28\29bar\29 +nextjob + +# +# test namespace hack +# +genid dep namespace:foo(bar) +result genid +#>genid 1: genid lit namespace:foo +#>genid 2: genid lit bar +#>genid 3: genid op +#>genid dep namespace:foo(bar) +nextjob +genid lit namespace:foo(bar) +result genid +#>genid 1: genid lit namespace:foo(bar) +#>genid dep namespace\3afoo\28bar\29 +nextjob + +# +# test :any hack +# +genid dep foo:any +result genid +#>genid 1: genid lit foo +#>genid 2: genid lit any +#>genid 3: genid op +#>genid dep foo:any +nextjob +genid lit foo:any +result genid +#>genid 1: genid lit foo:any +#>genid dep foo\3aany +nextjob + +# +# test simple ops +# +genid dep foo < 1-1 +result genid +#>genid 1: genid lit foo +#>genid 2: genid lit 1-1 +#>genid 3: genid op < +#>genid dep foo < 1-1 +nextjob + +genid dep foo = 1-1 +result genid +#>genid 1: genid lit foo +#>genid 2: genid lit 1-1 +#>genid 3: genid op = +#>genid dep foo = 1-1 +nextjob + +genid dep foo > 1-1 +result genid +#>genid 1: genid lit foo +#>genid 2: genid lit 1-1 +#>genid 3: genid op > +#>genid dep foo > 1-1 +nextjob + +genid dep foo >= 1-1 +result genid +#>genid 1: genid lit foo +#>genid 2: genid lit 1-1 +#>genid 3: genid op >= +#>genid dep foo >= 1-1 +nextjob + +genid dep foo <= 1-1 +result genid +#>genid 1: genid lit foo +#>genid 2: genid lit 1-1 +#>genid 3: genid op <= +#>genid dep foo <= 1-1 +nextjob + +# test arch op +genid dep foo . i586 +result genid +#>genid 1: genid lit foo +#>genid 2: genid lit i586 +#>genid 3: genid op . +#>genid dep foo . i586 +nextjob + +# test haiku compat dep +genid dep foo = 2-1 compat >= 1-1 +result genid +#>genid 1: genid lit foo +#>genid 2: genid lit 2-1 +#>genid 3: genid lit 1-1 +#>genid 4: genid op compat >= +#>genid 5: genid op = +#>genid dep foo = 2-1 compat >= 1-1 +nextjob + +# +# test complex (aka rich) deps +# + +genid dep foo & bar +result genid +#>genid 1: genid lit foo +#>genid 2: genid lit bar +#>genid 3: genid op & +#>genid dep foo & bar +nextjob + +genid dep foo & bar & baz +result genid +#>genid 1: genid lit foo +#>genid 2: genid lit bar +#>genid 3: genid lit baz +#>genid 4: genid op & +#>genid 5: genid op & +#>genid dep foo & bar & baz +nextjob + +genid dep foo & bar | baz +result genid +#>genid 1: genid lit foo +#>genid 2: genid lit bar +#>genid 3: genid lit baz +#>genid 4: genid op | +#>genid 5: genid op & +#>genid dep foo & (bar | baz) +nextjob + +genid dep (foo & bar) | baz +result genid +#>genid 1: genid lit foo +#>genid 2: genid lit bar +#>genid 3: genid op & +#>genid 4: genid lit baz +#>genid 5: genid op | +#>genid dep (foo & bar) | baz +nextjob + +genid dep (foo & bar > 2) | baz +result genid +#>genid 1: genid lit foo +#>genid 2: genid lit bar +#>genid 3: genid lit 2 +#>genid 4: genid op > +#>genid 5: genid op & +#>genid 6: genid lit baz +#>genid 7: genid op | +#>genid dep (foo & bar > 2) | baz +nextjob +