public void UserController_GetByUsername_ReturnUser() { using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var user01 = UserAggregate.Create("jsmith", "*****@*****.**", "password hash", "security stamp"); var user02 = UserAggregate.Create("mjane", "*****@*****.**", "password hash", "security stamp"); databaseContext.Set <UserAggregate>().AddRange(new[] { user01, user02 }); databaseContext.SaveChanges(); } using (WebApp.Start <Startup>(url: iisAddress)) { HttpClient client = new HttpClient(); client.DefaultRequestHeaders.Accept.Add( new MediaTypeWithQualityHeaderValue("application/json")); var response = client.GetAsync(String.Format("{0}UserRead?username={1}", iisAddress, "jsmith")).Result; response.StatusCode.Should().Be(HttpStatusCode.OK); var result = response.Content.ReadAsStringAsync().Result; Debug.WriteLine(response.Content.ReadAsStringAsync().Result); var user = JsonConvert.DeserializeObject <UserMessage>(result); user.Username.Should() .Be("jsmith"); } }
public void PersonController_Get_ReturnPersons() { using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var person01 = PersonAggregate.Create("John", "Smith"); var person02 = PersonAggregate.Create("Mary", "Jane"); databaseContext.Set <PersonAggregate>().AddRange(new[] { person01, person02 }); databaseContext.SaveChanges(); } using (WebApp.Start <Startup>(url: iisAddress)) { HttpClient client = new HttpClient(); client.DefaultRequestHeaders.Accept.Add( new MediaTypeWithQualityHeaderValue("application/json")); var response = client.GetAsync(String.Format("{0}PersonRead", iisAddress)).Result; response.StatusCode.Should().Be(HttpStatusCode.OK); var result = response.Content.ReadAsStringAsync().Result; Debug.WriteLine(response.Content.ReadAsStringAsync().Result); var persons = JsonConvert.DeserializeObject <PersonMessage[]>(result); persons.Should() .ContainSingle(x => x.FirstName == "John" && x.LastName == "Smith"); persons.Should() .ContainSingle(x => x.FirstName == "Mary" && x.LastName == "Jane"); } }
public void PersonAggregate_Delete_WithAddresses_WillCascade() { /// create using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var person = PersonAggregate.Create("John", "Smith"); person.AddAddress("Street", "City", "Country", "ZipCode"); databaseContext.Set <PersonAggregate>().Add(person); databaseContext.SaveChanges(); } /// delete using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var person = databaseContext.Set <PersonAggregate>().First(); databaseContext.Set <PersonAggregate>().Remove(person); databaseContext.SaveChanges(); } /// verify using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { databaseContext.Set <PersonAggregate>().Count().Should().Be(0); databaseContext.Set <Address>().Count().Should().Be(0); } }
public void RoleAggregate_Delete_WillDelete() { // create using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var role = RoleAggregate.Create(Guid.NewGuid(), "RoleName"); databaseContext.Set <RoleAggregate>().Add(role); databaseContext.SaveChanges(); } // delete using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var role = databaseContext.Set <RoleAggregate>().First(); databaseContext.Set <RoleAggregate>().Remove(role); databaseContext.SaveChanges(); } // verify using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { databaseContext.Set <RoleAggregate>().Count().Should().Be(0); } }
public void UserAggregate_AddClaim_WillPersist() { // create using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var user = UserAggregate.Create("raffaeu", "*****@*****.**", "password hash", "security stamp"); user.AddClaim("LOCAL AUTHORITY", "LOCAL AUTHORITY", "schema", "Raffaeu", "schema#string"); databaseContext.Set <UserAggregate>().Add(user); databaseContext.SaveChanges(); } // verify using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var expectedUser = databaseContext.Set <UserAggregate>() .Include(x => x.Claims) .First(); expectedUser.Claims.Count.Should().Be(1); } }
public void UserAggregate_Delete_WillDelete() { // create using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var user = UserAggregate.Create("raffaeu", "*****@*****.**", "password hash", "security stamp"); databaseContext.Set <UserAggregate>().Add(user); databaseContext.SaveChanges(); } // delete using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var user = databaseContext.Set <UserAggregate>().First(); databaseContext.Set <UserAggregate>().Remove(user); databaseContext.SaveChanges(); } // verify using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { databaseContext.Set <UserAggregate>().Count().Should().Be(0); } }
public void Cleanup() { using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { databaseContext.Database.Delete(); databaseContext.Database.Create(); } }
public void RoleAggregate_Valid_CanBeCreated() { // create using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var role = RoleAggregate.Create(Guid.NewGuid(), "RoleName"); databaseContext.Set <RoleAggregate>().Add(role); databaseContext.SaveChanges(); } // verify using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var expectedRole = databaseContext.Set <RoleAggregate>().First(); expectedRole.Name.Should().Be("RoleName"); } }
public void PersonAggregate_Valid_CanBeCreated() { /// create using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var person = PersonAggregate.Create("FirstName", "LastName"); databaseContext.Set <PersonAggregate>().Add(person); databaseContext.SaveChanges(); } /// verify using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var expectedPerson = databaseContext.Set <PersonAggregate>().First(); expectedPerson.FirstName.Should().Be("FirstName"); expectedPerson.LastName.Should().Be("LastName"); } }
public void UserAggregate_Valid_CanBeCreate() { // create using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var user = UserAggregate.Create("raffaeu", "*****@*****.**", "password hash", "security stamp"); databaseContext.Set <UserAggregate>().Add(user); databaseContext.SaveChanges(); } // verify using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var expectedUser = databaseContext.Set <UserAggregate>().First(); expectedUser.Username.Should().Be("raffaeu"); } }
public void PersonAggregate_AddAddress_WillContain() { /// create using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var person = PersonAggregate.Create("John", "Smith"); person.AddAddress("Street", "City", "Country", "ZipCode"); databaseContext.Set <PersonAggregate>().Add(person); databaseContext.SaveChanges(); } /// verify using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var person = databaseContext.Set <PersonAggregate>() .Include(x => x.Addresses).First(); person.Addresses.Count.Should().Be(1); } }
public void RoleAggregate_AddUser_WillAdd() { using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var role = RoleAggregate.Create(Guid.NewGuid(), "RoleName"); var user = UserAggregate.Create("raffaeu", "*****@*****.**", "password hash", "security stamp"); role.AddUserToRole(user); databaseContext.Set <RoleAggregate>().Add(role); databaseContext.SaveChanges(); } using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var role = databaseContext.Set <RoleAggregate>() .Include(x => x.Users) .Single(); role.Users.Count.Should().Be(1); } }
public void UserAggregate_AddLogin_WillPersist() { using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var user = UserAggregate.Create("raffaeu", "*****@*****.**", "password hash", "security stamp"); user.AddLogin("providerName", "providerKey"); databaseContext.Set <UserAggregate>().Add(user); databaseContext.SaveChanges(); } // verify using (DatabaseContext databaseContext = DatabaseTestFactory.GetSession()) { var expectedUser = databaseContext.Set <UserAggregate>() .Include(x => x.Logins) .First(); expectedUser.Logins.Count.Should().Be(1); } }