private void TestHashTransformVectorHelper(ArrayDataViewBuilder builder, uint[][] results) { var srcView = builder.GetDataView(); HashTransform.Column col = new HashTransform.Column(); col.Source = "F1V"; col.HashBits = 5; col.Seed = 42; HashTransform.Arguments args = new HashTransform.Arguments(); args.Column = new HashTransform.Column[] { col }; var hashTransform = new HashTransform(Env, args, srcView); using (var cursor = hashTransform.GetRowCursor(c => true)) { var resultGetter = cursor.GetGetter <VBuffer <uint> >(1); VBuffer <uint> resultRow = new VBuffer <uint>(); foreach (var r in results) { Assert.True(cursor.MoveNext()); resultGetter(ref resultRow); Assert.True(resultRow.Length == r.Length); for (int i = 0; i < r.Length; i++) { Assert.True(resultRow.GetItemOrDefault(i) == r[i]); } } } }
private void TestHashTransformHelper <T>(T[] data, uint[] results, NumberType type) { var builder = new ArrayDataViewBuilder(Env); builder.AddColumn("F1", type, data); var srcView = builder.GetDataView(); HashTransform.Column col = new HashTransform.Column(); col.Source = "F1"; col.HashBits = 5; col.Seed = 42; HashTransform.Arguments args = new HashTransform.Arguments(); args.Column = new HashTransform.Column[] { col }; var hashTransform = new HashTransform(Env, args, srcView); using (var cursor = hashTransform.GetRowCursor(c => true)) { var resultGetter = cursor.GetGetter <uint>(1); uint resultRow = 0; foreach (var r in results) { Assert.True(cursor.MoveNext()); resultGetter(ref resultRow); Assert.True(resultRow == r); } } }
public HashTransformViewModel(HashTransform model) : base(model) { this.model = model; }