public async Task DeleteDeckTest()
        {
            var options = new DbContextOptionsBuilder <ApplicationDbContext>()
                          .UseInMemoryDatabase(Guid.NewGuid().ToString());
            var decksRepository = new EfDeletableEntityRepository <Deck>(new ApplicationDbContext(options.Options));

            foreach (var deck in this.GetDecksData())
            {
                await decksRepository.AddAsync(deck);

                await decksRepository.SaveChangesAsync();
            }

            var mockCardsRepository = new Mock <IDeletableEntityRepository <Card> >();
            var store           = new Mock <IUserStore <ApplicationUser> >();
            var mockUserManager = new Mock <UserManager <ApplicationUser> >(store.Object, null, null, null, null, null, null, null, null);

            var service = new DecksService(decksRepository, mockCardsRepository.Object, mockUserManager.Object);
            await service.DeleteDeck("1", "User1");

            await service.DeleteDeck("2", "User2");

            var decks = decksRepository.All();

            Assert.Equal(2, decks.Count());
        }
        protected void OnInsert(object sender, EventArgs e)
        {
            try
            {
                if (IsValid)
                {
                    DeckType     deck          = new DeckType(nameTextBox.Text, int.Parse(formatsDropDownList.SelectedValue), DateTime.Now.ToShortDateString(), descriptionTextBox.Text);
                    DecksService insertService = new DecksService(deck);
                    if (!insertService.deckAlreadyExists())
                    {
                        if (insertService.InsertDeck() > 0)
                        {
                            Response.Write("<script>alert('Successfully inserted');</script>");
                        }
                        else
                        {
                            Response.Write("<script>alert('Insertion failed');</script>");
                        }
                    }
                    else
                    {
                        Response.Write("<script>alert('deck already exists');</script>");
                    }
                }
            }

            catch (Exception ex)
            {
                Debug.WriteLine(ex.StackTrace);
            }
        }
        public async Task GetCardTest()
        {
            var options = new DbContextOptionsBuilder <ApplicationDbContext>()
                          .UseInMemoryDatabase(Guid.NewGuid().ToString());
            var cardsRepository = new EfDeletableEntityRepository <Card>(new ApplicationDbContext(options.Options));

            foreach (var item in this.GetCardsData())
            {
                await cardsRepository.AddAsync(item);

                await cardsRepository.SaveChangesAsync();
            }

            var mockDecksRepository = new Mock <IDeletableEntityRepository <Deck> >();
            var store           = new Mock <IUserStore <ApplicationUser> >();
            var mockUserManager = new Mock <UserManager <ApplicationUser> >(store.Object, null, null, null, null, null, null, null, null);

            var service = new DecksService(mockDecksRepository.Object, cardsRepository, mockUserManager.Object);

            AutoMapperConfig.RegisterMappings(typeof(CardViewModel).Assembly);

            var card = service.GetCard <CardViewModel>("1");

            Assert.Equal("front1", card.FrontSide);
            Assert.Equal("back1", card.BackSide);
            Assert.Equal("deck1", card.DeckId);
        }
        public async Task GetDecksTest()
        {
            var options = new DbContextOptionsBuilder <ApplicationDbContext>()
                          .UseInMemoryDatabase(Guid.NewGuid().ToString());
            var decksRepository = new EfDeletableEntityRepository <Deck>(new ApplicationDbContext(options.Options));

            foreach (var deck in this.GetDecksData())
            {
                await decksRepository.AddAsync(deck);

                await decksRepository.SaveChangesAsync();
            }

            var mockCardsRepository = new Mock <IDeletableEntityRepository <Card> >();
            var store           = new Mock <IUserStore <ApplicationUser> >();
            var mockUserManager = new Mock <UserManager <ApplicationUser> >(store.Object, null, null, null, null, null, null, null, null);

            var service = new DecksService(decksRepository, mockCardsRepository.Object, mockUserManager.Object);

            AutoMapperConfig.RegisterMappings(typeof(DeckViewModel).Assembly);

            var decks = service.GetDecks <DeckViewModel>("User1");

            Assert.Equal(3, decks.Count());
        }
Esempio n. 5
0
        protected void OnRowDeleting(object sender, GridViewDeleteEventArgs e)
        {
            DataSet cardsDS       = (DataSet)Cache["Cards"];
            int     cardId        = int.Parse(magicCardsGridView.Rows[e.RowIndex].Cells[0].Text);
            DataRow row           = cardsDS.Tables["AllMagicCards"].Rows.Find(cardId);
            bool    cardInDeck    = new DecksService().cardAlreadyInDeck(cardId);
            bool    userAddedCard = new UserCardService().userAlreadyAddedCard(cardId);

            if (!cardInDeck && !userAddedCard)
            {
                if (cardsService.DeleteRow(cardId) > 0)
                {
                    row.Delete();
                }
                else
                {
                    Response.Write("<script>alert('Error Deleting');</script>");
                }
            }
            else
            {
                cardsService.UnAbleCard(cardId);
            }

            magicCardsGridView.EditIndex  = -1;
            magicCardsGridView.DataSource = (DataSet)Cache["Cards"];
            magicCardsGridView.DataBind();
        }
Esempio n. 6
0
        public DeckAddForm(Topic topic, string category)
        {
            InitializeComponent();

            _topic        = topic;
            _category     = category;
            _decksService = new DecksService();
        }
