コード例 #1
0
 public void Seed()
 {
     var context = new CriminalContext();
     if (!context.Users.Any(u => u.UserName == TestUserUsername))
     {
         SeedUsers(context);
     }
 }
コード例 #2
0
ファイル: InitDatabase.cs プロジェクト: Maissae/CriminalDB
        public void Main()
        {
            using (var context = new CriminalContext())
            {
                context.Database.EnsureDeleted();
                context.Database.Migrate();
                //context.Database.EnsureCreated();
            }

            _seeder.SeedDatabase(_amount);
        }
コード例 #3
0
        private void SeedUsers(CriminalContext context)
        {
            var userStore = new UserStore<User>(context);
            var userManager = new ApplicationUserManager(userStore);

            var user = new User()
            {
                UserName = TestUserUsername,
                Email = string.Format("{0}@gmail.com", TestUserUsername)
            };

            var userResult = userManager
                .CreateAsync(user, TestUserPassword).Result;
            if (!userResult.Succeeded)
            {
                Assert.Fail(string.Join("\n", userResult.Errors));
            }
        }
コード例 #4
0
        public void RegisterCriminal_WithNewCorrectData_ShouldRegisterNewCriminal_And_Return201Created()
        {
            // Arrange
            var context = new CriminalContext();
            var newName = "Gaetano Mosca";
            var newAlias = "Gaetano";

            // Act
            this.SetAuthorizationHeaders(true);

            var response = this.SendCreateNewCriminalRequest(newName, newAlias);

            // Assert
            Assert.AreEqual(HttpStatusCode.Created, response.StatusCode);
            
            var criminal = response.Content.ReadAsAsync<List<RegisterdCriminalViewModel>>().Result;
            Assert.AreEqual(newName, criminal[0].Name);
            Assert.AreEqual(newAlias, criminal[0].Alias);
            Assert.AreEqual(Status.Active.ToString(), criminal[0].Status.ToString());
            Assert.AreEqual(TestUserUsername, criminal[0].RegisteredBy);
        }
コード例 #5
0
        public void RegisterCriminal_WithoutAccessToken_ShouldReturn401Unauthorized()
        {
            // Arrange
            var context = new CriminalContext();
            var newName = "New name";
            var newAlias = "New Alias";

            // Act
            this.SetAuthorizationHeaders(false);

            var response = this.SendCreateNewCriminalRequest(newName, newAlias);

            // Assert
            Assert.AreEqual(HttpStatusCode.Unauthorized, response.StatusCode);
        }
コード例 #6
0
        public void RegisterCriminalWhoAlreadyExists_ShouldReturnConflict()
        {
            // Arrange
            var context = new CriminalContext();
            var existingCriminal = new Criminal()
            {
                FullName = "Mafioso",
                Alias = "Mafioso",

            };
            context.Criminals.Add(existingCriminal);
            context.SaveChanges();
            var newName = "Mafioso";
            var newAlias = "Mafioso";

            // Act
            this.SetAuthorizationHeaders(true);

            var response = this.SendCreateNewCriminalRequest(newName, newAlias);

            // Assert
            Assert.AreEqual(HttpStatusCode.Conflict, response.StatusCode);

            var mafioso = context.Criminals.Where(c => c.FullName == "Mafioso");
            Assert.AreEqual(1, mafioso.Count());
        }
コード例 #7
0
        public void RegisterCriminal_WithInCorrectData_ShouldReturnBadRequest()
        {
            // Arrange
            var context = new CriminalContext();
            var newName = "";
            var newAlias = "New Alias";

            // Act
            this.SetAuthorizationHeaders(true);

            var response = this.SendCreateNewCriminalRequest(newName, newAlias);

            // Assert
            Assert.AreEqual(HttpStatusCode.BadRequest, response.StatusCode);
        }