Example #1
0
        public void BinaryDataListRowEqualityComparer_Equals_StringValues_NotEqualReturnsFalse()
        {
            //------------Setup for test--------------------------
            var binaryDataListRowEqualityComparer = new BinaryDataListRowEqualityComparer(new List <int> {
                0
            });

            var xValueRow = new IndexBasedBinaryDataListRow {
                Index = 1
            };
            var yValueRow = new IndexBasedBinaryDataListRow {
                Index = 1
            };
            var binaryDataListRow1 = new BinaryDataListRow(1);
            var binaryDataListRow2 = new BinaryDataListRow(1);

            binaryDataListRow1.UpdateValue("r1.f1.value", 0, 0);
            binaryDataListRow2.UpdateValue("r1.f2.value", 0, 0);
            xValueRow.Row = binaryDataListRow1;
            yValueRow.Row = binaryDataListRow2;
            //------------Execute Test---------------------------
            var isEqual = binaryDataListRowEqualityComparer.Equals(xValueRow, yValueRow);

            //------------Assert Results-------------------------
            Assert.IsFalse(isEqual);
        }
Example #2
0
        public void BinaryDataListRowEqualityComparer_Equals_MultipleColumns_NotMatchColumn_EqualReturnsFalse()
        {
            //------------Setup for test--------------------------
            var binaryDataListRowEqualityComparer = new BinaryDataListRowEqualityComparer(new List <int> {
                0, 1
            });

            var xValueRow = new IndexBasedBinaryDataListRow {
                Index = 1
            };
            var yValueRow = new IndexBasedBinaryDataListRow {
                Index = 1
            };
            var binaryDataListRow1 = new BinaryDataListRow(2);
            var binaryDataListRow2 = new BinaryDataListRow(2);

            binaryDataListRow1.UpdateValue("r1.f1.value", 0, 0);
            binaryDataListRow1.UpdateValue("test", 1, 0);
            binaryDataListRow2.UpdateValue("r1.f1.value", 0, 0);
            binaryDataListRow2.UpdateValue("test1", 1, 0);
            xValueRow.Row = binaryDataListRow1;
            yValueRow.Row = binaryDataListRow2;
            //------------Execute Test---------------------------
            var isEqual = binaryDataListRowEqualityComparer.Equals(xValueRow, yValueRow);

            //------------Assert Results-------------------------
            Assert.IsFalse(isEqual);
        }
Example #3
0
        public void BinaryDataListRowEqualityComparer_Equals_BothNotFloatValuesReturnsFalse()
        {
            //------------Setup for test--------------------------
            var binaryDataListRowEqualityComparer = new BinaryDataListRowEqualityComparer(new List <int> {
                0
            });

            var xValueRow = new IndexBasedBinaryDataListRow {
                Index = 1
            };
            var yValueRow = new IndexBasedBinaryDataListRow {
                Index = 1
            };
            var binaryDataListRow1 = new BinaryDataListRow(1);
            var binaryDataListRow2 = new BinaryDataListRow(1);

            binaryDataListRow1.UpdateValue("100.01", 0, 0);
            binaryDataListRow2.UpdateValue("some val", 0, 0);
            xValueRow.Row = binaryDataListRow1;
            yValueRow.Row = binaryDataListRow2;
            //------------Execute Test---------------------------
            var isEqual = binaryDataListRowEqualityComparer.Equals(xValueRow, yValueRow);

            //------------Assert Results-------------------------
            Assert.IsFalse(isEqual);
        }
Example #4
0
        public void BinaryDataListRowEqualityComparer_Equals_LongValues_EqualReturnsTrue()
        {
            //------------Setup for test--------------------------
            var binaryDataListRowEqualityComparer = new BinaryDataListRowEqualityComparer(new List <int> {
                0
            });

            var xValueRow = new IndexBasedBinaryDataListRow {
                Index = 1
            };
            var yValueRow = new IndexBasedBinaryDataListRow {
                Index = 1
            };
            var binaryDataListRow1 = new BinaryDataListRow(1);
            var binaryDataListRow2 = new BinaryDataListRow(1);

            binaryDataListRow1.UpdateValue("9223372036854775707", 0, 0);
            binaryDataListRow2.UpdateValue("9223372036854775707", 0, 0);
            xValueRow.Row = binaryDataListRow1;
            yValueRow.Row = binaryDataListRow2;
            //------------Execute Test---------------------------
            var isEqual = binaryDataListRowEqualityComparer.Equals(xValueRow, yValueRow);

            //------------Assert Results-------------------------
            Assert.IsTrue(isEqual);
        }
        public void BinaryDataListRowEqualityComparer_GetHashCode_AlwaysReturnsZero()
        {
            //------------Setup for test--------------------------
            var binaryDataListRowEqualityComparer = new BinaryDataListRowEqualityComparer(new List<int> { 1 });

            //------------Execute Test---------------------------
            var hashCode = binaryDataListRowEqualityComparer.GetHashCode(new IndexBasedBinaryDataListRow());
            //------------Assert Results-------------------------
            Assert.AreEqual(0, hashCode);
        }
