public void ForEach() { int accum = 0; EnumDataset <int> ds = new EnumDataset <int>(new int[] { 1, 2, 3, 4, 5 }); ds.ForEach(x => { accum += x; }); }
public void ReduceSumWithTake() { EnumDataset<int> ds = new EnumDataset<int>(new int[] { 1, 2, 3 }); var result = ds.Take(2).Reduce<int>((x, y) => x + y); Assert.IsNotNull(result); Assert.AreEqual(3, result); }
public void ReduceCountStrings() { EnumDataset<string> ds = new EnumDataset<string>(new string[] { "foo", "bar" }); var result = ds.Map(s => 1).Reduce<int>((x, y) => x + y); Assert.IsNotNull(result); Assert.AreEqual(2, result); }
public void ReduceSumWithSkip() { EnumDataset <int> ds = new EnumDataset <int>(new int[] { 1, 2, 3, 4 }); var result = ds.Skip(2).Reduce <int>((x, y) => x + y); Assert.IsNotNull(result); Assert.AreEqual(7, result); }
public void ReduceCountStrings() { EnumDataset <string> ds = new EnumDataset <string>(new string[] { "foo", "bar" }); var result = ds.Map(s => 1).Reduce <int>((x, y) => x + y); Assert.IsNotNull(result); Assert.AreEqual(2, result); }
public void ReduceSum() { EnumDataset <int> ds = new EnumDataset <int>(new int[] { 1, 2, 3 }); var result = ds.Reduce <int>((x, y) => x + y); Assert.IsNotNull(result); Assert.AreEqual(6, result); }
public void DistinctElements() { EnumDataset <int> ds = new EnumDataset <int>(new int[] { 1, 2, 3, 2, 3, 3 }); var dds = ds.Distinct(); Assert.AreEqual(3, dds.Count()); Assert.IsTrue(dds.Contains(1)); Assert.IsTrue(dds.Contains(2)); Assert.IsTrue(dds.Contains(3)); }
public void FilterElements() { EnumDataset <int> ds = new EnumDataset <int>(new int[] { 1, 2, 3, 4, 5 }); var fds = ds.Filter(x => x % 2 == 1); Assert.AreEqual(3, fds.Count()); Assert.AreEqual(1, fds.First()); Assert.AreEqual(3, fds.Skip(1).First()); Assert.AreEqual(5, fds.Skip(2).First()); }
public void CountByKey() { EnumDataset <int> ds = new EnumDataset <int>(new int[] { 1, 2, 3, 3, 3, 2 }); var mapds = ds.Map(i => new KeyValuePair <int, int>(i, 0)); var dict = mapds.CountByKey(); Assert.AreEqual(3, dict.Keys.Count); Assert.AreEqual(1, dict[1]); Assert.AreEqual(2, dict[2]); Assert.AreEqual(3, dict[3]); }
public void CountIntegersUsingReduceByKey() { EnumDataset <int> ds = new EnumDataset <int>(new int[] { 1, 2, 3, 3, 3, 2 }); var mapds = ds.Map(i => new KeyValuePair <int, int>(i, 1)); var cds = mapds.ReduceByKey((x, y) => x + y); Assert.AreEqual(3, cds.Count()); Assert.IsTrue(cds.Contains(new KeyValuePair <int, int>(1, 1))); Assert.IsTrue(cds.Contains(new KeyValuePair <int, int>(2, 2))); Assert.IsTrue(cds.Contains(new KeyValuePair <int, int>(3, 3))); }
public void MapIncrement() { EnumDataset<int> ds = new EnumDataset<int>(new int[] { 1, 2, 3 }); BaseDataset<int> mapds = ds.Map(i => i + 1); var enumerator = mapds.GetEnumerator(); for (int k = 1; enumerator.MoveNext(); k++) Assert.AreEqual(k + 1, enumerator.Current); Assert.AreEqual(3, mapds.Count()); }
public void Intersect() { EnumDataset <int> ds1 = new EnumDataset <int>(new int[] { 1, 2, 3 }); EnumDataset <int> ds2 = new EnumDataset <int>(new int[] { 4, 5, 2, 3 }); var uds = ds1.Intersect(ds2); Assert.IsTrue(uds.Contains(2)); Assert.IsTrue(uds.Contains(3)); Assert.AreEqual(2, uds.Count()); }
public void GetElements() { EnumDataset<int> ds = new EnumDataset<int>(new int[] { 1, 2, 3 }); var enumerator = ds.GetEnumerator(); for (int k = 1; enumerator.MoveNext(); k++) Assert.AreEqual(k, enumerator.Current); Assert.AreEqual(3, ds.Count()); Assert.IsNotNull(((IEnumerable)ds).GetEnumerator()); }
public void Collect() { EnumDataset <int> ds = new EnumDataset <int>(new int[] { 1, 2, 3 }); var result = ds.Collect(); Assert.IsNotNull(result); Assert.AreEqual(3, result.Count); Assert.AreEqual(1, result[0]); Assert.AreEqual(2, result[1]); Assert.AreEqual(3, result[2]); }
public void MapIncrement() { EnumDataset <int> ds = new EnumDataset <int>(new int[] { 1, 2, 3 }); IDataset <int> mapds = ds.Map(i => i + 1); var enumerator = mapds.GetEnumerator(); for (int k = 1; enumerator.MoveNext(); k++) { Assert.AreEqual(k + 1, enumerator.Current); } Assert.AreEqual(3, mapds.Count()); }
public void MapKeyValue() { EnumDataset <int> ds = new EnumDataset <int>(new int[] { 1, 2, 3 }); var mapds = ds.Map(i => new KeyValuePair <int, int>(i, i * i)); var enumerator = mapds.GetEnumerator(); for (int k = 1; enumerator.MoveNext(); k++) { Assert.AreEqual(new KeyValuePair <int, int>(k, k * k), enumerator.Current); } Assert.AreEqual(3, mapds.Count()); }
public void GetElements() { EnumDataset <int> ds = new EnumDataset <int>(new int[] { 1, 2, 3 }); var enumerator = ds.GetEnumerator(); for (int k = 1; enumerator.MoveNext(); k++) { Assert.AreEqual(k, enumerator.Current); } Assert.AreEqual(3, ds.Count()); Assert.IsNotNull(((IEnumerable)ds).GetEnumerator()); }
public void Union() { EnumDataset <int> ds1 = new EnumDataset <int>(new int[] { 1, 2, 3 }); EnumDataset <int> ds2 = new EnumDataset <int>(new int[] { 4, 5, 2, 3 }); var uds = ds1.Union(ds2); Assert.IsTrue(uds.Contains(1)); Assert.IsTrue(uds.Contains(2)); Assert.IsTrue(uds.Contains(3)); Assert.IsTrue(uds.Contains(4)); Assert.IsTrue(uds.Contains(5)); Assert.AreEqual(5, uds.Count()); }
public void CartesianProduct() { EnumDataset <int> ds1 = new EnumDataset <int>(new int[] { 1, 2, 3 }); EnumDataset <string> ds2 = new EnumDataset <string>(new string[] { "foo", "bar" }); var cds = ds1.Cartesian(ds2); Assert.IsTrue(cds.Contains(new KeyValuePair <int, string>(1, "foo"))); Assert.IsTrue(cds.Contains(new KeyValuePair <int, string>(1, "bar"))); Assert.IsTrue(cds.Contains(new KeyValuePair <int, string>(2, "foo"))); Assert.IsTrue(cds.Contains(new KeyValuePair <int, string>(2, "bar"))); Assert.IsTrue(cds.Contains(new KeyValuePair <int, string>(3, "foo"))); Assert.IsTrue(cds.Contains(new KeyValuePair <int, string>(3, "bar"))); Assert.AreEqual(6, cds.Count()); }
public void GroupByKey() { EnumDataset <int> ds = new EnumDataset <int>(new int[] { 1, 2, 3, 3, 3, 2 }); var mapds = ds.Map(i => new KeyValuePair <int, int>(i % 2, i)); var gds = mapds.GroupByKey(); Assert.AreEqual(2, gds.Elements.Count()); var values0 = gds.Elements.First(kv => kv.Key == 0).Value; Assert.AreEqual(2, values0.Count()); Assert.AreEqual(2, values0.Count(v => v == 2)); var values1 = gds.Elements.First(kv => kv.Key == 1).Value; Assert.AreEqual(4, values1.Count()); Assert.AreEqual(1, values1.Count(v => v == 1)); Assert.AreEqual(3, values1.Count(v => v == 3)); }
public void FirstElement() { EnumDataset <int> ds = new EnumDataset <int>(new int[] { 1, 2, 3 }); Assert.AreEqual(1, ds.First()); }
public void CountElements() { EnumDataset <int> ds = new EnumDataset <int>(new int[] { 1, 2, 3 }); Assert.AreEqual(3, ds.Count()); }