Esempio n. 1
0
        public void ReturnCorrectIFinalizedCombatStatisticsInstance()
        {
            // Arrange
            var storedCombatStatisticsDataProvider = new Mock <IStoredCombatStatisticsDataProvider>();
            var businessTransactionFactory         = new Mock <IEntityFrameworkTransactionFactory>();
            var objectMapperProvider = new Mock <IObjectMapperProvider>();

            var businessTransaction = new Mock <IEntityFrameworkTransaction>();

            businessTransactionFactory.Setup(f => f.CreateEntityFrameworkTransaction()).Returns(businessTransaction.Object);

            var storedCombatStatisticsProjection = new StoredCombatStatisticsViewModel();

            objectMapperProvider.Setup(p => p.Map <StoredCombatStatisticsViewModel>(It.IsAny <IFinalizedCombatStatistics>())).Returns(storedCombatStatisticsProjection);

            var combatStatisticsPersistentStorageStrategy = new CombatStatisticsPersistentStorageStrategy(storedCombatStatisticsDataProvider.Object, businessTransactionFactory.Object, objectMapperProvider.Object);

            var finalizedCombatStatistics = new Mock <IFinalizedCombatStatistics>();
            var expectedReturnedIFinalizedCombatStatisticsInstance = finalizedCombatStatistics.Object;
            // Act
            var actualReturnedIFinalizedCombatStatisticsInstance = combatStatisticsPersistentStorageStrategy.StoreCombatStatistics(finalizedCombatStatistics.Object);

            // Assert
            Assert.That(actualReturnedIFinalizedCombatStatisticsInstance, Is.SameAs(expectedReturnedIFinalizedCombatStatisticsInstance));
        }
Esempio n. 2
0
        public void InvokeIStoredCombatStatisticsDataProvider_CreateOnceWithCorrectParameter()
        {
            // Arrange
            var storedCombatStatisticsDataProvider = new Mock <IStoredCombatStatisticsDataProvider>();
            var businessTransactionFactory         = new Mock <IEntityFrameworkTransactionFactory>();
            var objectMapperProvider = new Mock <IObjectMapperProvider>();

            var businessTransaction = new Mock <IEntityFrameworkTransaction>();

            businessTransactionFactory.Setup(f => f.CreateEntityFrameworkTransaction()).Returns(businessTransaction.Object);

            var storedCombatStatisticsProjection = new StoredCombatStatisticsViewModel();

            objectMapperProvider.Setup(p => p.Map <StoredCombatStatisticsViewModel>(It.IsAny <IFinalizedCombatStatistics>())).Returns(storedCombatStatisticsProjection);

            var combatStatisticsPersistentStorageStrategy = new CombatStatisticsPersistentStorageStrategy(storedCombatStatisticsDataProvider.Object, businessTransactionFactory.Object, objectMapperProvider.Object);

            var finalizedCombatStatistics = new Mock <IFinalizedCombatStatistics>();

            // Act
            combatStatisticsPersistentStorageStrategy.StoreCombatStatistics(finalizedCombatStatistics.Object);

            // Assert
            storedCombatStatisticsDataProvider.Verify(r => r.CreateStoredCombatStatistics(storedCombatStatisticsProjection), Times.Once);
        }
        public StoredCombatStatisticsViewModel Create(StoredCombatStatisticsViewModel projection)
        {
            Guard.WhenArgument(projection, nameof(StoredCombatStatisticsViewModel)).IsNull().Throw();

            var storedCombatStatistics = this.objectMapperProvider.Map <StoredCombatStatistics>(projection);

            this.storedCombatStatisticsRepository.Create(storedCombatStatistics);

            return(projection);
        }
        public StoredCombatStatisticsViewModel CreateStoredCombatStatistics(StoredCombatStatisticsViewModel model)
        {
            Guard.WhenArgument(model, nameof(StoredCombatStatisticsViewModel)).IsNull().Throw();

            var storedCombatStatistics = this.objectMapperProvider.Map <StoredCombatStatistics>(model);

            var dbStoredCombatStatistics = this.storedCombatStatisticsEntityFrameworkRepository.Create(storedCombatStatistics);

            var viewModel = this.objectMapperProvider.Map <StoredCombatStatisticsViewModel>(dbStoredCombatStatistics);

            return(viewModel);
        }
Esempio n. 5
0
        public void ThrowArgumentNullException_WhenStoredCombatStatisticsProjectionParameterIsNull()
        {
            // Arrange
            var storedCombatStatisticsRepository = new Mock <IStoredCombatStatisticsRepository>();
            var objectMapperProvider             = new Mock <IObjectMapperProvider>();

            var storedCombatStatisticsProjectionRepository = new StoredCombatStatisticsProjectionRepository(storedCombatStatisticsRepository.Object, objectMapperProvider.Object);

            StoredCombatStatisticsViewModel storedCombatStatisticsProjection = null;

            // Act & Assert
            Assert.That(
                () => storedCombatStatisticsProjectionRepository.Create(storedCombatStatisticsProjection),
                Throws.InstanceOf <ArgumentNullException>().With.Message.Contains(nameof(StoredCombatStatisticsViewModel)));
        }
