]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
tests: Add more string method tests
authorRico Tzschichholz <ricotz@ubuntu.com>
Tue, 30 Oct 2018 08:54:56 +0000 (09:54 +0100)
committerRico Tzschichholz <ricotz@ubuntu.com>
Tue, 30 Oct 2018 09:03:21 +0000 (10:03 +0100)
tests/basic-types/strings.vala

index bb27a61e969c57eb7ccd30a8a60cbf9a467134b8..a4fcda4f7afca151dbcb3b4a0cfd2aab9c2027bc 100644 (file)
@@ -35,6 +35,83 @@ void test_string () {
        assert (t[1] == 'l');
 }
 
+void test_string_joinv () {
+       string[] sa = { "hello", "my", "world" };
+
+       string s = string.joinv (" ", sa);
+       assert (s == "hello my world");
+
+       sa.length = -1;
+       s = string.joinv (":", sa);
+       assert (s == "hello:my:world");
+
+       s = string.joinv ("-", null);
+       assert (s == "");
+}
+
+void test_string_replace () {
+       string s = "hellomyworld";
+
+       s = s.replace ("my", "whole");
+       assert (s == "hellowholeworld");
+}
+
+void test_string_slice () {
+       string s = "hellomyworld";
+
+       string r = s.slice (5, 7);
+       assert (r == "my");
+
+       r = s.slice (-7, 7);
+       assert (r == "my");
+
+       r = s.slice (5, -5);
+       assert (r == "my");
+
+       r = s.slice (-7, -5);
+       assert (r == "my");
+}
+
+void test_string_splice () {
+       string s = "hellomyworld";
+
+       s = s.splice (5, 7);
+       assert (s == "helloworld");
+
+       s = s.splice (5, 5, "whole");
+       assert (s == "hellowholeworld");
+
+       s = s.splice (10, -5, "wide");
+       assert (s == "hellowholewideworld");
+
+       s = s.splice (-14, 5);
+       assert (s == "hellowholewideworld");
+
+       s = s.splice (-14, -5);
+       assert (s == "helloworld");
+}
+
+void test_string_substring () {
+       string s = "hellomyworld";
+
+       string r = s.substring (5, 2);
+       assert (r == "my");
+
+       r = s.substring (-7, 2);
+       assert (r == "my");
+
+       r = s.substring (5);
+       assert (r == "myworld");
+
+       r = s.substring (-7);
+       assert (r == "myworld");
+}
+
 void main () {
        test_string ();
+       test_string_joinv ();
+       test_string_replace ();
+       test_string_slice ();
+       test_string_splice ();
+       test_string_substring ();
 }