Ejemplo n.º 1
0
 def test_modifier_does_not_reduce_current_if_not_too_big(self):
     stat = Stat(3)
     stat.modify_current(-3)
     self.assertEqual(stat.current, 0)
     stat.modifier(-2)
     self.assertEqual(stat.max, 1)
     self.assertEqual(stat.current, 0)
Ejemplo n.º 2
0
 def test_adjust(self):
     stat = Stat(3)
     new = stat.adjust(3)
     self.assertIsNot(stat, new)
     self.assertEqual(new.max, 6)
     self.assertEqual(new.static_max, 6)
     self.assertEqual(new.current, 6)
Ejemplo n.º 3
0
 def test_hard_reset_resets_everything(self):
     stat = Stat(3)
     stat.modifier(10)
     stat.modify_current(-3)
     stat.hard_reset()
     self.assertEqual(stat.max, 3)
     self.assertEqual(stat.static_max, 3)
     self.assertEqual(stat.current, 3)
Ejemplo n.º 4
0
 def test_reset_resets_current_to_max(self):
     stat = Stat(3)
     stat.modify_current(-3)
     stat.modifier(3)
     self.assertEqual(stat.max, 6)
     self.assertEqual(stat.current, 0)
     stat.reset()
     self.assertEqual(stat.max, 6)
     self.assertEqual(stat.current, 6)
Ejemplo n.º 5
0
 def test_modifier_reduce_current_if_too_big(self):
     stat = Stat(3)
     self.assertEqual(stat.current, 3)
     stat.modifier(-1)
     self.assertEqual(stat.current, 2)
     stat.modify_current(-1)
     self.assertEqual(stat.current, 1)
     stat.modifier(-3)
     self.assertEqual(stat.current, 0)
Ejemplo n.º 6
0
    def test_modifier_changes_max_and_not_static_max(self):
        stat = Stat(3)
        stat.modifier(4)
        self.assertEqual(stat.max, 7)
        self.assertEqual(stat.static_max, 3)

        stat.modifier(-10)
        self.assertEqual(stat.max, -7)
        self.assertEqual(stat.static_max, 3)
Ejemplo n.º 7
0
    def test_modify_current(self):
        stat = Stat(3)

        stat.modify_current(-2)
        self.assertEqual(stat.current, 1)
        self.assertEqual(stat.max, 3)

        stat.modify_current(-2)
        self.assertEqual(stat.current, -1)
        self.assertEqual(stat.max, 3)
Ejemplo n.º 8
0
    def test_modify_current_maxes_out_at_max_and_not_static_max(self):
        stat = Stat(1)
        stat.modifier(2)
        self.assertEqual(stat.max, 3)
        self.assertEqual(stat.static_max, 1)

        stat.modify_current(2)
        self.assertEqual(stat.current, 3)

        stat.modify_current(-2)
        self.assertEqual(stat.current, 1)

        stat.modify_current(100)
        self.assertEqual(stat.current, 3)
Ejemplo n.º 9
0
    def test_neg_infinite_stat(self):
        neg_inf = float('-inf')
        stat = Stat(neg_inf)
        stat.modifier(-100)
        self.assertEqual(stat.max, neg_inf)
        self.assertEqual(stat.current, neg_inf)

        stat.modify_current(-100)
        self.assertEqual(stat.current, neg_inf)

        stat = PositiveStat(neg_inf)
        stat.modifier(-100)
        self.assertEqual(stat.max, 0)
        self.assertEqual(stat.current, 0)

        stat.modify_current(-100)
        self.assertEqual(stat.current, 0)
Ejemplo n.º 10
0
    def test_infinite_stat(self):
        inf = float('inf')
        stat = Stat(inf)
        stat.modifier(-100)
        self.assertEqual(stat.max, inf)
        self.assertEqual(stat.current, inf)

        stat.modify_current(-100)
        self.assertEqual(stat.current, inf)

        stat = PositiveStat(inf)
        stat.modifier(-100)
        self.assertEqual(stat.max, inf)
        self.assertEqual(stat.current, inf)

        stat.modify_current(-100)
        self.assertEqual(stat.current, inf)
Ejemplo n.º 11
0
 def test_init_and_getters(self):
     stat = Stat(3)
     self.assertEqual(stat.max, 3)
     self.assertEqual(stat.static_max, 3)
     self.assertEqual(stat.current, 3)
Ejemplo n.º 12
0
 def test_init_and_getter_zero(self):
     zero = Stat(0)
     self.assertEqual(zero.max, 0)
     self.assertEqual(zero.static_max, 0)
     self.assertEqual(zero.current, 0)
Ejemplo n.º 13
0
 def test_init_and_getter_negative(self):
     neg = Stat(-3)
     self.assertEqual(neg.max, -3)
     self.assertEqual(neg.static_max, -3)
     self.assertEqual(neg.current, -3)