Esempio n. 6
0
        public void ThrowArgumentNullException_WhenStoredCombatStatisticsViewModelParameterIsNull()
        {
            // Arrange
            var storedCombatStatisticsEntityFrameworkRepository = new Mock <IEntityFrameworkRepository <StoredCombatStatistics> >();
            var objectMapperProvider = new Mock <IObjectMapperProvider>();

            var storedCombatStatisticsDataProvider = new StoredCombatStatisticsDataProvider(storedCombatStatisticsEntityFrameworkRepository.Object, objectMapperProvider.Object);

            StoredCombatStatisticsViewModel model = null;

            // Act & Assert
            Assert.That(
                () => storedCombatStatisticsDataProvider.CreateStoredCombatStatistics(model),
                Throws.InstanceOf <ArgumentNullException>().With.Message.Contains(nameof(StoredCombatStatisticsViewModel)));
        }
Esempio n. 7
0
        public void ReturnsCorrectStoredCombatStatisticsProjectionInstance()
        {
            // Arrange
            var storedCombatStatisticsRepository = new Mock <IStoredCombatStatisticsRepository>();
            var objectMapperProvider             = new Mock <IObjectMapperProvider>();

            var storedCombatStatisticsProjectionRepository = new StoredCombatStatisticsProjectionRepository(storedCombatStatisticsRepository.Object, objectMapperProvider.Object);

            var storedCombatStatisticsProjection = new StoredCombatStatisticsViewModel();

            // Act
            var actualReturnedStoredCombatStatisticsProjectionInstance = storedCombatStatisticsProjectionRepository.Create(storedCombatStatisticsProjection);

            // Assert
            Assert.That(actualReturnedStoredCombatStatisticsProjectionInstance, Is.SameAs(storedCombatStatisticsProjection));
        }
Esempio n. 8
0
        public void InvokeIObjectMapperProvider_MapMethodOnceWithCorrectParameters()
        {
            // Arrange
            var storedCombatStatisticsRepository = new Mock <IStoredCombatStatisticsRepository>();
            var objectMapperProvider             = new Mock <IObjectMapperProvider>();

            var storedCombatStatisticsProjectionRepository = new StoredCombatStatisticsProjectionRepository(storedCombatStatisticsRepository.Object, objectMapperProvider.Object);

            var storedCombatStatisticsProjection = new StoredCombatStatisticsViewModel();

            // Act
            storedCombatStatisticsProjectionRepository.Create(storedCombatStatisticsProjection);

            // Assert
            objectMapperProvider.Verify(p => p.Map <StoredCombatStatistics>(storedCombatStatisticsProjection), Times.Once);
        }
Esempio n. 9
0
        public void InvokeIObjectMapperProvider_MapStoredCombatStatisticsOnceWithCorrectParameter()
        {
            // Arrange
            var storedCombatStatisticsEntityFrameworkRepository = new Mock <IEntityFrameworkRepository <StoredCombatStatistics> >();
            var objectMapperProvider = new Mock <IObjectMapperProvider>();

            var storedCombatStatisticsDataProvider = new StoredCombatStatisticsDataProvider(storedCombatStatisticsEntityFrameworkRepository.Object, objectMapperProvider.Object);

            var model = new StoredCombatStatisticsViewModel();

            // Act
            storedCombatStatisticsDataProvider.CreateStoredCombatStatistics(model);

            // Assert
            objectMapperProvider.Verify(p => p.Map <StoredCombatStatistics>(model), Times.Once);
        }
Esempio n. 10
0
        public void InvokeIStoredCombatStatisticsRepository_CreateMethodOnceWithCorrectParameter()
        {
            // Arrange
            var storedCombatStatisticsRepository = new Mock <IStoredCombatStatisticsRepository>();
            var objectMapperProvider             = new Mock <IObjectMapperProvider>();

            var storedCombatStatisticsProjectionRepository = new StoredCombatStatisticsProjectionRepository(storedCombatStatisticsRepository.Object, objectMapperProvider.Object);

            var storedCombatStatisticsProjection = new StoredCombatStatisticsViewModel();

            var storedCombatStatistics = new StoredCombatStatistics();

            objectMapperProvider.Setup(p => p.Map <StoredCombatStatistics>(It.IsAny <StoredCombatStatisticsViewModel>())).Returns(storedCombatStatistics);

            // Act
            storedCombatStatisticsProjectionRepository.Create(storedCombatStatisticsProjection);

            // Assert
            storedCombatStatisticsRepository.Verify(r => r.Create(storedCombatStatistics), Times.Once);
        }
Esempio n. 11
0
        public void ReturnCorrectStoredCombatStatisticsViewModelInstance()
        {
            // Arrange
            var storedCombatStatisticsEntityFrameworkRepository = new Mock <IEntityFrameworkRepository <StoredCombatStatistics> >();
            var objectMapperProvider = new Mock <IObjectMapperProvider>();

            var storedCombatStatisticsDataProvider = new StoredCombatStatisticsDataProvider(storedCombatStatisticsEntityFrameworkRepository.Object, objectMapperProvider.Object);

            var model = new StoredCombatStatisticsViewModel();

            var expectedReturnedStoredCombatStatisticsViewModelInstance = new StoredCombatStatisticsViewModel();

            objectMapperProvider.Setup(p => p.Map <StoredCombatStatisticsViewModel>(It.IsAny <StoredCombatStatistics>())).Returns(expectedReturnedStoredCombatStatisticsViewModelInstance);

            // Act
            var actualReturnedStoredCombatStatisticsViewModelInstance = storedCombatStatisticsDataProvider.CreateStoredCombatStatistics(model);

            // Assert
            Assert.That(actualReturnedStoredCombatStatisticsViewModelInstance, Is.SameAs(expectedReturnedStoredCombatStatisticsViewModelInstance));
        }