Esempio n. 7
0
        public ResourcesExplorerForm(Topic topic)
        {
            InitializeComponent();
            _topic = topic;

            _categoriesService = new CategoriesService();
            _decksService      = new DecksService();
            _cardsService      = new CardsService();

            RefreshCategories();
        }
Esempio n. 8
0
        public DeckEditForm(Topic topic, string category, Deck deck)
        {
            InitializeComponent();

            _topic        = topic;
            _category     = category;
            _deck         = deck;
            _decksService = new DecksService();

            tbName.Text        = deck.Name;
            tbDescription.Text = deck.Description;
        }
 private void AddFormats()
 {
     try
     {
         DecksService cardsServices = new DecksService();
         DataSet      cardsDataSet  = cardsServices.GetAllFormats();
         Utilities.AddToDropDownList(cardsDataSet, formatsDropDownList, "Formats", "formatName", "formatId");
     }
     catch (Exception ex)
     {
         Debug.WriteLine(ex.StackTrace);
     }
 }
        protected void OnSearch(object sender, EventArgs e)
        {
            int formatId = -1;

            if (formatDropDownList.SelectedValue != "None")
            {
                formatId = int.Parse(formatDropDownList.SelectedValue);
            }
            DeckType     deck         = new DeckType(nameDropDownList.SelectedItem.Text, formatId, "", "");
            DecksService service      = new DecksService(deck);
            DataSet      deckSelected = service.GetSelectedDecks(minDateTextBox.Text, maxDateTextBox.Text);

            if (deckSelected != null)
            {
                deckGridView.DataSource = deckSelected;
                deckGridView.DataBind();
            }
        }
Esempio n. 11
0
        public async Task CreateCardTest()
        {
            var options = new DbContextOptionsBuilder <ApplicationDbContext>()
                          .UseInMemoryDatabase(Guid.NewGuid().ToString());
            var cardsRepository = new EfDeletableEntityRepository <Card>(new ApplicationDbContext(options.Options));

            var mockDecksRepository = new Mock <IDeletableEntityRepository <Deck> >();
            var store           = new Mock <IUserStore <ApplicationUser> >();
            var mockUserManager = new Mock <UserManager <ApplicationUser> >(store.Object, null, null, null, null, null, null, null, null);

            var service = new DecksService(mockDecksRepository.Object, cardsRepository, mockUserManager.Object);
            await service.CreateCard("Front", "Back", "1");

            await service.CreateCard("Front2", "Back2", "1");

            await service.CreateCard("Front3", "Back3", "3");

            var cards = cardsRepository.All();

            Assert.Equal(3, cards.Count());
        }
Esempio n. 12
0
        public async Task CreateDeckTest()
        {
            var options = new DbContextOptionsBuilder <ApplicationDbContext>()
                          .UseInMemoryDatabase(Guid.NewGuid().ToString());
            var decksRepository = new EfDeletableEntityRepository <Deck>(new ApplicationDbContext(options.Options));

            var mockCardsRepository = new Mock <IDeletableEntityRepository <Card> >();
            var store           = new Mock <IUserStore <ApplicationUser> >();
            var mockUserManager = new Mock <UserManager <ApplicationUser> >(store.Object, null, null, null, null, null, null, null, null);

            var service = new DecksService(decksRepository, mockCardsRepository.Object, mockUserManager.Object);

            await service.CreateDeck("Deck", "Pubilc", "User1", "NoThumbnail");

            await service.CreateDeck("Deck2", "Private", "User2", "NoThumbnail");

            var decks = decksRepository.All();

            Assert.Equal(2, decks.Count());
            Assert.True(decks.FirstOrDefault(x => x.Name == "Deck").IsPublic);
        }
Esempio n. 13
0
        public async Task UpdateCardTest()
        {
            var options = new DbContextOptionsBuilder <ApplicationDbContext>()
                          .UseInMemoryDatabase(Guid.NewGuid().ToString());
            var cardsRepository = new EfDeletableEntityRepository <Card>(new ApplicationDbContext(options.Options));

            foreach (var item in this.GetCardsData())
            {
                await cardsRepository.AddAsync(item);

                await cardsRepository.SaveChangesAsync();
            }

            var decksRepository = new EfDeletableEntityRepository <Deck>(new ApplicationDbContext(options.Options));

            foreach (var deck in this.GetDecksData())
            {
                await decksRepository.AddAsync(deck);

                await decksRepository.SaveChangesAsync();
            }

            var store           = new Mock <IUserStore <ApplicationUser> >();
            var mockUserManager = new Mock <UserManager <ApplicationUser> >(store.Object, null, null, null, null, null, null, null, null);

            var service = new DecksService(decksRepository, cardsRepository, mockUserManager.Object);

            await service.UpdateCard("NEWFRONT", "NEWBACK", "2", "User1");

            await service.UpdateCard("NEWFRONT2", "NEWBACK2", "3", "User1");

            var card1 = cardsRepository.All().FirstOrDefault(x => x.Id == "2");
            var card2 = cardsRepository.All().FirstOrDefault(x => x.Id == "3");

            Assert.Equal("NEWFRONT", card1.FrontSide);
            Assert.Equal("NEWBACK", card1.BackSide);

            Assert.Equal("front3", card2.FrontSide);
            Assert.Equal("back3", card2.BackSide);
        }