示例#1
0
        public void AddCard()
        {
            var c             = new Card("title", "fullTest", "hint");
            var dataStoreMock = new Mock <IDataStore>();
            var cardRepo      = new CardRepository(dataStoreMock.Object);

            var result = cardRepo.AddCard(c);

            result.Should().BeTrue();
        }
示例#2
0
        public void AddCardReturnsFalseWhenDataStoreFails()
        {
            var c             = new Card("title", "fullText", "hint");
            var dataStoreMock = new Mock <IDataStore>();

            dataStoreMock.Setup(m => m.AddCard(It.IsAny <Card>()))
            .Throws(new DataException("Your attempt to add a card failed."));
            var cardRepo = new CardRepository(dataStoreMock.Object);

            var result = cardRepo.AddCard(c);

            result.Should().BeFalse();
        }
示例#3
0
        static void LoadCards(MTGToolboxContext context, string setCode)
        {
            CardRepository cardRepository = new CardRepository(context);
            SetRepository  setRepository  = new SetRepository(context);

            CardService cardService = new CardService();

            Set set = setRepository.GetSetByCode(setCode);

            int cardResultsPage = 1;
            var cardResults     = cardService.Where(x => x.Set, setCode).Where(x => x.Page, cardResultsPage).All();

            do
            {
                foreach (var item in cardResults.Value)
                {
                    Card card = new Card();
                    card.Name = item.Name;

                    card.ImageFile = item.ImageUrl?.ToString();

                    card.SetCards = new List <SetCards> {
                        new SetCards {
                            Set = set, Card = card, Rarity = item.Rarity, ImageFile = item.ImageUrl?.ToString()
                        }
                    };

                    cardRepository.AddCard(card);
                }

                cardResultsPage += 1;
                cardResults      = cardService.Where(x => x.Set, setCode).Where(x => x.Page, cardResultsPage).All();
            } while (cardResults.Value.Count > 1);

            cardRepository.Save();
        }
示例#4
0
 public void AddCard(string cardId)
 {
     cardRepository.AddCard(cardId);
 }
示例#5
0
        public UpdateTemplateBoard UpdateTemplateBoard(UpdateTemplateBoard updateTemplateBoard)
        {
            #region 1 - Recupera quadro template.

            if (string.IsNullOrEmpty(updateTemplateBoard.IdTemplateBoard))
            {
                updateTemplateBoard.AddNotification("IdBoard", "Id do quadro template não foi informado");
                return(updateTemplateBoard);
            }

            GetBoardById(updateTemplateBoard);

            if (updateTemplateBoard.Invalid)
            {
                return(updateTemplateBoard);
            }

            #endregion

            #region 2 - Recupera lista 'Backlog' no quadro template.

            GetBacklogList(updateTemplateBoard);

            if (updateTemplateBoard.Invalid)
            {
                return(updateTemplateBoard);
            }

            #endregion

            #region 3 - Cria os cartões.

            CardRepository cardRepository = new CardRepository();

            foreach (var topic in updateTemplateBoard.Estimate.Topics)
            {
                var createCard = new CreateCard
                                 (
                    updateTemplateBoard.Key,
                    updateTemplateBoard.Token,
                    updateTemplateBoard.BacklogList.Id,
                    topic
                                 );

                var createCardResponse = cardRepository.AddCard(createCard);

                if (createCard.Invalid)
                {
                    updateTemplateBoard.AddNotification(createCard.Notifications.FirstOrDefault().Property, createCard.Notifications.FirstOrDefault().Message);
                    return(updateTemplateBoard);
                }

                Card card = new Card()
                {
                    Id   = createCardResponse.Id,
                    Desc = createCardResponse.Description,
                    Name = createCardResponse.Name,
                };

                updateTemplateBoard.AddCard(card);

                #region 3.1 - Cria o CheckList "Tópicos a serem desenvolvidos".

                CheckListRepository checkListRepository = new CheckListRepository();

                var createCheckList = new CreateCheckList
                                      (
                    updateTemplateBoard.Key,
                    updateTemplateBoard.Token,
                    createCardResponse.Id,
                    "Tópicos que serão desenvolvidos"
                                      );

                // Não grava em nunhum lugar essa informação no momento, pois não é necessária. Caso em algum momento seja necessário utilizar essa informação, necessário implementar.
                var createCheckListResponse = checkListRepository.AddCheckList(createCheckList);

                if (createCheckList.Invalid)
                {
                    updateTemplateBoard.AddNotification(createCheckList.Notifications.FirstOrDefault().Property, createCheckList.Notifications.FirstOrDefault().Message);
                    return(updateTemplateBoard);
                }

                #endregion

                #region 3.2 - Cria os itens para o CheckList "Tópicos a serem desenvolvidos".

                int checkListItemCount = 0;

                foreach (var topic2 in topic.Topics)
                {
                    checkListItemCount++;

                    CheckListItemRepository checkListItemRepository = new CheckListItemRepository();

                    var createCheckListItem = new CreateCheckListItem
                                              (
                        updateTemplateBoard.Key,
                        updateTemplateBoard.Token,
                        createCheckListResponse.Id,
                        $"Ponto {checkListItemCount}"
                                              );

                    var checkListItemResponse = checkListItemRepository.AddCheckListItem(createCheckListItem);

                    if (createCheckList.Invalid)
                    {
                        updateTemplateBoard.AddNotification(createCheckList.Notifications.FirstOrDefault().Property, createCheckList.Notifications.FirstOrDefault().Message);
                        return(updateTemplateBoard);
                    }
                }

                #endregion
            }

            #endregion


            return(updateTemplateBoard);
        }