예제 #1
0
    def test_two_cards(self):
        b = '''
2	Mana Leak
'''.strip().splitlines()
        expected_result = 2
        actual_result = total_cards(get_deck(b))
        self.assertEqual(actual_result, expected_result)
예제 #2
0
    def test_no_cards(self):
        b = f'''
'''.strip().splitlines()
        expected_result = set()
        deck = get_deck(b, verbose=True)
        actual_result = legal_formats(deck)
        self.assertEqual(actual_result, expected_result)
예제 #3
0
    def test_one_color(self):
        b = f'''
2 Fervent Champion
'''.strip().splitlines()
        expected_result = {'R': 2}
        deck = get_deck(b)
        actual_result = devotion(deck)
        self.assertEqual(actual_result, expected_result)
예제 #4
0
    def test_one_colorless(self):
        b = f'''
2 Island
'''.strip().splitlines()
        expected_result = {}
        deck = get_deck(b)
        actual_result = devotion(deck)
        self.assertEqual(actual_result, expected_result)
예제 #5
0
    def test_two_colors(self):
        b = f'''
2 Gruul Spellbreaker
'''.strip().splitlines()
        expected_result = {'G': 2, 'R': 2}
        deck = get_deck(b)
        actual_result = devotion(deck)
        self.assertEqual(actual_result, expected_result)
예제 #6
0
    def test_one_color_blue(self):
        b = f'''
2 Counterspell
'''.strip().splitlines()
        expected_result = {'U': 4}
        deck = get_deck(b)
        actual_result = devotion(deck)
        self.assertEqual(actual_result, expected_result)
예제 #7
0
    def test_one_card(self):
        b = f'''
2 Fervent Champion
'''.strip().splitlines()
        expected_result = {'modern', 'vintage', 'brawl', 'pioneer', 'legacy',
                'standard', 'commander'}
        actual_result = legal_formats(get_deck(b, verbose=True))
        self.assertEqual(actual_result, expected_result)
예제 #8
0
    def test_two_cards(self):
        b = '''
4	Shock
2	Mana Leak
'''.strip().splitlines()
        d = get_deck(b)
        self.assertEqual(d[1]['count'], 2)
        self.assertEqual(d[1]['card'].name, 'Mana Leak')
        self.assertEqual(d[1]['card'].cmc, 2)
예제 #9
0
    def test_one_card(self):
        b = f'''
2 Counterspell
2 Island
2 Bloodfell Caves
'''.strip().splitlines()
        deck = get_deck(b)
        s = deck_stats(deck)
        self.assertEqual(s['cmc'], 4)
예제 #10
0
    def test_two_cards(self):
        b = f'''
2 Fervent Champion
2 Sol Ring
'''.strip().splitlines()
        expected_result = {'commander'}
        deck = get_deck(b, verbose=True)
        actual_result = legal_formats(deck)
        self.assertEqual(actual_result, expected_result)
예제 #11
0
    def test_set_unspecified(self):
        b = '''
4	Shock
'''.strip().splitlines()
        d = get_deck(b)
        self.assertEqual(d[0]['count'], 4)
        self.assertEqual(d[0]['card'].name, 'Shock')
        self.assertEqual(d[0]['card'].setcode, 'M20')
        self.assertEqual(d[0]['card'].cmc, 1)
예제 #12
0
    def test_one_card(self):
        b = '''
4	Bonecrusher Giant
'''.strip().splitlines()
        d = get_deck(b)
        self.assertEqual(d[0]['count'], 4)
        self.assertEqual(d[0]['card'].name, 'Bonecrusher Giant')
        self.assertEqual(d[0]['card'].setcode, 'ELD')
        self.assertEqual(d[0]['card'].cmc, 3)
예제 #13
0
    def test_one_card(self):
        b = '''
4	Bonecrusher Giant
'''.strip().splitlines()
        deck = get_deck(b)
        expected_result = '''
4 Bonecrusher Giant
        '''.strip().splitlines()
        actual_result = std_deck(deck)
        self.assertEqual(actual_result, expected_result)
예제 #14
0
    def test_one_card_with_mana_no_ansi(self):
        b = '''
4	Bonecrusher Giant
'''.strip().splitlines()
        deck = get_deck(b)
        expected_result = '''
4  Bonecrusher Giant  2R
        '''.strip().splitlines()
        actual_result = std_deck(deck, mana=True, ansi=False)
        self.assertEqual(actual_result, expected_result)
