public void MixTest(int[] a, int[] b, bool[] c, int[] expected)
        {
            var listA   = new VSArray <int>(a);
            var listB   = new VSArray <int>(b);
            var indices = new VSArray <bool>(c);

            // Create new list, don't modify original
            var list2 = listA.GetMix(listB, indices);

            Assert.That(listA, Is.EqualTo(a.ToVSArray()));
            Assert.That(listB, Is.EqualTo(b.ToVSArray()));
            Assert.That(list2, Is.EqualTo(expected.ToVSArray()));

            // Modify original (in-place)
            listA.Mix(listB, indices);
            Assert.That(listA, Is.EqualTo(expected.ToVSArray()));
            Assert.That(listA, Is.EqualTo(list2));
        }