Przeglądaj źródła

Refactor "Convert" functions to "Wrap" functions

Billy Barrow 3 tygodni temu
rodzic
commit
da0a8ff9f7

+ 0 - 37
src/lib/Convert.vala

@@ -1,37 +0,0 @@
-using Invercargill.DataStructures;
-using Invercargill.Wrappers;
-
-namespace Invercargill.Convert {
-
-    public static Enumerable<T> ate<T>(T[] input) {
-        //  if(typeof(T).is_value_type()) {
-        //      // LibGee has already done the hard work around
-        //      // Vala's funkyness with arrays of type arguments
-        //      var gee = new Gee.ArrayList<T>.wrap(input);
-        //      return new GeeEnumerable<T>(gee);
-        //  }
-
-        return new Wrappers.Array<T>(input);
-    }
-
-    public static Enumerable<T> gate<T>(GLib.GenericArray<T> input) {
-        return new Wrappers.GenericArray<T>(input);
-    }
-
-    public static Enumerable<T> gte<T>(Gee.Iterable<T> input) {
-        return new GeeIterable<T>(input);
-    }
-
-    public static BinaryData batbd(uint8[] input) {
-        return new BinaryData.from_byte_array(input);
-    }
-
-    public static BinaryData btbd(Bytes input) {
-        return new BinaryData.from_bytes(input);
-    }
-
-    public static BinaryData etbd(Enumerable<uint8> input) {
-        return new BinaryData.from_enumerable(input);
-    }
-
-}

+ 13 - 14
src/lib/DataStructures/BinaryData.vala

@@ -1,4 +1,3 @@
-using Invercargill.Convert;
 
 namespace Invercargill.DataStructures {
 
@@ -37,17 +36,17 @@ namespace Invercargill.DataStructures {
         }
 
         public BinaryData.from_bytes(Bytes data) {
-            chunks = Invercargill.single(ate(data.get_data()));
+            chunks = Invercargill.single(Wrap.array(data.get_data()));
             endianness = Endianness.Native;
         }
 
         public BinaryData.from_byte_array(uint8[] data) {
-            chunks = Invercargill.single(ate(data));
+            chunks = Invercargill.single(Wrap.array(data));
             endianness = Endianness.Native;
         }
 
         public BinaryData.from_base64(string data) {
-            chunks = Invercargill.single(ate(Base64.decode(data)));
+            chunks = Invercargill.single(Wrap.array(Base64.decode(data)));
             endianness = Endianness.Native;
         }
 
@@ -86,7 +85,7 @@ namespace Invercargill.DataStructures {
         }
 
         public void append_byte_array(uint8[] data) {
-            append(ate(data));
+            append(Wrap.array(data));
         }
 
         public void append_bytes(Bytes data) {
@@ -98,7 +97,7 @@ namespace Invercargill.DataStructures {
         }
 
         public void prepend_byte_array(uint8[] data) {
-            prepend(ate(data));
+            prepend(Wrap.array(data));
         }
 
         public void prepend_bytes(Bytes data) {
@@ -129,7 +128,7 @@ namespace Invercargill.DataStructures {
                     break;
             }            
             Memory.copy(chunk, &val, sizeof(int64));
-            append(ate(chunk));
+            append(Wrap.array(chunk));
         }
 
         public int64? read_int64(int index) {
@@ -172,7 +171,7 @@ namespace Invercargill.DataStructures {
                     break;
             }            
             Memory.copy(chunk, &val, sizeof(uint64));
-            append(ate(chunk));
+            append(Wrap.array(chunk));
         }
 
 
@@ -225,7 +224,7 @@ namespace Invercargill.DataStructures {
                     break;
             }            
             Memory.copy(chunk, &val, sizeof(int32));
-            append(ate(chunk));
+            append(Wrap.array(chunk));
         }
 
 
@@ -269,7 +268,7 @@ namespace Invercargill.DataStructures {
                     break;
             }            
             Memory.copy(chunk, &val, sizeof(uint32));
-            append(ate(chunk));
+            append(Wrap.array(chunk));
         }
 
 
@@ -313,7 +312,7 @@ namespace Invercargill.DataStructures {
                     break;
             }            
             Memory.copy(chunk, &val, sizeof(int16));
-            append(ate(chunk));
+            append(Wrap.array(chunk));
         }
 
 
