コード例 #1
0
        public void ExecuteShould_CallCreateMatchWith6ArgumentsIfTooManyParametersProvided()
        {
            var par = new List <string>()
            {
                "2017-06-05", "Ivo", "Karlovic", "Novak", "Jocovic", "3-2", "3", "R64", "something", "else"
            };
            var providerMock = new Mock <ISqlServerDataProvider>();
            var writerMock   = new Mock <IWriter>();
            var factoryMock  = new Mock <IModelsFactory>();

            var testTournament = new Tournament()
            {
                Name       = "test",
                StartDate  = new DateTime(),
                EndDate    = new DateTime(),
                PrizeMoney = 1234.5m,
                Category   = new TournamentCategoryMock(),
                City       = new CityMock(),
                Type       = new SurfaceMock()
            };

            providerMock.Setup(p => p.Tournaments.Get(It.IsAny <int>())).Returns(testTournament);

            var command = new AddMatchCommand(providerMock.Object, writerMock.Object, factoryMock.Object);

            try
            {
                var result = command.Execute(par);
            }
            catch
            { }

            factoryMock.Verify(x => x.CreateMatch(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>()), Times.Once);
        }
コード例 #2
0
        public void ExecuteShould_ThrowArgumentNullExceptionIfCreatedMatchIsNull()
        {
            var par = new List <string>()
            {
                "2017-06-05", "Ivo", "Karlovic", "Novak", "Jocovic", "3-2", "3", "R64", "something", "else"
            };
            var providerMock = new Mock <ISqlServerDataProvider>();
            var writerMock   = new Mock <IWriter>();
            var factoryMock  = new Mock <IModelsFactory>();

            var testTournament = new TournamentMock()
            {
                Name       = "test",
                StartDate  = new DateTime(),
                EndDate    = new DateTime(),
                PrizeMoney = 1234.5m,
                Category   = new TournamentCategoryMock(),
                City       = new CityMock(),
                Type       = new SurfaceMock()
            };

            providerMock.Setup(p => p.Tournaments.Get(It.IsAny <int>())).Returns(testTournament);

            var command = new AddMatchCommand(providerMock.Object, writerMock.Object, factoryMock.Object);

            Assert.Throws <ArgumentNullException>(() => command.Execute(par));
        }
コード例 #3
0
        public void ConstructorShould_ReturnInstanceOfAddMatchCommandClass_WhenThePassedValuesAreValid()
        {
            var providerMock = new Mock <ISqlServerDataProvider>();
            var writerMock   = new Mock <IWriter>();
            var factoryMock  = new Mock <IModelsFactory>();
            var command      = new AddMatchCommand(providerMock.Object, writerMock.Object, factoryMock.Object);

            Assert.IsInstanceOf <AddMatchCommand>(command);
        }
コード例 #4
0
        public void ExecuteShould_ReturnNotEnoughParametersWhenNoParametersProvided()
        {
            var providerMock = new Mock <ISqlServerDataProvider>();
            var writerMock   = new Mock <IWriter>();
            var factoryMock  = new Mock <IModelsFactory>();

            var command = new AddMatchCommand(providerMock.Object, writerMock.Object, factoryMock.Object);

            string result = command.Execute(new List <string>());

            Assert.That(result.Contains("Not enough parameters!"));
        }
コード例 #5
0
        public void ExecuteShould_ClearTheScreenOneTIme()
        {
            var providerMock = new Mock <ISqlServerDataProvider>();
            var writerMock   = new Mock <IWriter>();
            var factoryMock  = new Mock <IModelsFactory>();

            var command = new AddMatchCommand(providerMock.Object, writerMock.Object, factoryMock.Object);

            command.Execute(new List <string>());

            writerMock.Verify(x => x.Clear(), Times.Once);
        }
コード例 #6
0
 public async Task <ActionResult> Post([FromBody] AddMatchCommand command)
 {
     return(this.Ok(await this.mediator.Send(command)));
 }