Ejemplo n.º 1
0
        private PersonResource GetPersonResFromBooking(Booking booking)
        {
            Person         dbPerson = personService.GetPersonById(booking.PersonId);
            PersonResource p        = new PersonResource().CopyPropertiesFrom(dbPerson);

            p.NrBookings = dbPerson.Bookings.Count();
            return(p);
        }
Ejemplo n.º 2
0
        public PersonResource DeletePerson(int Id)
        {
            Person         dbPerson = service.DeletePerson(Id);
            PersonResource p        = new PersonResource().CopyPropertiesFrom(dbPerson);

            p.NrBookings = dbPerson.Bookings.Count();
            return(p);
        }
Ejemplo n.º 3
0
        public PersonResource AddPerson(PersonDTO dto)
        {
            Person         toAdd    = new Person().CopyPropertiesFrom(dto);
            Person         dbPerson = service.AddPerson(toAdd);
            PersonResource p        = new PersonResource().CopyPropertiesFrom(dbPerson);

            p.NrBookings = dbPerson.Bookings.Count();
            return(p);
        }
        public IActionResult Put([FromBody] PersonResource person)
        {
            if (person == null)
            {
                return(BadRequest());
            }

            return(Ok(_personService.Update(person)));
        }
Ejemplo n.º 5
0
        public void TestAbstractResourceGroupBy()
        {
            var resource = new PersonResource();
            resource.SetGroupBy("cpr");

            var result = resource.Build();

            Assert.That(resource.GetCount() == 1);
            Assert.That(resource.GetCountTotal() == 1);
        }
Ejemplo n.º 6
0
 public List <PersonResource> GetPersons()
 {
     return(service.GetPersons()
            .Select(x => {
         PersonResource p = new PersonResource().CopyPropertiesFrom(x);
         p.NrBookings = x.Bookings.Count();
         return p;
     })
            .ToList());
 }
        public IActionResult Get(long id)
        {
            PersonResource person = _personService.GetById(id);

            if (person == null)
            {
                return(NotFound());
            }

            return(Ok(person));
        }
Ejemplo n.º 8
0
        public void NoIdThrowsServerException()
        {
            var model = new
            {
                description = "Has no id property"
            };

            var resource = new PersonResource();

            Assert.Throws <JsonApiException>(() => new ResourceGraphNodeKey(model, resource));
        }
Ejemplo n.º 9
0
        public void TestAbstractResourceGroupBy()
        {
            var resource = new PersonResource();

            resource.SetGroupBy("cpr");

            var result = resource.Build();

            Assert.That(resource.GetCount() == 1);
            Assert.That(resource.GetCountTotal() == 1);
        }
Ejemplo n.º 10
0
        public PersonResource UpdatePerson(int Id, PersonDTO dto)
        {
            Person toEdit = new Person().CopyPropertiesFrom(dto);

            toEdit.Id = Id;

            Person         dbPerson = service.UpdatePerson(Id, toEdit);
            PersonResource p        = new PersonResource().CopyPropertiesFrom(dbPerson);

            p.NrBookings = dbPerson.Bookings.Count();
            return(p);
        }
Ejemplo n.º 11
0
        public void TestAbstractResourceLimitAndOffset()
        {
            var resource = new PersonResource();
            resource.SetOffset(1);
            resource.SetLimit(1);
            resource.SetOrder("id", "asc");

            var result = resource.Build();

            Assert.That(resource.GetCount() == 1);
            Assert.That(resource.GetCountTotal() == 3);

            Assert.That(result[0].Firstname == "Christian");
        }
Ejemplo n.º 12
0
        public void FindsCorrectPrefixWithVirtualPath(string prefix, string template)
        {
            var resource = new PersonResource();

            template = $"test/{template}";

            var builder = new DefaultUrlPathBuilder(prefix, template);

            var url = builder.BuildCanonicalPath(resource);

            _output.WriteLine($"template: {template}\ngenerated result: {url}");

            Assert.Equal($"{prefix.TrimEnd('/')}/test/people/", builder.BuildCanonicalPath(resource));
        }
Ejemplo n.º 13
0
        public void TestAbstractResourceLimitAndOffset()
        {
            var resource = new PersonResource();

            resource.SetOffset(1);
            resource.SetLimit(1);
            resource.SetOrder("id", "asc");

            var result = resource.Build();

            Assert.That(resource.GetCount() == 1);
            Assert.That(resource.GetCountTotal() == 3);

            Assert.That(result[0].Firstname == "Christian");
        }