@@ -357,7 +356,7 @@ namespace Invercargill.DataStructures {
                     break;
             }            
             Memory.copy(chunk, &val, sizeof(uint16));
-            append(ate(chunk));
+            append(Wrap.array(chunk));
         }
 
         public uint16? read_uint16(int index) {
@@ -388,7 +387,7 @@ namespace Invercargill.DataStructures {
         public void push_int8(int8 value) {
             var chunk = new uint8[sizeof(int8)];    
             Memory.copy(chunk, &value, sizeof(int8));
-            append(ate(chunk));
+            append(Wrap.array(chunk));
         }
 
 
@@ -407,7 +406,7 @@ namespace Invercargill.DataStructures {
 
         public void push_uint8(uint8 value) {
             var chunk = new uint8[] { value };
-            append(ate(chunk));
+            append(Wrap.array(chunk));
         }
 
         public uint8? read_uint8(int index) {

+ 0 - 1
src/lib/DataStructures/Dictionary.vala

@@ -1,4 +1,3 @@
-using Invercargill.Convert;
 
 namespace Invercargill.DataStructures {
 

+ 1 - 5
src/lib/DataStructures/HashSet.vala

@@ -1,4 +1,3 @@
-using Invercargill.Convert;
 
 namespace Invercargill.DataStructures {
 
@@ -211,10 +210,7 @@ namespace Invercargill.DataStructures {
             return other.non_common(this, hash_func, equal_func).count() == 0;
         }
         public bool is_subset_of(Enumerable<T> other) {
-            return this.exclude(other, hash_func, equal_func).debug_trace("subset").count() == 0;
-        }
-        public bool is_proper_subset_of(Enumerable<T> other) {
-            return !equals(other) && is_subset_of(other);
+            return this.exclude(other, hash_func, equal_func).count() == 0;
         }
 
     }

+ 7 - 3
src/lib/Interfaces/ReadOnlySet.vala

@@ -7,12 +7,16 @@ namespace Invercargill {
         public abstract bool try_find(T search, out T item);
         public abstract bool equals(Enumerable<T> other);
         public abstract bool is_subset_of(Enumerable<T> other);
-        public abstract bool is_proper_subset_of(Enumerable<T> other);
 
+        public virtual bool is_proper_subset_of(Enumerable<T> other) {
+            var cache = other.cache();
+            return !equals(cache) && is_subset_of(cache);
+        }
         public virtual bool is_proper_superset_of(Enumerable<T> other) {
-            var search = other.partition(i => has(i));
-            return (search.matching.any() && search.non_matching.any()) || (search.all_items.count() == 0 && count() != 0);
+            var cache = other.cache();
+            return !equals(cache) && is_superset_of(cache);
         }
+
         public virtual bool is_superset_of(Enumerable<T> other) {
             return other == this || other.all(i => has(i));
         }

+ 4 - 0
src/lib/Iterate.vala

@@ -19,6 +19,10 @@ namespace Invercargill.Iterate {
         return new Generators.Directory(Dir.open(path, flags));
     }
 
+    public static Enumerable<T> on<T>(Generators.GeneratorDelegate<T> function) {
+        return new Generators.Function<T>(function);
+    }
+
     public static Enumerable<T> these<T>(T item1, ...) {
         var series = new Series<T>();
         var args = va_list();

+ 1 - 1
src/lib/Modifiers/Concat.vala

@@ -20,7 +20,7 @@ namespace Invercargill.Modifiers {
         }
 
         public override EnumerableInfo get_info() {
-            return new EnumerableInfo.infer(this, EnumerableCategory.COMPUTED, Convert.ate(new Enumerable[] {e1, e2}));
+            return new EnumerableInfo.infer(this, EnumerableCategory.COMPUTED, Iterate.these(e1, e2));
         }
 
         public override Tracker<T> get_tracker() {

+ 1 - 1
src/lib/Modifiers/Interleave.vala

@@ -19,7 +19,7 @@ namespace Invercargill.Modifiers {
         }
 
         public override EnumerableInfo get_info() {
-            return new EnumerableInfo.infer(this, EnumerableCategory.COMPUTED, Convert.ate(new Enumerable[] {e1, e2}));
+            return new EnumerableInfo.infer(this, EnumerableCategory.COMPUTED, Iterate.these(e1, e2));
         }
 
         public override Tracker<T> get_tracker() {

+ 1 - 1
src/lib/Modifiers/Zip.vala

@@ -21,7 +21,7 @@ namespace Invercargill.Modifiers {
         }
 
         public override EnumerableInfo get_info() {
-            return new EnumerableInfo.infer(this, EnumerableCategory.COMPUTED, Convert.ate(new Enumerable[] {e1, e2}));
+            return new EnumerableInfo.infer(this, EnumerableCategory.COMPUTED, Iterate.these(e1, e2));
         }
 
         public override Tracker<TOut> get_tracker() {

+ 15 - 0
src/lib/Wrap.vala

@@ -1,5 +1,20 @@
 using Invercargill.DataStructures;
 namespace Invercargill.Wrap {
 
+    public static Enumerable<T> array<T>(T[] input) {
+        return new Wrappers.Array<T>(input);
+    }
+
+    public static Enumerable<T> generic_array<T>(GLib.GenericArray<T> input) {
+        return new Wrappers.GenericArray<T>(input);
+    }
+
+    public static BinaryData byte_array(uint8[] input) {
+        return new BinaryData.from_byte_array(input);
+    }
+
+    public static BinaryData bytes(Bytes input) {
+        return new BinaryData.from_bytes(input);
+    }
 
 }

+ 0 - 1
src/lib/meson.build

@@ -14,7 +14,6 @@ sources += files('PositionItemPair.vala')
 sources += files('Tracker.vala')
 sources += files('Errors.vala')
 sources += files('SelectionContext.vala')
-sources += files('Convert.vala')
 sources += files('Safety.vala')
 sources += files('Promotion.vala')
 sources += files('Grouping.vala')

+ 4 - 4
src/tests/Integration/Arrays.vala

@@ -1,11 +1,11 @@
 using Invercargill;
-using Invercargill.Convert;
+
 
 void array_tests() {
 
     Test.add_func("/invercargill/function/to_array/simple", () => {
         var input = new int[] { 1, 8, 2, 4, 6, 5, 3, 10, 3, 7 };
-        var array = ate(input).to_array();
+        var array = Wrap.array(input).to_array();
 
         for(int i = 0; i < input.length; i++) {
             assert(array[i] == input[i]);
@@ -25,7 +25,7 @@ void array_tests() {
         var num = 10000000;
         var array = range(0, num).to_array();
 
-        var enumerable = ate(array);
+        var enumerable = Wrap.array(array);
         assert_true(enumerable.count() == num);
     });
 
@@ -33,7 +33,7 @@ void array_tests() {
         var num = 10000000;
         var array = new uint8[num];
 
-        var enumerable = ate(array);
+        var enumerable = Wrap.array(array);
         assert_true(enumerable.count() == num);
     });
 }

+ 2 - 3
src/tests/Integration/BinaryData.vala

@@ -1,5 +1,4 @@
 using Invercargill;
-using Invercargill.Convert;
 using Invercargill.DataStructures;
 
 void binary_data_tests() {
@@ -29,7 +28,7 @@ void binary_data_tests() {
         uint8 u8 = 253;
         int8 i8 = 121;
 
-        var expected_le = ate(new uint8[] { 
+        var expected_le = Wrap.array(new uint8[] { 
             0x87, 0x3A, 0xA6, 0x2B, 0xD4, 0xB2, 0x0B, 0x00, // u64
             0x8E, 0x4E, 0xFC, 0x25, 0x00, 0x00, 0x00, 0x00, // i64
             0x4D, 0x13, 0x9C, 0x02, // u32
@@ -51,7 +50,7 @@ void binary_data_tests() {
         bin_le.push_uint8(u8);
         bin_le.push_int8(i8);
 
-        var expected_be = ate(new uint8[] { 
+        var expected_be = Wrap.array(new uint8[] { 
             0x00, 0x0B, 0xB2, 0xD4, 0x2B, 0xA6, 0x3A, 0x87, // u64
             0x00, 0x00, 0x00, 0x00, 0x25, 0xFC, 0x4E, 0x8E, // i64
             0x02, 0x9C, 0x13, 0x4D, // u32

+ 0 - 1
src/tests/Integration/Cache.vala

@@ -1,5 +1,4 @@
 using Invercargill;
-using Invercargill.Convert;
 
 void cache_tests() {
 

+ 1 - 2
src/tests/Integration/Dictionary.vala

@@ -1,5 +1,4 @@
 using Invercargill;
-using Invercargill.Convert;
 using Invercargill.DataStructures;
 
 
@@ -7,7 +6,7 @@ void dictionary_tests() {
 
     Test.add_func("/invercargill/dictionary/string", () => {
         var names = new string[] {"Billy Barrow", "William Robert", "Johnny Gala", "John Doe"};
-        var dict = ate(names).to_dictionary<string>(n => n.split(" ")[0]);
+        var dict = Wrap.array(names).to_dictionary<string>(n => n.split(" ")[0]);
 
         dict["James"] = "James Smith";
 

+ 6 - 7
src/tests/Integration/Firsts.vala

@@ -1,10 +1,9 @@
 using Invercargill;
-using Invercargill.Convert;
 
 void first_tests() {
 
     Test.add_func("/invercargill/operator/scalar/first/no-condition", () => {
-        var items = ate(new int[] { 1, 2, 3, 4, 5, 6});
+        var items = Wrap.array(new int[] { 1, 2, 3, 4, 5, 6});
 
         try{
             var first = items.first();
@@ -17,7 +16,7 @@ void first_tests() {
     });
 
     Test.add_func("/invercargill/operator/scalar/first/condition", () => {
-        var items = ate(new int[] { 1, 2, 3, 4, 5, 6});
+        var items = Wrap.array(new int[] { 1, 2, 3, 4, 5, 6});
 
         try {
             var first = items.first(i => i > 3);
@@ -29,7 +28,7 @@ void first_tests() {
     });
 
     Test.add_func("/invercargill/operator/scalar/first/empty", () => {
-        var items = ate(new int[] {});
+        var items = Wrap.array(new int[] {});
 
         try {
             items.first();
@@ -41,7 +40,7 @@ void first_tests() {
     });
 
     Test.add_func("/invercargill/operator/scalar/last/no-condition", () => {
-        var items = ate(new int[] { 1, 2, 3, 4, 5, 6});
+        var items = Wrap.array(new int[] { 1, 2, 3, 4, 5, 6});
 
         try{
             var last = items.last();
@@ -54,7 +53,7 @@ void first_tests() {
     });
 
     Test.add_func("/invercargill/operator/scalar/last/condition", () => {
-        var items = ate(new int[] { 1, 2, 3, 4, 5, 6});
+        var items = Wrap.array(new int[] { 1, 2, 3, 4, 5, 6});
 
         try {
             var last = items.last(i => i < 4);
@@ -66,7 +65,7 @@ void first_tests() {
     });
 
     Test.add_func("/invercargill/operator/scalar/last/empty", () => {
-        var items = ate(new int[] {});
+        var items = Wrap.array(new int[] {});
 
         try {
             items.last();

+ 1 - 2
src/tests/Integration/Gee.vala

@@ -1,10 +1,9 @@
 using Invercargill;
-using Invercargill.Convert;
 
 void gee_tests() {
 
     Test.add_func("/invercargill/conversion/gee/collection", () => {
-        var items = ate(new int[] { 1, 2, 3, 4, 5, 6});
+        var items = Wrap.array(new int[] { 1, 2, 3, 4, 5, 6});
         var result = items.to_gee_collection();
 
         var i = 1;

+ 0 - 1
src/tests/Integration/Numbers.vala

@@ -1,5 +1,4 @@
 using Invercargill;
-using Invercargill.Convert;
 using Invercargill.DataStructures;
 
 

+ 5 - 6
src/tests/Integration/OrderBy.vala

@@ -1,11 +1,10 @@
 using Invercargill;
-using Invercargill.Convert;
 
 void order_by_tests() {
 
     Test.add_func("/invercargill/operator/order_by/ascending_int", () => {
         var items = ClassToOrder.data();
-        var expected_ids = ate(new int[] { 1, 2, 3, 4, 5, 6, 7, 8 });
+        var expected_ids = Wrap.array(new int[] { 1, 2, 3, 4, 5, 6, 7, 8 });
 
         var result = items.order_by<int>(i => i.id);
         
@@ -14,7 +13,7 @@ void order_by_tests() {
 
     Test.add_func("/invercargill/operator/order_by/descending_int", () => {
         var items = ClassToOrder.data();
-        var expected_ids = ate(new int[] { 8, 7, 6, 5, 4, 3, 2, 1 });
+        var expected_ids = Wrap.array(new int[] { 8, 7, 6, 5, 4, 3, 2, 1 });
 
         var result = items.order_by_descending<int>(i => i.id);
         
@@ -23,7 +22,7 @@ void order_by_tests() {
 
     Test.add_func("/invercargill/operator/order_by/ascending_string", () => {
         var items = ClassToOrder.data();
-        var expected_ids = ate(new int[] { 2, 4, 8, 3, 7, 6, 1, 5 });
+        var expected_ids = Wrap.array(new int[] { 2, 4, 8, 3, 7, 6, 1, 5 });
 
         var result = items.order_by<string>(i => i.name);
         
@@ -32,7 +31,7 @@ void order_by_tests() {
 
     Test.add_func("/invercargill/operator/order_by/descending_string", () => {
         var items = ClassToOrder.data();
-        var expected_ids = ate(new int[] { 5, 1, 6, 7, 3, 8, 4, 2 });
+        var expected_ids = Wrap.array(new int[] { 5, 1, 6, 7, 3, 8, 4, 2 });
 
         var result = items.order_by_descending<string>(i => i.name);
         
@@ -41,7 +40,7 @@ void order_by_tests() {
 
     Test.add_func("/invercargill/operator/order_by/complex_priority_birthyear_id", () => {
         var items = ClassToOrder.data();
-        var expected_ids = ate(new int[] { 5, 7, 3, 2, 1, 4, 6, 8 });
+        var expected_ids = Wrap.array(new int[] { 5, 7, 3, 2, 1, 4, 6, 8 });
 
         var result = items.order_by_complex(c => c
             .order_by<int>(i => i.priority)

+ 3 - 4
src/tests/Integration/Parallel.vala

@@ -1,11 +1,10 @@
 using Invercargill;
-using Invercargill.Convert;
 
 void parallel_tests() {
 
 
     Test.add_func("/invercargill/operator/parallel/select", () => {
-        var items = ate(new ParallelObj[] { 
+        var items = Wrap.array(new ParallelObj[] { 
             new ParallelObj(),
             new ParallelObj(),
             new ParallelObj(),
@@ -22,7 +21,7 @@ void parallel_tests() {
     });
 
     Test.add_func("/invercargill/operator/parallel/iterate", () => {
-        var items = ate(new ParallelObj[] { 
+        var items = Wrap.array(new ParallelObj[] { 
             new ParallelObj(),
             new ParallelObj(),
             new ParallelObj(),
@@ -41,7 +40,7 @@ void parallel_tests() {
 
     // There is a bug here
     Test.add_func("/invercargill/operator/parallel/select_types", () => {
-        var items = ate(new Obj1[] { 
+        var items = Wrap.array(new Obj1[] { 
             new Obj1() {
                 firstname = "Billy",
                 lastname = "Barrow"

+ 0 - 1
src/tests/Integration/Promotion.vala

@@ -1,5 +1,4 @@
 using Invercargill;
-using Invercargill.Convert;
 using Invercargill.DataStructures;
 
 void promotion_tests() {

+ 0 - 1
src/tests/Integration/PropertyMapper.vala

@@ -1,5 +1,4 @@
 using Invercargill;
-using Invercargill.Convert;
 using Invercargill.Mapping;
 
 void property_mapper_tests() {

+ 6 - 7
src/tests/Integration/Select.vala

@@ -1,11 +1,10 @@
 using Invercargill;
-using Invercargill.Convert;
 
 void select_tests() {
 
     Test.add_func("/invercargill/operator/select/multiply", () => {
-        var items = ate(new int[] { 1, 2, 3, 4, 5, 6});
-        var expected = ate(new int[] {2, 4, 6, 8, 10, 12});
+        var items = Wrap.array(new int[] { 1, 2, 3, 4, 5, 6});
+        var expected = Wrap.array(new int[] {2, 4, 6, 8, 10, 12});
 
         var result = items.select<int>(i => i * 2);
         
@@ -13,8 +12,8 @@ void select_tests() {
     });
 
     Test.add_func("/invercargill/operator/select/new-type", () => {
-        var items = ate(new int[] { 1, 2, 3, 4, 5, 6});
-        var expected = ate(new double?[] {0.5, 1.0, 1.5, 2.0, 2.5, 3.0});
+        var items = Wrap.array(new int[] { 1, 2, 3, 4, 5, 6});
+        var expected = Wrap.array(new double?[] {0.5, 1.0, 1.5, 2.0, 2.5, 3.0});
 
         var result = items.select<double?>(i => ((double?)i)/2.0);
         
@@ -22,7 +21,7 @@ void select_tests() {
     });
 
     Test.add_func("/invercargill/operator/select/non-reference", () => {
-        var items = ate(new Obj1[] { 
+        var items = Wrap.array(new Obj1[] { 
             new Obj1() {
                 firstname = "Billy",
                 lastname = "Barrow"
@@ -33,7 +32,7 @@ void select_tests() {
             }
         });
 
-        var expected = ate(new Obj2[] {
+        var expected = Wrap.array(new Obj2[] {
             new Obj2() {
                 fullname = "Billy Barrow"
             },

+ 3 - 5
src/tests/Integration/SelectMany.vala

@@ -1,10 +1,8 @@
 using Invercargill;
-using Invercargill.Convert;
-
 void select_many_tests() {
 
     Test.add_func("/invercargill/operator/select-many", () => {
-        var items = ate(new Obj3[] {
+        var items = Wrap.array(new Obj3[] {
             new Obj3() {
                 people = new Obj1[] {
                     new Obj1() {
@@ -31,7 +29,7 @@ void select_many_tests() {
             }
         });
 
-        var expected = ate(new Obj2[] {
+        var expected = Wrap.array(new Obj2[] {
             new Obj2() {
                 fullname = "Billy Barrow"
             },
@@ -46,7 +44,7 @@ void select_many_tests() {
             }
         });
 
-        var result = items.select_many<Obj2>(i => ate(i.people).select<Obj2>(p => new Obj2() { fullname = @"$(p.firstname) $(p.lastname)"}));
+        var result = items.select_many<Obj2>(i => Wrap.array(i.people).select<Obj2>(p => new Obj2() { fullname = @"$(p.firstname) $(p.lastname)"}));
         
         assert_true(expected.matches(result, (a, b) => a.fullname == b.fullname));
     });

+ 1 - 2
src/tests/Integration/Series.vala

@@ -1,5 +1,4 @@
 using Invercargill;
-using Invercargill.Convert;
 using Invercargill.DataStructures;
 
 
@@ -25,7 +24,7 @@ void series_tests() {
     Test.add_func("/invercargill/structure/series/to_array", () => {
 
         var items = new int[] { 1, 8, 2, 4, 6, 5, 3, 10, 3, 7 };
-        var vector = Convert.ate(items).to_vector();
+        var vector = Wrap.array(items).to_vector();
         var array = vector.to_array();
         assert(array.length == 10);
 

+ 6 - 7
src/tests/Integration/Set.vala

@@ -1,5 +1,4 @@
 using Invercargill;
-using Invercargill.Convert;
 using Invercargill.DataStructures;
 
 
@@ -13,13 +12,13 @@ void set_tests() {
         assert(hashset.first_or_default() == 8);
     });
 
-    //  Test.add_func("/invercargill/structure/hash_set/add_many", () => {
+    Test.add_func("/invercargill/structure/hash_set/add_many", () => {
 
-    //      var items = range(0, 10000000);
-    //      var hashset = items.to_hash_set();
-    //      assert_cmpint(hashset.count(), CompareOperator.EQ, 10000000);
-    //      assert_true(hashset.equals(items));
-    //  });
+        var items = range(0, 10000000);
+        var hashset = items.to_hash_set();
+        assert_cmpint(hashset.count(), CompareOperator.EQ, 10000000);
+        assert_true(hashset.equals(items));
+    });
 
     Test.add_func("/invercargill/structure/hash_set/de_duplicates", () => {
 

+ 2 - 3
src/tests/Integration/Sort.vala

@@ -1,11 +1,10 @@
 using Invercargill;
-using Invercargill.Convert;
 
 void sort_tests() {
 
     Test.add_func("/invercargill/operator/sort/ints", () => {
-        var items = ate(new int[] { 8, 5, 6, 9, 10, 2, 7, 1, 4, 3 });
-        var expected = ate(new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10});
+        var items = Wrap.array(new int[] { 8, 5, 6, 9, 10, 2, 7, 1, 4, 3 });
+        var expected = Wrap.array(new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10});
 
         var result = items.sort((a, b) => a - b);
         

+ 1 - 2
src/tests/Integration/SortedSeries.vala

@@ -1,5 +1,4 @@
 using Invercargill;
-using Invercargill.Convert;
 using Invercargill.DataStructures;
 
 
@@ -47,7 +46,7 @@ void sorted_series_tests() {
         var items = new int[] { 1, 8, 2, 4, 6, 5, 3, 10, 3, 7 };
         var expected = new int[] { 1, 2, 3, 3, 4, 5, 6, 7, 8, 10 };
         var series = new SortedSeries<int>();
-        series.add_all(Convert.ate(items));
+        series.add_all(Wrap.array(items));
         var array = series.to_array();
         assert_cmpint(array.length, CompareOperator.EQ, 10);
 

+ 1 - 2
src/tests/Integration/SortedVector.vala

@@ -1,5 +1,4 @@
 using Invercargill;
-using Invercargill.Convert;
 using Invercargill.DataStructures;
 
 
@@ -47,7 +46,7 @@ void sorted_vector_tests() {
         var items = new int[] { 1, 8, 2, 4, 6, 5, 3, 10, 3, 7 };
         var expected = new int[] { 1, 2, 3, 3, 4, 5, 6, 7, 8, 10 };
         var series = new SortedVector<int>();
-        series.add_all(Convert.ate(items));
+        series.add_all(Wrap.array(items));
         var array = series.to_array();
         assert_cmpint(array.length, CompareOperator.EQ, 10);
 

+ 1 - 2
src/tests/Integration/Tracker.vala

@@ -1,10 +1,9 @@
 using Invercargill;
-using Invercargill.Convert;
 
 void tracker_tests() {
 
     Test.add_func("/invercargill/enumerable/iterator", () => {
-        var items = ate(new int[] { 1, 2, 3, 4, 5, 6});
+        var items = Wrap.array(new int[] { 1, 2, 3, 4, 5, 6});
 
         var i = 1;
         foreach (var item in items) {

+ 9 - 10
src/tests/Integration/Vector.vala

@@ -1,5 +1,4 @@
 using Invercargill;
-using Invercargill.Convert;
 using Invercargill.DataStructures;
 
 
@@ -74,7 +73,7 @@ void vector_tests() {
     Test.add_func("/invercargill/structure/vector/to_vector", () => {
 
         var items = new int[] { 1, 8, 2, 4, 6, 5, 3, 10, 3, 7 };
-        var vector = Convert.ate(items).to_vector();
+        var vector = Wrap.array(items).to_vector();
         assert(vector.count() == 10);
 
         for(int i = 0; i < items.length; i++) {
@@ -85,7 +84,7 @@ void vector_tests() {
     Test.add_func("/invercargill/structure/vector/to_array", () => {
 
         var items = new int[] { 1, 8, 2, 4, 6, 5, 3, 10, 3, 7 };
-        var vector = Convert.ate(items).to_vector();
+        var vector = Wrap.array(items).to_vector();
         var array = vector.to_array();
         assert(array.length == 10);
 
@@ -107,12 +106,12 @@ void vector_tests() {
 
         var items = new int[] { 1, 8, 2, 4, 6, 5, 3, 10, 3, 7 };
         var expected = new int[] { 1, 8, 2, 4, 6, 3, 10, 3, 7 };
-        var vector = Convert.ate(items).to_vector();
+        var vector = Wrap.array(items).to_vector();
 
         try {
             vector.remove_at(5);
             assert(vector.count() == 9);
-            assert(vector.matches(Convert.ate(expected), (a, b) => a == b));
+            assert(vector.matches(Wrap.array(expected), (a, b) => a == b));
         }
         catch(Error e) {
             assert_no_error(e);
@@ -121,7 +120,7 @@ void vector_tests() {
     });
 
     Test.add_func("/invercargill/structure/vector/last/no-condition", () => {
-        var items = ate(new int[] { 1, 2, 3, 4, 5, 6}).to_vector();
+        var items = Wrap.array(new int[] { 1, 2, 3, 4, 5, 6}).to_vector();
 
         try{
             var last = items.last();
@@ -134,7 +133,7 @@ void vector_tests() {
     });
 
     Test.add_func("/invercargill/structure/vector/last/condition", () => {
-        var items = ate(new int[] { 1, 2, 3, 4, 5, 6}).to_vector();
+        var items = Wrap.array(new int[] { 1, 2, 3, 4, 5, 6}).to_vector();
 
         try {
             var last = items.last(i => i < 4);
@@ -183,7 +182,7 @@ void vector_tests() {
     });
 
     Test.add_func("/invercargill/structure/vector/get/out-of-bounds", () => {
-        var items = ate(new int[] { 1, 2, 3, 4, 5, 6}).to_vector();
+        var items = Wrap.array(new int[] { 1, 2, 3, 4, 5, 6}).to_vector();
 
         try {
             items.get(6);
@@ -220,7 +219,7 @@ void vector_tests() {
     });
 
     Test.add_func("/invercargill/structure/vector/set/out-of-bounds", () => {
-        var items = ate(new int[] { 1, 2, 3, 4, 5, 6}).to_vector();
+        var items = Wrap.array(new int[] { 1, 2, 3, 4, 5, 6}).to_vector();
 
         try {
             items.set(6, 7);
@@ -232,7 +231,7 @@ void vector_tests() {
     });
 
     Test.add_func("/invercargill/structure/vector/set/valid", () => {
-        var items = ate(new int[] { 1, 2, 3, 4, 5, 6}).to_vector();
+        var items = Wrap.array(new int[] { 1, 2, 3, 4, 5, 6}).to_vector();
 
         try {
             items.set(1, 8);

+ 6 - 7
src/tests/Integration/Where.vala

@@ -1,11 +1,10 @@
 using Invercargill;
-using Invercargill.Convert;
 
 void where_tests() {
 
     Test.add_func("/invercargill/operator/where/all-true", () => {
-        var items = ate(new int[] { 1, 2, 3, 4, 5, 6});
-        var expected = ate(new int[] {1, 2, 3, 4, 5, 6});
+        var items = Wrap.array(new int[] { 1, 2, 3, 4, 5, 6});
+        var expected = Wrap.array(new int[] {1, 2, 3, 4, 5, 6});
 
         var result = items.where(i => true);
         
@@ -15,8 +14,8 @@ void where_tests() {
     });
 
     Test.add_func("/invercargill/operator/where/all-false", () => {
-        var items = ate(new int[] { 1, 2, 3, 4, 5, 6});
-        var expected = ate(new int[] {});
+        var items = Wrap.array(new int[] { 1, 2, 3, 4, 5, 6});
+        var expected = Wrap.array(new int[] {});
 
         var result = items.where(i => false);
         
@@ -24,8 +23,8 @@ void where_tests() {
     });
 
     Test.add_func("/invercargill/operator/where/gt-4", () => {
-        var items = ate(new int[] { 1, 2, 3, 4, 5, 6});
-        var expected = ate(new int[] {4, 5, 6});
+        var items = Wrap.array(new int[] { 1, 2, 3, 4, 5, 6});
+        var expected = Wrap.array(new int[] {4, 5, 6});
 
         var result = items.where(i => i > 3);
         

+ 23 - 23
src/tests/TestRunner.vala

@@ -3,29 +3,29 @@ public static int main(string[] args) {
 
     Test.init(ref args);
 
-    //  where_tests();
-    //  select_tests();
-    //  select_many_tests();
-    //  gee_tests();
-    //  tracker_tests();
-    //  parallel_tests();
-    //  first_tests();
-    //  binary_data_tests();
-    //  sort_tests();
-    //  vector_tests();
-    //  series_tests();
-    //  array_tests();
-    //  promotion_tests();
-    //  numbers_test();
-    //  dictionary_tests();
-    //  property_mapper_tests();
-    //  cache_tests();
-    //  sorted_vector_tests();
-    //  sorted_series_tests();
-    //  order_by_tests();
+    where_tests();
+    select_tests();
+    select_many_tests();
+    gee_tests();
+    tracker_tests();
+    parallel_tests();
+    first_tests();
+    binary_data_tests();
+    sort_tests();
+    vector_tests();
+    series_tests();
+    array_tests();
+    promotion_tests();
+    numbers_test();
+    dictionary_tests();
+    property_mapper_tests();
+    cache_tests();
+    sorted_vector_tests();
+    sorted_series_tests();
+    order_by_tests();
     set_tests();
 
-    Test.run();
+    var result = Test.run();
     
     series_speed_test();
     vector_speed_test();
@@ -33,8 +33,8 @@ public static int main(string[] args) {
     set_speed_test();
     dictionary_speed_test();
     sorted_series_speed_test();
-    fifo_speed_test();
+    //  fifo_speed_test();
 
 
-    return 0;
+    return result;
 }