예제 #15
0
    def test_one_card_with_mana(self):
        b = '''
4	Bonecrusher Giant
'''.strip().splitlines()
        deck = get_deck(b)
        expected_result = '''
4  Bonecrusher Giant  2R
        '''.strip().splitlines()
        actual_result = std_deck(deck, mana=True)
        self.assertEqual(actual_result, expected_result)
예제 #16
0
    def test_0cmc_with_mana(self):
        b = '''
1 Forest
'''.strip().splitlines()
        deck = get_deck(b)
        expected_result = '''
1  Forest
        '''.strip()
        lname = len(deck[0]['card'].name)
        actual_result = card_line_print(deck[0], lname=lname, lmana=15)
        self.assertEqual(actual_result, expected_result)
예제 #17
0
    def test_with_mana(self):
        b = '''
1 Bonecrusher Giant
'''.strip().splitlines()
        deck = get_deck(b)
        expected_result = '''
1  Bonecrusher Giant  2R
        '''.strip()
        lname = len(deck[0]['card'].name)
        actual_result = card_line_print(deck[0], lname=lname, lmana=15)
        self.assertEqual(actual_result, expected_result)
예제 #18
0
    def test_without_mana(self):
        b = '''
1 Bonecrusher Giant
'''.strip().splitlines()
        deck = get_deck(b)
        expected_result = '''
1 Bonecrusher Giant
        '''.strip()
        lname = lname=len(deck[0]['card'].name)
        actual_result = card_line_print(deck[0])
        self.assertEqual(actual_result, expected_result)
예제 #19
0
    def test_one_card(self):
        b = '''
4	Fervent Champion
'''.strip().splitlines()
        deck = get_deck(b)
        expected_result = '''
Creatures 4
4  Fervent Champion  R
'''.lstrip('\n').splitlines()
        actual_result = sectioned_deck(deck, ansi=False)
        self.assertEqual(actual_result, expected_result)
예제 #20
0
    def test_two_cards(self):
        b = '''
4	Bonecrusher Giant
4	Fervent Champion
'''.strip().splitlines()
        deck = get_deck(b)
        expected_result = '''
4 Fervent Champion
4 Bonecrusher Giant
        '''.strip().splitlines()
        actual_result = std_deck(deck)
        self.assertEqual(actual_result, expected_result)
예제 #21
0
    def test_with_mana_no_ansi(self):
        b = '''
1 Bonecrusher Giant
'''.strip().splitlines()
        deck = get_deck(b)
        expected_result = '''
1  Bonecrusher Giant  2R
        '''.strip()
        lname = len(deck[0]['card'].name)
        actual_result = card_line_print(deck[0], lname=lname, lmana=15,
                ansi=False)
        self.assertEqual(actual_result, expected_result)
예제 #22
0
    def test_standard_card(self):
        b = f'''
2 Fervent Champion
'''.strip().splitlines()
        expected_result = f'''
Standard:  legal   Brawl:   legal
Pioneer:   legal   Pauper:
Modern:    legal   Legacy:  legal
Commander: legal   Vintage: legal
'''.strip().splitlines()
        deck = get_deck(b, verbose=True)
        legal_fmts = legal_formats(deck)
        actual_result = legal_formats_print(legal_fmts)
        self.assertEqual(actual_result, expected_result)
예제 #23
0
    def test_two_types(self):
        b = '''
4	Fervent Champion
1	Chandra, Acolyte of Flame
'''.strip().splitlines()
        deck = get_deck(b)
        expected_result = '''
Creatures 4
4  Fervent Champion           R

Planeswalkers 1
1  Chandra, Acolyte of Flame  1RR
'''.lstrip('\n').splitlines()
        actual_result = sectioned_deck(deck, ansi=False)
        self.assertEqual(actual_result, expected_result)
예제 #24
0
    def test_banned_and_restricted(self):
        b = f'''
2 Sol Ring
2 Fervent Champion
'''.strip().splitlines()
        expected_result = f'''
Standard:          Brawl:
Pioneer:           Pauper:
Modern:            Legacy:
Commander: legal   Vintage:
'''.strip().splitlines()
        deck = get_deck(b, verbose=True)
        legal_fmts = legal_formats(deck)
        actual_result = legal_formats_print(legal_fmts)
        self.assertEqual(actual_result, expected_result)
예제 #25
0
    def test_empty(self):
        b = '''
'''.strip().splitlines()
        d = get_deck(b)
        self.assertEqual(d, [])
예제 #26
0
    def test_empty_deck(self):
        b = '''
'''.strip().splitlines()
        expected_result = 0
        actual_result = total_cards(get_deck(b))
        self.assertEqual(actual_result, expected_result)