コード例 #1
0
        public void MetaDataProvider_resolves_valid_meta_data()
        {
            SetupDependencies();

            var myTestEntity = new MyTestEntity();
            var expectedDate = new DateTime(2017, 01, 01, 12, 30, 00);

            _metaDataProvider = new MetaDataProvider(_clockProviderMock.Object);
            _clockProviderMock.Setup(clockProvider => clockProvider.DateTime).Returns(expectedDate);

            _metaDataProvider.ResolveMetaData(myTestEntity, true);

            Assert.AreEqual(expectedDate, myTestEntity.Created);
            Assert.AreEqual(expectedDate, myTestEntity.Modified);
            Assert.AreEqual(true, myTestEntity.IsActive);

            var expectedNewDate = new DateTime(2017, 01, 01, 13, 30, 00);

            _clockProviderMock.Setup(clockProvider => clockProvider.DateTime).Returns(expectedNewDate);

            myTestEntity.IsActive = false;

            _metaDataProvider.ResolveMetaData(myTestEntity, false);

            Assert.AreEqual(expectedDate, myTestEntity.Created);
            Assert.AreEqual(expectedNewDate, myTestEntity.Modified);
            Assert.AreEqual(false, myTestEntity.IsActive);
        }
コード例 #2
0
        public void MetaDataProvider_throws()
        {
            SetupDependencies();

            var myTestEntity = new MyTestEntity();

            _metaDataProvider = new MetaDataProvider(_clockProviderMock.Object);

            Assert.Throws <ArgumentNullException>(() => { _metaDataProvider.ResolveMetaData(default(MyTestEntity), false); });
            Assert.Throws <ArgumentNullException>(() => { _metaDataProvider.ResolveMetaData(myTestEntity, false); });

            _clockProviderMock.Setup(clockProvider => clockProvider.DateTime).Returns(new DateTime(2017, 01, 01, 12, 30, 0));

            Assert.Throws <InvalidOperationException>(() => { _metaDataProvider.ResolveMetaData(myTestEntity, false); });
        }