Example #1
0
        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);
        }
Example #2
0
        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);
            }
        }