def setUp(self) -> None: self.card = Card("card title", "question", "answer", 1) self.deck = Deck("deck name", [self.card]) self.data = Data() self.data.box = Box("box name", [self.deck]) self.deck_service = DeckService(self.data)
def save_deck(self): to_validate = self.var_name_entry.get() if not to_validate: self.confirm_text.set("Error : name cannot be blank") return deck = Deck(self.var_name_entry.get(), []) self.deckService.add_deck(deck) CreateCard(deck, master=self.app)
def test_get_deck_should_return_deck_present_in_data_box(self): current_decks = self.data.box.decks current_decks.append(Deck("2nd deck", [self.card])) self.data.box.decks = current_decks self.assertIsInstance(self.deck_service.find_deck_by_index(0), Deck, "incorrect deck instance") self.assertEqual(self.deck_service.find_deck_by_index(0), self.deck, "incorrect deck value") self.assertEqual( self.deck_service.find_deck_by_index(1).name, "2nd deck", "incorrect deck value")
def get_json_box(self, file_path): box = Box("AnkiLike", list()) if file_path.exists(): try: json_data = self.get_json_from_file(file_path) for deck in json_data['decks']: new_deck = Deck(deck['_name'], list()) for card in deck['cards']: new_card = Card(card['_title'], card['_question'], card['_answer'], card['_validation_level']) new_deck.add_card(new_card) box.add_deck(new_deck) return box except: messagebox.showwarning( "Sauvegarde", "Vos données sont corrompues ou inexistantes") return box else: messagebox.showwarning("Sauvegarde", "Aucune sauvegarde trouvée") return box
def setUp(self) -> None: self.cards = [] for i in range(5): self.cards.append(Card("card" + str(i), "question", "answer", i)) self.deck = Deck("deck name to test card service", self.cards) self.data = Data() self.data.box = Box("box name", [self.deck]) self.mock_values_ratio_lister = MagicMock() self.card_service = CardService() self.card_service.data = self.data self.card_service.deck_index = 0 self.card_service.values_ratio_lister = self.mock_values_ratio_lister self.deck_create_helper = DeckCreateHelper(4)
def create_deck_with_define_cards_validation_level(self, levels) -> Deck: list_cards = [] validation_level = -1 for i in range(len(levels)): if validation_level > self.max_validation_level: break for y in range(levels[i]): title = 'title_{}_{}'.format(y, validation_level) question = 'question_{}_{}'.format(y, validation_level) answer = 'answer_{}_{}'.format(y, validation_level) card = Card(title, question, answer, validation_level) list_cards.append(card) validation_level += 1 return Deck('current_deck', list_cards)
def deck_load(self, nb_deck: int): new_deck = Deck("deck" + str(nb_deck), []) count_card = round(random.uniform(1, 10)) for nb_card in range(count_card): new_deck.cards.append(self.deck_card(nb_card)) return new_deck