Module: wine Branch: master Commit: c8898f6bba7a6a9eb7c77835a368d42c94cefc4a URL: http://source.winehq.org/git/wine.git/?a=commit;h=c8898f6bba7a6a9eb7c77835a3... Author: Mike McCormack <mike(a)codeweavers.com> Date: Wed Dec 6 22:29:34 2006 +0900 msi: Add tests for comparison to empty strings. --- dlls/msi/tests/package.c | 133 ++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 133 insertions(+), 0 deletions(-) diff --git a/dlls/msi/tests/package.c b/dlls/msi/tests/package.c index 5a6a7a8..112655d 100644 --- a/dlls/msi/tests/package.c +++ b/dlls/msi/tests/package.c @@ -1196,6 +1196,139 @@ static void test_condition(void) r = MsiEvaluateCondition(hpkg, "one >> two"); ok( r == MSICONDITION_TRUE, "wrong return val\n"); + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"1.1.4322\""); + ok( r == MSICONDITION_FALSE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport > \"1.1.4322\""); + ok( r == MSICONDITION_TRUE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport >= \"1.1.4322\""); + ok( r == MSICONDITION_TRUE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport <= \"1.1.4322\""); + ok( r == MSICONDITION_FALSE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport <> \"1.1.4322\""); + ok( r == MSICONDITION_TRUE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport ~< \"1.1.4322\""); + ok( r == MSICONDITION_FALSE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"abcd\""); + ok( r == MSICONDITION_TRUE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"a1.1.4322\""); + ok( r == MSICONDITION_TRUE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"1.1.4322a\""); + ok( r == MSICONDITION_TRUE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"0000001.1.4322\""); + ok( r == MSICONDITION_FALSE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"1.1.4322.1\""); + ok( r == MSICONDITION_FALSE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"1.1.4322.1.1\""); + ok( r == MSICONDITION_FALSE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "\"2\" < \"1.1"); + ok( r == MSICONDITION_ERROR, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "\"2\" < \"1.1\""); + ok( r == MSICONDITION_FALSE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "\"2\" < \"12.1\""); + ok( r == MSICONDITION_FALSE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "\"02.1\" < \"2.11\""); + ok( r == MSICONDITION_TRUE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "\"02.1.1\" < \"2.1\""); + ok( r == MSICONDITION_TRUE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"1.1\""); + ok( r == MSICONDITION_FALSE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"1\""); + ok( r == MSICONDITION_FALSE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"0\""); + ok( r == MSICONDITION_FALSE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"-1\""); + ok( r == MSICONDITION_FALSE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"a\""); + ok( r == MSICONDITION_TRUE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"!\""); + ok( r == MSICONDITION_FALSE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"!\""); + ok( r == MSICONDITION_FALSE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"/\""); + ok( r == MSICONDITION_FALSE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \" \""); + ok( r == MSICONDITION_FALSE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"azAZ_\""); + ok( r == MSICONDITION_TRUE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"a[a]\""); + ok( r == MSICONDITION_TRUE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"a[a]a\""); + ok( r == MSICONDITION_TRUE, "wrong return val (%d)\n", r); + + todo_wine { + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"[a]\""); + ok( r == MSICONDITION_FALSE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"[a]a\""); + ok( r == MSICONDITION_FALSE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"{a}\""); + ok( r == MSICONDITION_FALSE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"{a\""); + ok( r == MSICONDITION_FALSE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"[a\""); + ok( r == MSICONDITION_FALSE, "wrong return val (%d)\n", r); + } + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"a{\""); + ok( r == MSICONDITION_TRUE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"a]\""); + ok( r == MSICONDITION_TRUE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"A\""); + ok( r == MSICONDITION_TRUE, "wrong return val (%d)\n", r); + + MsiSetProperty(hpkg, "MsiNetAssemblySupport", "1.1.4322"); + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"1.1.4322\""); + ok( r == MSICONDITION_FALSE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"1.1.14322\""); + ok( r == MSICONDITION_FALSE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"1.1.5\""); + ok( r == MSICONDITION_TRUE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"1.1\""); + ok( r == MSICONDITION_FALSE, "wrong return val (%d)\n", r); + + r = MsiEvaluateCondition(hpkg, "MsiNetAssemblySupport < \"1\""); + ok( r == MSICONDITION_FALSE, "wrong return val (%d)\n", r); + + MsiSetProperty(hpkg, "one", "1"); + r = MsiEvaluateCondition(hpkg, "one < \"1\""); + ok( r == MSICONDITION_FALSE, "wrong return val\n"); + MsiCloseHandle( hpkg ); DeleteFile(msifile); }