Exemplo n.º 1
0
 public ActionResult <User> GetAllUsers()
 {
     using (MyPetContext context = new MyPetContext())
     {
         var users = context.Users.ToList();
         return(Ok(users));
     }
 }
Exemplo n.º 2
0
        public ActionResult <User> GetUser(int id)
        {
            using (MyPetContext context = new MyPetContext())
            {
                var user = context.Users
                           .Include(x => x.Pets)
                           .FirstOrDefault(x => x.Id == id);

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

                return(Ok(user));
            }
        }
Exemplo n.º 3
0
        public UserRepoTest()
        {
            // Create a fresh service provider, and therefore a fresh
            // InMemory database instance.
            var serviceProvider = new ServiceCollection()
                                  .AddEntityFrameworkInMemoryDatabase()
                                  .BuildServiceProvider();

            var options = new DbContextOptionsBuilder <MyPetContext>()
                          .UseInMemoryDatabase("UserRepoTestD")
                          .UseInternalServiceProvider(serviceProvider)
                          .Options;
            MyPetContext myPetContextt = new MyPetContext(options);

            myPetContextt.Database.EnsureDeleted();
            myPetContextt.Database.EnsureCreated();
            userRepository = new UserRepository(myPetContextt);
        }
Exemplo n.º 4
0
        public void CreateUser(UserRegisterDto newUser, int id, string userName, string email)
        {
            //set up a in-memory-test-db
            var options = new DbContextOptionsBuilder <MyPetContext>()
                          .UseInMemoryDatabase("Add_users_to_db")
                          .Options;

            //init context
            using (var myPetContext = new MyPetContext(options)) {
                var            userRepository = new UserRepository(myPetContext);
                var            userManager    = new UserManager(userRepository, mapper);
                UserDisplayDto createdUser    = userManager.CreateUser(newUser);

                //verify properties
                Assert.Equal(id, myPetContext.Users.Count());
                Assert.Equal(userName, createdUser.UserName);
                Assert.Equal(email, createdUser.Email);
            }
        }
Exemplo n.º 5
0
 public PetRepository(MyPetContext context) : base(context)
 {
 }
Exemplo n.º 6
0
        public void UserInfoExisted()
        {
            //init settings
            var options = new DbContextOptionsBuilder <MyPetContext>()
                          .UseInMemoryDatabase("Add_users_with_duplicate_to_db")
                          .Options;

            //// Run the test against one instance of the context
            using (var myPetContext = new MyPetContext(options))
            {
                var userRepository = new UserRepository(myPetContext);
                var userManager    = new UserManager(userRepository, mapper);

                // init a new register
                var user = new UserRegisterDto
                {
                    UserName        = "******",
                    Email           = "*****@*****.**",
                    Password        = "******",
                    ConfirmPassword = "******"
                };

                //add a user
                userManager.CreateUser(user);
                Assert.Single(myPetContext.Users);
            }

            // Use separate instances of the context to verify duplicated user
            //duplicated name
            using (var myPetContext = new MyPetContext(options))
            {
                var userRepository = new UserRepository(myPetContext);
                var userManager    = new UserManager(userRepository, mapper);

                //create user with duplicated name
                var nameExisteduser = new UserRegisterDto
                {
                    UserName        = "******",
                    Email           = "*****@*****.**",
                    Password        = "******",
                    ConfirmPassword = "******"
                };
                //add a user with the same username
                Assert.Throws <CustomDbConflictException>(() => userManager.CreateUser(nameExisteduser));
            }

            //duplicated email
            using (var myPetContext = new MyPetContext(options))
            {
                var userRepository = new UserRepository(myPetContext);
                var userManager    = new UserManager(userRepository, mapper);

                //create user with duplicated email
                var emailExisteduser = new UserRegisterDto
                {
                    UserName        = "******",
                    Email           = "*****@*****.**",
                    Password        = "******",
                    ConfirmPassword = "******"
                };
                //add a user with the same username
                Assert.Throws <CustomDbConflictException>(() => userManager.CreateUser(emailExisteduser));
            }
        }
Exemplo n.º 7
0
 public GenericRepository(MyPetContext context)
 {
     this.context = context;
 }
Exemplo n.º 8
0
 public UserRepository(MyPetContext context) : base(context)
 {
 }