From: Rico Tzschichholz Date: Fri, 6 Mar 2020 21:47:54 +0000 (+0100) Subject: tests: Split array tests to provide a GLib-independent test X-Git-Tag: 0.48.1~22 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f3b4c2ad727cbe3afaa7984cb3519f4f1d16cf38;p=thirdparty%2Fvala.git tests: Split array tests to provide a GLib-independent test --- diff --git a/tests/Makefile.am b/tests/Makefile.am index 9d54c2ea0..9fccb52de 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -28,6 +28,7 @@ TESTS = \ basic-types/default-gtype.vala \ basic-types/strings.vala \ basic-types/arrays.vala \ + basic-types/arrays-generics.vala \ basic-types/arrays-fixed-assignment.vala \ basic-types/array-uint8-uchar-compat.vala \ basic-types/pointers.vala \ diff --git a/tests/basic-types/arrays-generics.vala b/tests/basic-types/arrays-generics.vala new file mode 100644 index 000000000..4933b27a5 --- /dev/null +++ b/tests/basic-types/arrays-generics.vala @@ -0,0 +1,50 @@ +class Baz : Object { + public Baz () { + } + + Baz get_object () + { + return new Baz (); + } + + public Baz[] create_array () { + var a = get_array (); + a += (Baz) get_object (); + assert (a.length == 2); + assert (!(get_object () in a)); + return a; + } + + public V[] create_array2 () { + var a = get_array2 (); + a += (V) get_object (); + assert (a.length == 3); + assert (!(get_object () in a)); + return a; + } + + T[] get_array () { + T[] a = {}; + a += (T) get_object (); + return a; + } + + G[] get_array2 () { + G[] a = {}; + a += (G) get_object (); + a += (G) get_object (); + return a; + } +} + +void test_generics_array () { + var g = new Baz (); + var a = g.create_array (); + assert (a.length == 2); + var b = g.create_array2 (); + assert (b.length == 3); +} + +void main () { + test_generics_array (); +} diff --git a/tests/basic-types/arrays.vala b/tests/basic-types/arrays.vala index 174e5d472..ac43c2050 100644 --- a/tests/basic-types/arrays.vala +++ b/tests/basic-types/arrays.vala @@ -178,53 +178,6 @@ void test_delegate_array () { assert (simple_func in a); } -class Baz : Object { - public Baz () { - } - - Baz get_object () - { - return new Baz (); - } - - public Baz[] create_array () { - var a = get_array (); - a += (Baz) get_object (); - assert (a.length == 2); - assert (!(get_object () in a)); - return a; - } - - public V[] create_array2 () { - var a = get_array2 (); - a += (V) get_object (); - assert (a.length == 3); - assert (!(get_object () in a)); - return a; - } - - T[] get_array () { - T[] a = {}; - a += (T) get_object (); - return a; - } - - G[] get_array2 () { - G[] a = {}; - a += (G) get_object (); - a += (G) get_object (); - return a; - } -} - -void test_generics_array () { - var g = new Baz (); - var a = g.create_array (); - assert (a.length == 2); - var b = g.create_array2 (); - assert (b.length == 3); -} - void test_void_array () { void*[] a = {}; a += (void*) null; @@ -317,7 +270,6 @@ void main () { test_inline_array (); test_nd_array (); test_delegate_array (); - test_generics_array (); test_void_array (); test_explicit_copying (); test_array_move ();