Ejemplo n.º 14
0
        public void TestAbstractResourceOrderAndLimit()
        {
            var resource = new PersonResource();

            resource.SetOrder("id", "desc");
            resource.SetLimit(2);

            var result = resource.Build();

            Assert.That(resource.GetCount() == 2);
            Assert.That(resource.GetCountTotal() == 3);

            Assert.That(result[0].DbId == 3);
            Assert.That(result[1].DbId == 2);
        }
Ejemplo n.º 15
0
        public void GetPersonByIdSuccess()
        {
            var fakePerson = new PersonResource {
                Id = 1, Name = "Katsiaryna", Address = "Minsk", Gender = GenderTypeResource.Female
            };

            var mockedPersonService = new Mock <IPersonService>();

            mockedPersonService.Setup(service => service.GetById(fakePerson.Id)).Returns(fakePerson);

            var personController = new PersonController(mockedPersonService.Object);

            var actionResult = personController.Get(fakePerson.Id);

            Assert.Same(actionResult.Value, fakePerson);
        }
Ejemplo n.º 16
0
        public void UpdatePersonSuccess()
        {
            var fakePerson = new PersonResource {
                Id = 1
            };

            var mockedPersonService = new Mock <IPersonService>();

            mockedPersonService
            .Setup(service => service.UpdatePerson(1, fakePerson));

            var personController = new PersonController(mockedPersonService.Object);
            var actionResult     = personController.Put(1, fakePerson);

            Assert.IsType <NoContentResult>(actionResult);
        }
Ejemplo n.º 17
0
        public async Task <IActionResult> CreatePerson([FromBody] PersonResource personResource)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var person = _mapper.Map <PersonResource, Person>(personResource);

            _unitOfWork.Persons.Add(person);

            await _unitOfWork.CompleteAsync();

            personResource = _mapper.Map <Person, PersonResource>(person);
            return(Ok(personResource));
        }
Ejemplo n.º 18
0
        public void UpdatePerson()
        {
            var mockedMapper            = GetMockedMapper();
            var mockedBookingRepository = GetMockedBookingRepository();
            var mockedPersonRepository  = GetMockedPersonRepository();

            var personService = new PersonService(mockedPersonRepository.Object, mockedBookingRepository.Object, mockedMapper.Object);

            var fakePerson = new PersonResource {
                Id = 14, Name = "John Doe"
            };

            personService.UpdatePerson(fakePerson.Id, fakePerson);

            mockedPersonRepository.Verify(m => m.Save(It.IsAny <Person>()), Times.Once());
        }
Ejemplo n.º 19
0
        public Person Map(PersonResource from)
        {
            if (from == null)
            {
                return(null);
            }

            return(new Person
            {
                Id = from.Id,
                FirstName = from.FirstName,
                LastName = from.LastName,
                Address = from.Address,
                Gender = from.Gender
            });
        }
Ejemplo n.º 20
0
        public void TestPersonResource()
        {
            var resource = new PersonResource();

            resource.SetFirstname("Henrik");
            resource.SetLastname("Haugbølle");
            resource.SetCpr("0123456789");
            resource.SetVoterId(3306);
            resource.SetPollingVenue("Venue of Awesome");
            resource.SetPollingTable("Table of Win");

            var result = resource.Build();

            Assert.That(resource.GetCount() == 1);
            Assert.That(resource.GetCountTotal() == 1);

            Assert.That(result[0].Firstname == "Henrik");
        }
