public void Add_SavesToDatabase()
        {
            var options = new DbContextOptionsBuilder <GameInfoContext>()
                          .UseInMemoryDatabase(databaseName: "AddItem_ToDb")
                          .Options;

            using (var context = new GameInfoContext(options))
            {
                var itemToAdd = new AddItemInputModel()
                {
                    Name = "Item", AcquiredFrom = "How to get", Usage = "None"
                };

                var service = new ItemsService(context);
                service.Add(itemToAdd);

                var expectedItem = new Item()
                {
                    Name = itemToAdd.Name, AcquiredFrom = itemToAdd.AcquiredFrom, Usage = itemToAdd.Usage
                };

                var itemFromDb = context.Items.First();

                Assert.NotEmpty(context.Items);
                Assert.Equal(expectedItem.Name, itemFromDb.Name);
                Assert.Equal(expectedItem.AcquiredFrom, itemFromDb.AcquiredFrom);
                Assert.Equal(expectedItem.Usage, itemFromDb.Usage);
            }
        }
Example #2
0
        public IActionResult Add(AddItemInputModel inputModel)
        {
            if (!ModelState.IsValid)
            {
                return(View());
            }

            _itemsService.Add(inputModel);

            return(Redirect(Items_Root_Path));
        }
Example #3
0
        public void Add(AddItemInputModel model)
        {
            var item = new Item
            {
                Name         = model.Name,
                AcquiredFrom = model.AcquiredFrom,
                Usage        = model.Usage
            };

            this._db.Items.Add(item);
            this._db.SaveChanges();
        }
Example #4
0
        public async Task AddItemAsync(AddItemInputModel model)
        {
            var item = new Item
            {
                Name             = model.Name,
                ItemImage        = model.ItemImage,
                ItemBigImage     = model.ItemBigImage,
                ItemType         = model.ItemType,
                BasicItemType    = model.BasicItemType,
                UpgradeItemType  = model.UpgradeItemType,
                NeutralItemTier  = model.NeutralItemTier,
                ItemGoldPrice    = model.ItemGoldPrice,
                DescriptionTitle = model.DescriptionTitle,
                Description      = model.Description,
                Hint             = model.Hint,
                Lore             = model.Lore,
                Cooldown         = model.Cooldown,
                ManaCost         = model.ManaCost,
            };

            await this.itemRepository.AddAsync(item);

            await this.itemRepository.SaveChangesAsync();
        }
Example #5
0
        public async Task <IActionResult> AddItem(AddItemInputModel model)
        {
            await this.itemsService.AddItemAsync(model);

            return(this.Redirect("/Items/All"));
        }