[Box Backup-commit] COMMIT r1058 - box/chris/merge/test/common
boxbackup-dev@fluffy.co.uk
boxbackup-dev@fluffy.co.uk
Sun, 15 Oct 2006 20:28:21 +0100
Author: chris
Date: 2006-10-15 20:28:21 +0100 (Sun, 15 Oct 2006)
New Revision: 1058
Modified:
box/chris/merge/test/common/testcommon.cpp
Log:
Added tests for case-insensitive matching in exclude lists on Win32.
(refs #3)
Modified: box/chris/merge/test/common/testcommon.cpp
===================================================================
--- box/chris/merge/test/common/testcommon.cpp 2006-10-15 19:27:14 UTC (rev 1057)
+++ box/chris/merge/test/common/testcommon.cpp 2006-10-15 19:28:21 UTC (rev 1058)
@@ -597,21 +597,43 @@
TEST_CHECK_THROWS(elist.AddRegexEntries(std::string("[a-d]+\\.reg$" "\x01" "EXCLUDE" "\x01" "^exclude$")), CommonException, RegexNotSupportedOnThisPlatform);
TEST_THAT(elist.SizeOfRegexList() == 0);
#endif
+
+ #ifdef WIN32
+ #define CASE_SENSITIVE false
+ #else
+ #define CASE_SENSITIVE true
+ #endif
+
// Try some matches!
TEST_THAT(elist.IsExcluded(std::string("Definite1")) == true);
TEST_THAT(elist.IsExcluded(std::string("/dir/DefNumberTwo")) == true);
TEST_THAT(elist.IsExcluded(std::string("ThingDefThree")) == true);
TEST_THAT(elist.IsExcluded(std::string("AnotherDef")) == true);
TEST_THAT(elist.IsExcluded(std::string("dir/DefNumberTwo")) == false);
+
+ // Try some case insensitive matches,
+ // that should pass on Win32 and fail elsewhere
+ TEST_THAT(elist.IsExcluded("DEFINITe1")
+ == !CASE_SENSITIVE);
+ TEST_THAT(elist.IsExcluded("/Dir/DefNumberTwo")
+ == !CASE_SENSITIVE);
+ TEST_THAT(elist.IsExcluded("thingdefthree")
+ == !CASE_SENSITIVE);
+
#ifdef HAVE_REGEX_H
TEST_THAT(elist.IsExcluded(std::string("b.reg")) == true);
+ TEST_THAT(elist.IsExcluded(std::string("B.reg")) == !CASE_SENSITIVE);
+ TEST_THAT(elist.IsExcluded(std::string("b.Reg")) == !CASE_SENSITIVE);
TEST_THAT(elist.IsExcluded(std::string("e.reg")) == false);
- TEST_THAT(elist.IsExcluded(std::string("b.Reg")) == false);
- TEST_THAT(elist.IsExcluded(std::string("DEfinite1")) == false);
+ TEST_THAT(elist.IsExcluded(std::string("e.Reg")) == false);
+ TEST_THAT(elist.IsExcluded(std::string("DEfinite1")) == !CASE_SENSITIVE);
TEST_THAT(elist.IsExcluded(std::string("DEXCLUDEfinite1")) == true);
- TEST_THAT(elist.IsExcluded(std::string("DEfinitexclude1")) == false);
+ TEST_THAT(elist.IsExcluded(std::string("DEfinitexclude1")) == !CASE_SENSITIVE);
TEST_THAT(elist.IsExcluded(std::string("exclude")) == true);
+ TEST_THAT(elist.IsExcluded(std::string("ExcludE")) == !CASE_SENSITIVE);
#endif
+
+ #undef CASE_SENSITIVE
}
test_conversions();