public void BuildQueryBuildsQueryWithFromAndToTest() { MongoDataSource_Accessor target = new MongoDataSource_Accessor(); string fieldName = "field1"; string fromVal = "fromval"; string toVal = "toval"; IMongoQuery query = target.BuildQuery(fieldName, fromVal, toVal); Assert.AreEqual("{ \"" + fieldName + "\" : { \"$gte\" : \"" + fromVal + "\", \"$lte\" : \"" + toVal + "\" } }", query.ToString()); }
public void AddCustomPropertiesTest() { MongoDataSource_Accessor target = new MongoDataSource_Accessor(); IDTSCustomPropertyCollection100 customPropertyCollection = Mock.Create<IDTSCustomPropertyCollection100>(); IDTSCustomProperty100 collectionNameProp = Mock.Create<IDTSCustomProperty100>(); IDTSCustomProperty100 conditionalFieldProp = Mock.Create<IDTSCustomProperty100>(); IDTSCustomProperty100 fromValueProp = Mock.Create<IDTSCustomProperty100>(); IDTSCustomProperty100 toValueProp = Mock.Create<IDTSCustomProperty100>(); IDTSCustomProperty100 queryProp = Mock.Create<IDTSCustomProperty100>(); Mock.Arrange(() => customPropertyCollection.New()).Returns(collectionNameProp).InSequence(); Mock.Arrange(() => customPropertyCollection.New()).Returns(conditionalFieldProp).InSequence(); Mock.Arrange(() => customPropertyCollection.New()).Returns(fromValueProp).InSequence(); Mock.Arrange(() => customPropertyCollection.New()).Returns(toValueProp).InSequence(); Mock.Arrange(() => customPropertyCollection.New()).Returns(queryProp).InSequence(); assertSetPropertyNameAndDescription(collectionNameProp, MongoDataSource_Accessor.COLLECTION_NAME_PROP_NAME); Mock.ArrangeSet(() => collectionNameProp.UITypeEditor = Arg.Matches<string>(x => x == typeof(CollectionNameEditor).AssemblyQualifiedName)); assertSetPropertyNameAndDescription(conditionalFieldProp, MongoDataSource_Accessor.CONDITIONAL_FIELD_PROP_NAME); assertSetPropertyNameAndDescription(fromValueProp, MongoDataSource_Accessor.CONDITION_FROM_PROP_NAME); assertSetPropertyNameAndDescription(toValueProp, MongoDataSource_Accessor.CONDITION_TO_PROP_NAME); assertSetPropertyNameAndDescription(queryProp, MongoDataSource_Accessor.CONDITION_DOC_PROP_NAME); target.AddCustomProperties(customPropertyCollection); Mock.Assert(() => customPropertyCollection.New(), Occurs.Exactly(5)); Mock.Assert(collectionNameProp); Mock.Assert(conditionalFieldProp); Mock.Assert(fromValueProp); Mock.Assert(toValueProp); Mock.Assert(queryProp); }
private void CheckForCorrectDataTypeFromBson(BsonValue bsonValue, DataType dataType, object expectedValue) { MongoDataSource_Accessor target = new MongoDataSource_Accessor(); object actual = target.GetDataTypeValueFromBsonValue(bsonValue, dataType); Assert.AreEqual(expectedValue, actual); }
private void CheckForCorrectColumnDataType(BsonValue value, DataType dt) { MongoDataSource_Accessor target = new MongoDataSource_Accessor(); Assert.AreEqual(dt, target.GetColumnDataType(value)); }
public void TestReleaseConnectionsDelegatesToConnectionManager() { MongoDataSource_Accessor target = new MongoDataSource_Accessor(); IDTSConnectionManager100 connManager = Mock.Create<IDTSConnectionManager100>(Constructor.Mocked); target.m_ConnMgr = connManager; MongoDatabase mockedDb = Mock.Create<MongoDatabase>(Constructor.Mocked); target.database = mockedDb; target.ReleaseConnections(); Mock.Assert(() => connManager.ReleaseConnection(mockedDb)); }
public void TestBuildOutputColumn(String elementname, BsonValue bsonValue, DataType expectedDataType, int length, int codepage) { MongoDataSource_Accessor target = new MongoDataSource_Accessor(); IDTSOutputColumnCollection100 outputCollection = Mock.Create<IDTSOutputColumnCollection100>(Constructor.Mocked); IDTSOutputColumn100 expected = Mock.Create<IDTSOutputColumn100>(Constructor.Mocked); Mock.Arrange(() => outputCollection.New()).Returns(expected); BsonElement el = new BsonElement(elementname, bsonValue); Mock.ArrangeSet(() => expected.Name = Arg.Matches<String>(x => x == elementname)); IDTSOutputColumn100 actual = target.BuildOutputColumn(outputCollection, el); Mock.Assert(() => expected.SetDataTypeProperties(expectedDataType, length, 0, 0, codepage)); }
public void PopulateExternalMetadataColumnTest() { MongoDataSource_Accessor target = new MongoDataSource_Accessor(); IDTSOutputColumn100 outputColumn = Mock.Create<IDTSOutputColumn100>(Constructor.Mocked); String expectedName = "name"; int expectedPrecision = 1; int expectedLength = 2; int expectedScale = 3; DataType expectedDataType = DataType.DT_TEXT; Mock.Arrange(() => outputColumn.Name).Returns(expectedName); Mock.Arrange(() => outputColumn.Precision).Returns(expectedPrecision); Mock.Arrange(() => outputColumn.Length).Returns(expectedLength); Mock.Arrange(() => outputColumn.DataType).Returns(expectedDataType); Mock.Arrange(() => outputColumn.Scale).Returns(expectedScale); IDTSExternalMetadataColumn100 expected = Mock.Create<IDTSExternalMetadataColumn100>(Constructor.Mocked); Mock.ArrangeSet(() => expected.Name = Arg.Matches<String>(x => x == expectedName)).OccursOnce(); Mock.ArrangeSet(() => expected.Precision = Arg.Matches<int>(x => x == expectedPrecision)).OccursOnce(); Mock.ArrangeSet(() => expected.Length = Arg.Matches<int>(x => x == expectedLength)).OccursOnce(); Mock.ArrangeSet(() => expected.DataType = Arg.Matches<DataType>(x => x == expectedDataType)).OccursOnce(); Mock.ArrangeSet(() => expected.Scale = Arg.Matches<int>(x => x == expectedScale)).OccursOnce(); target.PopulateExternalMetadataColumn(expected, outputColumn); Mock.Assert(expected); }
public void ParseConditionValueForYesterdayTest() { MongoDataSource_Accessor target = new MongoDataSource_Accessor(); object parsedValue = target.ParseConditionValue("yesterday", DataType.DT_DATE); Assert.AreEqual(DateTime.Now.AddDays(-1).ToLongDateString(), ((BsonDateTime)parsedValue).AsDateTime.ToLongDateString()); }
public void ParseConditionValueForStringTest() { MongoDataSource_Accessor target = new MongoDataSource_Accessor(); string value = "blah"; object parsedValue = target.ParseConditionValue(value, DataType.DT_STR); Assert.AreEqual(new BsonString(value), parsedValue); }
public void ParseConditionValueForSimpleDateTest() { MongoDataSource_Accessor target = new MongoDataSource_Accessor(); String value = "12/12/2012"; object parsedValue = target.ParseConditionValue(value, DataType.DT_DATE); Assert.AreEqual(DateTime.Parse(value).ToLongDateString(),((BsonDateTime)parsedValue).AsDateTime.ToLongDateString()); }
public void ParseConditionValueForNowTest() { MongoDataSource_Accessor target = new MongoDataSource_Accessor(); object parsedValue = target.ParseConditionValue("now", DataType.DT_DATE); Assert.IsTrue(parsedValue is BsonDateTime); Assert.AreEqual(DateTime.Now.ToLongDateString(), ((BsonDateTime)parsedValue).AsDateTime.ToLongDateString()); }
public void ParseConditionValueForIntTest() { MongoDataSource_Accessor target = new MongoDataSource_Accessor(); string value = "123"; BsonInt64 expected = new BsonInt64(Int64.Parse(value)); object parsedValue = target.ParseConditionValue(value, DataType.DT_I8); Assert.AreEqual(expected, parsedValue); parsedValue = target.ParseConditionValue(value, DataType.DT_I4); Assert.AreEqual(expected, parsedValue); }
public void ParseConditionValueForDoubleTest() { MongoDataSource_Accessor target = new MongoDataSource_Accessor(); string value = "12.34"; BsonDouble expected = new BsonDouble(Double.Parse(value)); object parsedValue = target.ParseConditionValue(value, DataType.DT_R8); Assert.AreEqual(expected, parsedValue); parsedValue = target.ParseConditionValue(value, DataType.DT_R4); Assert.AreEqual(expected, parsedValue); }