Example #6
0
        public void BinaryDataListRowEqualityComparer_GetHashCode_AlwaysReturnsZero()
        {
            //------------Setup for test--------------------------
            var binaryDataListRowEqualityComparer = new BinaryDataListRowEqualityComparer(new List <int> {
                1
            });

            //------------Execute Test---------------------------
            var hashCode = binaryDataListRowEqualityComparer.GetHashCode(new IndexBasedBinaryDataListRow());

            //------------Assert Results-------------------------
            Assert.AreEqual(0, hashCode);
        }
        public void BinaryDataListRowEqualityComparer_Equals_StringValues_NotEqualReturnsFalse()
        {
            //------------Setup for test--------------------------
            var binaryDataListRowEqualityComparer = new BinaryDataListRowEqualityComparer(new List<int> { 0 });

            var xValueRow = new IndexBasedBinaryDataListRow { Index = 1 };
            var yValueRow = new IndexBasedBinaryDataListRow { Index = 1 };
            var binaryDataListRow1 = new BinaryDataListRow(1);
            var binaryDataListRow2 = new BinaryDataListRow(1);
            binaryDataListRow1.UpdateValue("r1.f1.value", 0, 0);
            binaryDataListRow2.UpdateValue("r1.f2.value", 0, 0);
            xValueRow.Row = binaryDataListRow1;
            yValueRow.Row = binaryDataListRow2;
            //------------Execute Test---------------------------
            var isEqual = binaryDataListRowEqualityComparer.Equals(xValueRow, yValueRow);
            //------------Assert Results-------------------------
            Assert.IsFalse(isEqual);
        }
        public List<int> DistinctGetRows(StorageKey sk, IIndexIterator keys, List<int> colIdx)
        {

            List<IndexBasedBinaryDataListRow> rows = new List<IndexBasedBinaryDataListRow>();

            // avoid blank rows ;)
            while(keys.HasMore())
            {
                // fetch a fixed segment at a time ;)
                var idx = keys.FetchNextIndex();

                StorageKey tmpKey = new StorageKey(sk.UID, idx + sk.UniqueKey);

                var tmp = _levelZeroCache[tmpKey];

                if(tmp != null)
                {
                    rows.Add(new IndexBasedBinaryDataListRow { Row = tmp, Index = idx });
                }
                else
                {
                    throw new Exception(string.Format("Critical error. No value in storage for index {0}", idx));
                }
            }

            var indexBasedBinaryDataListRowEqualityComparer = new BinaryDataListRowEqualityComparer(colIdx);

            // fetch row indexes ;)
            IEnumerable<int> indexBasedBinaryDataListRows = rows.Distinct(indexBasedBinaryDataListRowEqualityComparer).Select(c => c.Index);

            return indexBasedBinaryDataListRows.ToList();

        }
        public void BinaryDataListRowEqualityComparer_Equals_MultipleColumns_NotMatchColumn_EqualReturnsFalse()
        {
            //------------Setup for test--------------------------
            var binaryDataListRowEqualityComparer = new BinaryDataListRowEqualityComparer(new List<int> { 0, 1 });

            var xValueRow = new IndexBasedBinaryDataListRow { Index = 1 };
            var yValueRow = new IndexBasedBinaryDataListRow { Index = 1 };
            var binaryDataListRow1 = new BinaryDataListRow(2);
            var binaryDataListRow2 = new BinaryDataListRow(2);
            binaryDataListRow1.UpdateValue("r1.f1.value", 0, 0);
            binaryDataListRow1.UpdateValue("test", 1, 0);
            binaryDataListRow2.UpdateValue("r1.f1.value", 0, 0);
            binaryDataListRow2.UpdateValue("test1", 1, 0);
            xValueRow.Row = binaryDataListRow1;
            yValueRow.Row = binaryDataListRow2;
            //------------Execute Test---------------------------
            var isEqual = binaryDataListRowEqualityComparer.Equals(xValueRow, yValueRow);
            //------------Assert Results-------------------------
            Assert.IsFalse(isEqual);
        }
        public void BinaryDataListRowEqualityComparer_Equals_BothNotFloatValuesReturnsFalse()
        {
            //------------Setup for test--------------------------
            var binaryDataListRowEqualityComparer = new BinaryDataListRowEqualityComparer(new List<int> { 0 });

            var xValueRow = new IndexBasedBinaryDataListRow { Index = 1 };
            var yValueRow = new IndexBasedBinaryDataListRow { Index = 1 };
            var binaryDataListRow1 = new BinaryDataListRow(1);
            var binaryDataListRow2 = new BinaryDataListRow(1);
            binaryDataListRow1.UpdateValue("100.01", 0, 0);
            binaryDataListRow2.UpdateValue("some val", 0, 0);
            xValueRow.Row = binaryDataListRow1;
            yValueRow.Row = binaryDataListRow2;
            //------------Execute Test---------------------------
            var isEqual = binaryDataListRowEqualityComparer.Equals(xValueRow, yValueRow);
            //------------Assert Results-------------------------
            Assert.IsFalse(isEqual);
        }
        public void BinaryDataListRowEqualityComparer_Equals_LongValues_EqualReturnsTrue()
        {
            //------------Setup for test--------------------------
            var binaryDataListRowEqualityComparer = new BinaryDataListRowEqualityComparer(new List<int> { 0 });

            var xValueRow = new IndexBasedBinaryDataListRow { Index = 1 };
            var yValueRow = new IndexBasedBinaryDataListRow { Index = 1 };
            var binaryDataListRow1 = new BinaryDataListRow(1);
            var binaryDataListRow2 = new BinaryDataListRow(1);
            binaryDataListRow1.UpdateValue("9223372036854775707", 0, 0);
            binaryDataListRow2.UpdateValue("9223372036854775707", 0, 0);
            xValueRow.Row = binaryDataListRow1;
            yValueRow.Row = binaryDataListRow2;
            //------------Execute Test---------------------------
            var isEqual = binaryDataListRowEqualityComparer.Equals(xValueRow, yValueRow);
            //------------Assert Results-------------------------
            Assert.IsTrue(isEqual);
        }