public void SetVisitorProperties_throws_ArgumentNullException_when_key_is_null() { var sut = new MongoTrackingDataSource(collectionMock.Object); Action test = () => sut.SetVisitorProperties("visitorId", null); Assert.Throws <ArgumentNullException>(test); }
public void SetVisitorProperties_throws_ArgumentNullException_when_visitorId_is_null() { var sut = new MongoTrackingDataSource(collectionMock.Object); Action test = () => sut.SetVisitorProperties(null, new Dictionary <string, object>()); Assert.Throws <ArgumentNullException>(test); }
public void SetVisitorProperties_updates_document() { var visitorId = ObjectId.GenerateNewId().ToString(); collection.InsertOne(GetInitialDocument()); var sut = new MongoTrackingDataSource(collection); var expected = new Dictionary <string, object> { { "queryString", "?utm_source=facebook" }, { "other", 42 } }; sut.SetVisitorProperties(visitorId, expected); var retrievedDocument = FindDocument(visitorId); foreach (var val in expected) { Assert.Equal(val.Value, retrievedDocument[val.Key].Value); } }