Ejemplo n.º 21
0
        public async Task <PersonResource> Post([FromBody] PersonResource person, [FromServices] api.personApi.IPersonApiClient apiClient)
        {
            var toSave = new Person
            {
                EmailAddress = person.EmailAddress,
                FirstName    = person.FirstName,
                LastName     = person.LastName,
                Password     = person.Password
            };
            var result = await apiClient.PersonAsync(toSave);

            return(new PersonResource
            {
                EmailAddress = result.EmailAddress,
                FirstName = result.FirstName,
                LastName = result.LastName,
                Password = result.Password
            });
        }
        public void Serialize_PersonResource_with_deep_links()
        {
            var person = new PersonResource
            {
                Fodselsnummer = new Identifikator {
                    Identifikatorverdi = "12345678901"
                },
                Navn = new Personnavn {
                    Fornavn = "Tore", Etternavn = "Test"
                },
                Fodselsdato    = new DateTime(55, 5, 15),
                Bostedsadresse = new AdresseResource
                {
                    Postnummer   = "1234",
                    Poststed     = "Test",
                    Adresselinje = new List <string> {
                        "Storgata 12"
                    }
                }
            };

            person.AddKjonn(Link.with("/felles/kjonn/systemid/1"));
            person.AddStatsborgerskap(Link.with("/felles/land/systemid/no"));

            person.Bostedsadresse.AddLand(Link.with("/felles/land/systemid/no"));

            var settings = new JsonSerializerSettings {
                ContractResolver = new LowercaseContractResolver()
            };
            var json = JsonConvert.SerializeObject(person, settings);

            Console.WriteLine(json);

            var deserializeObject = JsonConvert.DeserializeObject <PersonResource>(json);

            Assert.NotNull(deserializeObject);
            Assert.True(deserializeObject.Bostedsadresse.Links.ContainsKey("land"));
        }
Ejemplo n.º 23
0
        public async Task <PersonResource> Post([FromBody] PersonResource person)
        {
            _logger.LogInformation("In front-end");
            var httpClient = new HttpClient();
            var client     = new api.personApi.PersonApiClient("https://localhost:5007", httpClient);

            var toSave = new Person
            {
                EmailAddress = person.EmailAddress,
                FirstName    = person.FirstName,
                LastName     = person.LastName,
                Password     = person.Password
            };
            var result = await client.PersonAsync(toSave);

            return(new PersonResource
            {
                EmailAddress = result.EmailAddress,
                FirstName = result.FirstName,
                LastName = result.LastName,
                Password = result.Password
            });
        }
Ejemplo n.º 24
0
        public async Task <IActionResult> UpdatePerson(int id, [FromBody] PersonResource personChanged)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            Person personInDb = await dbContext.Persons.SingleOrDefaultAsync(p => p.Id == id);

            if (personInDb == null)
            {
                return(NotFound());
            }

            personInDb.FirstName = personChanged.FirstName;
            personInDb.LastName  = personChanged.LastName;
            personInDb.Motto     = personChanged.Motto;
            personInDb.ImageUrl  = personChanged.ImageUrl;
            personInDb.IsPublic  = personChanged.IsPublic;

            dbContext.SaveChanges();

            return(Ok(personInDb));
        }
Ejemplo n.º 25
0
        public async Task <IActionResult> UpdatePerson(int id, [FromBody] PersonResource personResource)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var person = await _unitOfWork.Persons.GetPerson(id, includeRelated : false);

            if (person == null)
            {
                return(NotFound("Person Not Found"));
            }

            _unitOfWork.Persons.RemovePhoneNumbers(person.PhoneNumbers);

            _mapper.Map(personResource, person);

            await _unitOfWork.CompleteAsync();

            personResource.Id = person.Id;

            return(Ok(personResource));
        }
Ejemplo n.º 26
0
 public PersonResource Update(PersonResource person)
 {
     return(_modelToResourceMapper.Map(_personRepository.Update(_resourceToModelMapper.Map(person))));
 }
Ejemplo n.º 27
0
        public void TestPersonResource()
        {
            var resource = new PersonResource();
            resource.SetFirstname("Henrik");
            resource.SetLastname("Haugbølle");
            resource.SetCpr("0123456789");
            resource.SetVoterId(3306);
            resource.SetPollingVenue("Venue of Awesome");
            resource.SetPollingTable("Table of Win");

            var result = resource.Build();

            Assert.That(resource.GetCount() == 1);
            Assert.That(resource.GetCountTotal() == 1);

            Assert.That(result[0].Firstname == "Henrik");
        }
Ejemplo n.º 28
0
        public void TestAbstractResourceOrderAndLimit()
        {
            var resource = new PersonResource();
            resource.SetOrder("id", "desc");
            resource.SetLimit(2);

            var result = resource.Build();

            Assert.That(resource.GetCount() == 2);
            Assert.That(resource.GetCountTotal() == 3);

            Assert.That(result[0].DbId == 3);
            Assert.That(result[1].DbId == 2);
        }
Ejemplo n.º 29
0
        public void UpdatePerson(int personId, PersonResource person)
        {
            var personToUpdate = _mapper.Map <PersonResource, Person>(person);

            _personRepository.Save(personToUpdate);
        }