2018-01-29 09:57:24 +10:30
|
|
|
|
/*
|
|
|
|
|
|
* Copyright 2018 Michael Gratton <mike@vee.net>
|
|
|
|
|
|
*
|
|
|
|
|
|
* This software is licensed under the GNU Lesser General Public License
|
|
|
|
|
|
* (version 2.1 or later). See the COPYING file in this distribution.
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
2018-03-09 11:58:02 +11:00
|
|
|
|
class Geary.String.Test : TestCase {
|
2018-01-29 09:57:24 +10:30
|
|
|
|
|
|
|
|
|
|
public Test() {
|
|
|
|
|
|
base("Geary.String.Test");
|
|
|
|
|
|
add_test("test_whitespace", test_whitespace);
|
|
|
|
|
|
add_test("test_nonprinting", test_nonprinting);
|
2019-08-06 21:37:39 +10:00
|
|
|
|
add_test("test_contains_any_char", test_contains_any_char);
|
2018-01-29 09:57:24 +10:30
|
|
|
|
}
|
|
|
|
|
|
|
2018-03-07 17:30:14 +11:00
|
|
|
|
public void test_whitespace() throws Error {
|
2018-01-29 09:57:24 +10:30
|
|
|
|
assert(reduce_whitespace("") == "");
|
|
|
|
|
|
assert(reduce_whitespace(" ") == "");
|
|
|
|
|
|
assert(reduce_whitespace(" ") == "");
|
|
|
|
|
|
assert(reduce_whitespace(" ") == "");
|
|
|
|
|
|
assert(reduce_whitespace("test") == "test");
|
|
|
|
|
|
assert(reduce_whitespace("test ") == "test");
|
|
|
|
|
|
assert(reduce_whitespace("test ") == "test");
|
|
|
|
|
|
assert(reduce_whitespace("test\n") == "test");
|
|
|
|
|
|
assert(reduce_whitespace("test\r") == "test");
|
|
|
|
|
|
assert(reduce_whitespace("test\t") == "test");
|
|
|
|
|
|
assert(reduce_whitespace(" test") == "test");
|
|
|
|
|
|
assert(reduce_whitespace(" test") == "test");
|
|
|
|
|
|
assert(reduce_whitespace("test test") == "test test");
|
|
|
|
|
|
assert(reduce_whitespace("test test") == "test test");
|
|
|
|
|
|
assert(reduce_whitespace("test\ntest") == "test test");
|
|
|
|
|
|
assert(reduce_whitespace("test\n test") == "test test");
|
|
|
|
|
|
assert(reduce_whitespace("test \ntest") == "test test");
|
|
|
|
|
|
assert(reduce_whitespace("test \n test") == "test test");
|
|
|
|
|
|
assert(reduce_whitespace("test\rtest") == "test test");
|
|
|
|
|
|
assert(reduce_whitespace("test\ttest") == "test test");
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2018-03-07 17:30:14 +11:00
|
|
|
|
public void test_nonprinting() throws Error {
|
2018-01-29 09:57:24 +10:30
|
|
|
|
assert(reduce_whitespace("\0") == ""); // NUL
|
|
|
|
|
|
assert(reduce_whitespace("\u00A0") == ""); // ENQUIRY
|
|
|
|
|
|
assert(reduce_whitespace("\u00A0") == ""); // NO-BREAK SPACE
|
|
|
|
|
|
assert(reduce_whitespace("\u2003") == ""); // EM SPACE
|
|
|
|
|
|
assert(reduce_whitespace("test\n") == "test");
|
|
|
|
|
|
assert(reduce_whitespace("test\ntest") == "test test");
|
|
|
|
|
|
}
|
2019-08-06 21:37:39 +10:00
|
|
|
|
|
|
|
|
|
|
public void test_contains_any_char() throws GLib.Error {
|
|
|
|
|
|
assert(!contains_any_char("test", new unichar[]{ '@' }));
|
|
|
|
|
|
assert(contains_any_char("@test", new unichar[]{ '@' }));
|
|
|
|
|
|
assert(contains_any_char("te@st", new unichar[]{ '@' }));
|
|
|
|
|
|
assert(contains_any_char("test@", new unichar[]{ '@' }));
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2018-01-29 09:57:24 +10:30
|
|
|
|
}
|