public void Combine_Two() { var column1 = ColumnDefinitionObjectMother.CreateColumn("1"); var column2 = ColumnDefinitionObjectMother.CreateColumn("2"); var column3 = ColumnDefinitionObjectMother.CreateColumn("3"); var column4 = ColumnDefinitionObjectMother.CreateColumn("4"); var one = new ColumnValueTable( new[] { column1, column2 }, new[] { new ColumnValueTable.Row(new[] { "a", "b" }), new ColumnValueTable.Row(new[] { "c", "d" }) }); var two = new ColumnValueTable( new[] { column3, column4 }, new[] { new ColumnValueTable.Row(new[] { "e", "f" }), new ColumnValueTable.Row(new[] { "g", "h" }) }); var result = ColumnValueTable.Combine(one, two); var expected = new ColumnValueTable( new[] { column1, column2, column3, column4 }, new[] { new ColumnValueTable.Row(new[] { "a", "b", "e", "f" }), new ColumnValueTable.Row(new[] { "c", "d", "g", "h" }) }); ColumnValueTableTestHelper.CheckTable(expected, result); }
public void SplitValuesForComparison() { var dateTime1 = new DateTime(2011, 7, 18); var dateTime2 = new DateTime(2012, 8, 19); var row1 = new ColumnValueTable.Row(new object[] { "2011" }); var row2 = new ColumnValueTable.Row(new object[] { "2012" }); var row3 = new ColumnValueTable.Row(new object[] { "7" }); var row4 = new ColumnValueTable.Row(new object[] { "8" }); var row5 = new ColumnValueTable.Row(new object[] { "18" }); var row6 = new ColumnValueTable.Row(new object[] { "19" }); _property1Stub .Stub(stub => stub.SplitValuesForComparison(Arg <IEnumerable <object> > .List.Equal(new object[] { 2011, 2012 }))) .Return(new ColumnValueTable(new[] { _columnDefinition1 }, new[] { row1, row2 })); _property2Stub .Stub(stub => stub.SplitValuesForComparison(Arg <IEnumerable <object> > .List.Equal(new object[] { 7, 8 }))) .Return(new ColumnValueTable(new[] { _columnDefinition2 }, new[] { row3, row4 })); _property3Stub .Stub(stub => stub.SplitValuesForComparison(Arg <IEnumerable <object> > .List.Equal(new object[] { 18, 19 }))) .Return(new ColumnValueTable(new[] { _columnDefinition3 }, new[] { row5, row6 })); var result = _compoundStoragePropertyDefinition.SplitValuesForComparison(new object[] { dateTime1, dateTime2 }); var expectedTable = new ColumnValueTable( new[] { _columnDefinition1, _columnDefinition2, _columnDefinition3 }, new[] { new ColumnValueTable.Row(new object[] { "2011", "7", "18" }), new ColumnValueTable.Row(new object[] { "2012", "8", "19" }) }); ColumnValueTableTestHelper.CheckTable(expectedTable, result); }
public void SplitValuesForComparison() { var row1 = new ColumnValueTable.Row(new[] { "1" }); var row2 = new ColumnValueTable.Row(new[] { "2" }); var columnValueTable = new ColumnValueTable(new[] { _columnDefinition }, new[] { row1, row2 }); _serializedIDPropertyStub .Stub(stub => stub.SplitValuesForComparison(Arg <IEnumerable <object> > .List.Equal( new[] { DomainObjectIDs.Order1.ToString(), DomainObjectIDs.Order3.ToString() }))) .Return(columnValueTable); var result = _serializedObjectIDStoragePropertyDefinition.SplitValuesForComparison(new object[] { DomainObjectIDs.Order1, DomainObjectIDs.Order3 }); ColumnValueTableTestHelper.CheckTable(columnValueTable, result); }
public void SplitValuesForComparison_NullValue() { var row1 = new ColumnValueTable.Row(new[] { "1" }); var row2 = new ColumnValueTable.Row(new[] { "2" }); var columnValueTable = new ColumnValueTable(new[] { _columnDefinition }, new[] { row1, row2 }); // Bug in Rhino Mocks: List.Equal constraint cannot handle nulls within the sequence _serializedIDPropertyStub .Stub(stub => stub.SplitValuesForComparison( Arg <IEnumerable <object> > .Matches(seq => seq.SequenceEqual(new[] { null, DomainObjectIDs.Order3.ToString() })))) .Return(columnValueTable); var result = _serializedObjectIDStoragePropertyDefinition.SplitValuesForComparison(new object[] { null, DomainObjectIDs.Order3 }); ColumnValueTableTestHelper.CheckTable(columnValueTable, result); }
public void SplitValuesForComparison_NullValue() { var value2 = new object(); var result = _storagePropertyDefinition.SplitValuesForComparison(new[] { null, value2 }); var expectedTable = new ColumnValueTable( new[] { _innerColumnDefinition }, new[] { new ColumnValueTable.Row(new object[] { null }), new ColumnValueTable.Row(new[] { value2 }) }); ColumnValueTableTestHelper.CheckTable(expectedTable, result); }
public void Combine_Many() { var column1 = ColumnDefinitionObjectMother.CreateColumn("1"); var column2 = ColumnDefinitionObjectMother.CreateColumn("2"); var column3 = ColumnDefinitionObjectMother.CreateColumn("3"); var column4 = ColumnDefinitionObjectMother.CreateColumn("4"); var column5 = ColumnDefinitionObjectMother.CreateColumn("5"); var column6 = ColumnDefinitionObjectMother.CreateColumn("6"); var one = new ColumnValueTable( new[] { column1, column2 }, new[] { new ColumnValueTable.Row(new[] { "a", "b" }), new ColumnValueTable.Row(new[] { "c", "d" }) }); var two = new ColumnValueTable( new[] { column3, column4 }, new[] { new ColumnValueTable.Row(new[] { "e", "f" }), new ColumnValueTable.Row(new[] { "g", "h" }) }); var three = new ColumnValueTable( new[] { column5, column6 }, new[] { new ColumnValueTable.Row(new[] { "i", "j" }), new ColumnValueTable.Row(new[] { "k", "l" }) }); var result = ColumnValueTable.Combine(new[] { one, two, three }); var expected = new ColumnValueTable( new[] { column1, column2, column3, column4, column5, column6 }, new[] { new ColumnValueTable.Row(new[] { "a", "b", "e", "f", "i", "j" }), new ColumnValueTable.Row(new[] { "c", "d", "g", "h", "k", "l" }) }); ColumnValueTableTestHelper.CheckTable(expected, result); }