Ejemplo n.º 1
0
        public void Deve_Realizar_Post(string address, Environment environment)
        {
            FakeContext fakeContext = CreateAndFillContextWithSource();

            using (var context = new CentralDeErrorContext(fakeContext.FakeOptions))
            {
                var service = CreateService(fakeContext, context);

                var newSource = new SourceCreateDTO {
                    Address = address, Environment = environment
                };

                Assert.IsNotNull(newSource);

                Assert.IsNull(service.Get().Where(x => x.Environment == newSource.Environment.ToString() && x.Address == newSource.Address).FirstOrDefault());

                var savedSource = service.Create(newSource);

                if (savedSource.Success == false)
                {
                    Assert.AreEqual(false, savedSource.Success);
                    Assert.AreEqual("Fail", savedSource.Message);
                    Assert.IsNull(savedSource.Data);
                }
                else
                {
                    Assert.AreEqual(true, savedSource.Success);
                    Assert.AreEqual("Succesfully registred the source.", savedSource.Message);
                    Assert.IsNotNull(savedSource.Data);
                }
            }
        }
Ejemplo n.º 2
0
        public ResultDTO Create(SourceCreateDTO sourceCreateDTO)
        {
            if (sourceCreateDTO == null)
            {
                throw new ArgumentNullException();
            }

            if (_context
                .Sources
                .Where(x => x.Address == sourceCreateDTO.Address &&
                       x.Environment == sourceCreateDTO.Environment &&
                       x.Deleted == false).Any())
            {
                return(new ResultDTO(false, "Source already existis.", null));
            }

            var sourceData = _mapper.Map <Source>(sourceCreateDTO);

            _context.Add(sourceData);

            if (SaveChanges() == true)
            {
                return(new ResultDTO(true, "Succesfully registred the source.", sourceData));
            }

            return(new ResultDTO(false, "Fail", null));
        }
Ejemplo n.º 3
0
        public void Check_Environment_Equals_Development(string address, Environment environment)
        {
            var sourceCreateDTO = new SourceCreateDTO
            {
                Address     = address,
                Environment = environment
            };

            Assert.AreEqual(environment.ToString(), sourceCreateDTO.Environment.ToString());
        }
Ejemplo n.º 4
0
        public void Check_Address_Smaller_Than_Or_Equals_1024_Chars(Environment environment)
        {
            var sourceCreateDTO = new SourceCreateDTO
            {
                Address     = new string('*', 1025),
                Environment = environment
            };

            sourceCreateDTO.Validate();

            Assert.IsTrue(sourceCreateDTO.Invalid);
        }
Ejemplo n.º 5
0
        public void Check_Address_Bigger_Than_6_Chars(string address, Environment environment)
        {
            var sourceCreateDTO = new SourceCreateDTO
            {
                Address     = address,
                Environment = environment
            };

            sourceCreateDTO.Validate();

            Assert.IsTrue(sourceCreateDTO.Invalid);
        }
Ejemplo n.º 6
0
        public void Check_Address_Equals_Address(string address, Environment environment)
        {
            SourceCreateDTO sourceCreateDTO = new SourceCreateDTO
            {
                Address     = address,
                Environment = environment
            };

            sourceCreateDTO.Validate();

            Assert.AreEqual("Address", sourceCreateDTO.Address);
        }
Ejemplo n.º 7
0
        public void Check_Valid_Environment_Between_0_and_Max(string address)
        {
            var max = (Environment.GetNames(typeof(Environment)).Length);

            var sourceCreateDTO = new SourceCreateDTO
            {
                Address     = address,
                Environment = (Environment)max
            };

            sourceCreateDTO.Validate();

            Assert.IsTrue(sourceCreateDTO.Invalid, $"Max level should be {(max - 1)}");
        }
Ejemplo n.º 8
0
        public void Deve_EstaR_Ok_ao_realizar_post(string address, Environment environment)
        {
            ISourceRepository fakeService;
            SourceController  controller;

            CreateController(out fakeService, out controller);
            var newSource = new SourceCreateDTO {
                Address = address, Environment = environment
            };
            var result = controller.Register(fakeService, newSource);

            Assert.IsInstanceOfType(result.Result, typeof(CreatedAtRouteResult));

            var actual = (result.Result as CreatedAtRouteResult).Value as ResultDTO;

            Assert.AreEqual(true, actual.Success);
            Assert.AreEqual("Succesfully registred the source.", actual.Message);
            Assert.IsNotNull(actual.Data);
        }
Ejemplo n.º 9
0
        public void Deve_Falhar_ao_realizar_post_De_Source_Repetido(string address, Environment environment)
        {
            ISourceRepository fakeService;
            SourceController  controller;

            CreateController(out fakeService, out controller);
            var newSource = new SourceCreateDTO {
                Address = address, Environment = environment
            };
            var result = controller.Register(fakeService, newSource);

            Assert.IsInstanceOfType(result.Result, typeof(BadRequestObjectResult));

            var actual = (result.Result as BadRequestObjectResult).Value as ResultDTO;

            Assert.AreEqual(false, actual.Success);
            Assert.AreEqual("Source already existis.", actual.Message);
            Assert.IsNull(actual.Data);
        }
Ejemplo n.º 10
0
        public void Deve_Falhar_Ao_Postar_Source_Com_Endereco_E_Ambiente_Ja_Existente(string address, Environment environment)
        {
            FakeContext fakeContext = CreateAndFillContextWithSource();

            using (var context = new CentralDeErrorContext(fakeContext.FakeOptions))
            {
                var service = CreateService(fakeContext, context);

                var newSource = new SourceCreateDTO {
                    Address = address, Environment = environment
                };

                var result = service.Create(newSource);

                Assert.AreEqual(false, result.Success);
                Assert.AreEqual("Source already existis.", result.Message);
                Assert.AreEqual(null, result.Data);
            }
        }
        public ActionResult <Source> Register(
            [FromServices] ISourceRepository _sourceRepository,
            SourceCreateDTO sourceCreateDTO)
        {
            sourceCreateDTO.Validate();
            if (sourceCreateDTO.Invalid)
            {
                return(BadRequest(new ResultDTO(false, "An error ocurred.", sourceCreateDTO.Notifications)));
            }

            var result = _sourceRepository.Create(sourceCreateDTO);

            if (result.Success == true)
            {
                return(CreatedAtRoute(nameof(GetSourceById), new { Id = sourceCreateDTO.Id }, result));
            }

            return(BadRequest(result));
        }