public void TestTransformedWith() { var a = new Group(new int[]{2, 4, 6, 8}); var b = new Group(new int[]{2, 8}); var map = b.MapWith(a); Assert.True(map.Length == 4); Assert.True(map[0] == 0); Assert.True(map[1] == 1); Assert.True(map[2] == 2); Assert.True(map[3] == 3); var c = Group.FromOrderedMap(map); Assert.True(c.Count == 2); Assert.True(c[0] == 0); Assert.True(c[1] == 4); c = b.TransformedWith(a); Assert.True(c.Count == 2); Assert.True(c[0] == 0); Assert.True(c[1] == 4); }
public void TestMapWith() { var items = new string[]{"0", "1", "2", "3", "4", "5", "6", "7"}; var a = new Group(new int[]{3, 8}); var b = new Group(new int[]{2, 5, 7, 8}); var aItems = a.MapTo<string>(items); // Create a map of b in the internal space of a. var map = b.MapWith(a); Assert.True(map.Length == 3); Assert.True(map[0] == 0); Assert.True(map[1] == 1); Assert.True(map[2] == 4); Assert.True(aItems[map[0]] == "3"); Assert.True(aItems[map[1]] == "4"); Assert.True(aItems[map[2]] == "7"); }