Skip to content

Commit abeba4b

Browse files
committed
Add xtd::string_comparer unit tests
1 parent c8eb3b5 commit abeba4b

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed

tests/xtd.core.unit_tests/src/xtd/tests/string_comparer_tests.cpp

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
#include <xtd/not_implemented_exception>
12
#include <xtd/string_comparer>
23
#include <xtd/time_span>
34
#include <xtd/tunit/assert>
@@ -9,6 +10,34 @@ using namespace xtd::tunit;
910

1011
namespace xtd::tests {
1112
class test_class_(string_comparer_tests) {
13+
void test_method_(string_comparer_current_culture) {
14+
assert::throws<not_implemented_exception>([]{string_comparer::current_culture();});
15+
//assert::are_not_same(string_comparer::current_culture(), string_comparer::current_culture());
16+
}
17+
18+
void test_method_(string_comparer_current_culture_ignore_case) {
19+
assert::throws<not_implemented_exception>([]{string_comparer::current_culture_ignore_case();});
20+
//assert::are_not_same(string_comparer::current_culture_ignore_case(), string_comparer::current_culture_ignore_case());
21+
}
22+
23+
void test_method_(invariant_culture) {
24+
assert::throws<not_implemented_exception>([]{string_comparer::invariant_culture();});
25+
//assert::are_not_same(string_comparer::invariant_culture(), string_comparer::invariant_culture());
26+
}
27+
28+
void test_method_(invariant_culture_ignore_case) {
29+
assert::throws<not_implemented_exception>([]{string_comparer::invariant_culture_ignore_case();});
30+
//assert::are_not_same(string_comparer::invariant_culture_ignore_case(), string_comparer::invariant_culture_ignore_case());
31+
}
32+
33+
void test_method_(ordinal) {
34+
assert::are_same(string_comparer::ordinal(), string_comparer::ordinal());
35+
}
36+
37+
void test_method_(ordinal_ignore_case) {
38+
assert::are_same(string_comparer::ordinal_ignore_case(), string_comparer::ordinal_ignore_case());
39+
}
40+
1241
void test_method_(string_comparer_ordinal_compare_with_strings) {
1342
assert::is_zero(string_comparer::ordinal().compare(string {""}, string {""}));
1443
auto s = string {"abc"};
@@ -228,5 +257,11 @@ namespace xtd::tests {
228257
assert::are_not_equal(string {"bca"}.get_hash_code(), string_comparer::ordinal_ignore_case().get_hash_code(string {"abc"}));
229258
assert::are_not_equal(string {"abc"}.get_hash_code(), string_comparer::ordinal_ignore_case().get_hash_code(string {"bca"}));
230259
}
260+
261+
void test_method_(from_comparison) {
262+
assert::are_equal(string_comparer::ordinal(), string_comparer::from_comparison(string_comparison::ordinal));
263+
assert::are_equal(string_comparer::ordinal_ignore_case(), string_comparer::from_comparison(string_comparison::ordinal_ignore_case));
264+
assert::throws<argument_exception>([]{string_comparer::from_comparison(static_cast<string_comparison>(42));});
265+
}
231266
};
232267
}

0 commit comments

Comments
 (0)