def test_DieExpr_distribution_1d10_m_2(self):
     dieexpr_1d10_m_2 = dice.DieExpr("1d10-2")
     self.assertEqual(dieexpr_1d10_m_2.distribution, [(-1, 0.1), (0, 0.1),
                                                      (1, 0.1), (2, 0.1),
                                                      (3, 0.1), (4, 0.1),
                                                      (5, 0.1), (6, 0.1),
                                                      (7, 0.1), (8, 0.1)])
 def test_DieExpr_distribution_1d8_1d10_1d4_m_2(self):
     dieexpr_1d8_1d10_1d4_m_2 = dice.DieExpr("1d8+1d10+1d4-2")
     self.assertEqual(dieexpr_1d8_1d10_1d4_m_2.distribution,
                      [(1, 0.00313), (2, 0.00937), (3, 0.01875),
                       (4, 0.03125), (5, 0.04375), (6, 0.05625),
                       (7, 0.06875), (8, 0.08125), (9, 0.09062),
                       (10, 0.09688), (11, 0.09688), (12, 0.09062),
                       (13, 0.08125), (14, 0.06875), (15, 0.05625),
                       (16, 0.04375), (17, 0.03125), (18, 0.01875),
                       (19, 0.00937), (20, 0.00313)])
 def test_DieExpr_distribution_1d6_m_1d4(self):
     dieexpr_1d6_m_1d4 = dice.DieExpr("1d6-1d4")
     self.assertEqual(dieexpr_1d6_m_1d4.distribution, [(-3, 0.04167),
                                                       (-2, 0.08333),
                                                       (-1, 0.125),
                                                       (0, 0.16667),
                                                       (1, 0.16667),
                                                       (2, 0.16667),
                                                       (3, 0.125),
                                                       (4, 0.08333),
                                                       (5, 0.04167)])
 def test_DieExpr_distribution_1d6_p_1d4(self):
     dieexpr_1d6_p_1d4 = dice.DieExpr("1d6+1d4")
     self.assertEqual(dieexpr_1d6_p_1d4.distribution, [(2, 0.04167),
                                                       (3, 0.08333),
                                                       (4, 0.125),
                                                       (5, 0.16667),
                                                       (6, 0.16667),
                                                       (7, 0.16667),
                                                       (8, 0.125),
                                                       (9, 0.08333),
                                                       (10, 0.04167)])
 def test_DieExpr_probability_1d6_m_1d4_neg4(self):
     dieexpr_1d6_m_1d4 = dice.DieExpr("1d6-1d4")
     self.assertEqual(dieexpr_1d6_m_1d4.probability(-4), 0)
 def test_DieExpr_probability_1d6_p_1d4_4(self):
     dieexpr_1d6_p_1d4 = dice.DieExpr("1d6+1d4")
     self.assertEqual(dieexpr_1d6_p_1d4.probability(4), 0.125)
 def test_DieSet_rollrange_1d6(self):
     dieexpr_1d6 = dice.DieExpr("1d6")
     self.assertEqual(dieexpr_1d6.rollrange, 6)
 def test_DieExpr_probability_range_2d4_6to9(self):
     dieexpr_2d4 = dice.DieExpr("2d4")
     with self.assertRaisesRegex(ValueError,
                                 "Argument '9' not in valid range 2 - 8"):
         dieexpr_2d4.probability_range(6, 9)
 def test_DieExpr_probability_range_1d10_m_2_1to8(self):
     dieexpr_1d10_m_2 = dice.DieExpr("1d10-2")
     self.assertEqual(dieexpr_1d10_m_2.probability_range(1, 8), 0.8)
示例#10
0
 def test_DieExpr_probability_range_1d6_p_1d4_2to4(self):
     dieexpr_1d6_p_1d4 = dice.DieExpr("1d6+1d4")
     self.assertEqual(dieexpr_1d6_p_1d4.probability_range(2, 4), 0.25)
示例#11
0
 def test_DieSet_rollrange_1d6_m_1d4(self):
     dieexpr_1d6_m_1d4 = dice.DieExpr("1d6-1d4")
     self.assertEqual(dieexpr_1d6_m_1d4.rollrange, 9)
示例#12
0
 def test_DieExpr_probability_range_1d6_1to3(self):
     dieexpr_1d6 = dice.DieExpr("1d6")
     self.assertEqual(dieexpr_1d6.probability_range(1, 3), 0.50001)
示例#13
0
 def test_DieExpr_distribution_2d4(self):
     dieexpr_2d4 = dice.DieExpr("2d4")
     self.assertEqual(dieexpr_2d4.distribution, [(2, 0.0625), (3, 0.125),
                                                 (4, 0.1875), (5, 0.25),
                                                 (6, 0.1875), (7, 0.125),
                                                 (8, 0.0625)])
示例#14
0
 def test_DieExpr_distribution_1d6(self):
     dieexpr_1d6 = dice.DieExpr("1d6")
     self.assertEqual(dieexpr_1d6.distribution, [(1, 0.16667), (2, 0.16667),
                                                 (3, 0.16667), (4, 0.16667),
                                                 (5, 0.16667),
                                                 (6, 0.16667)])
示例#15
0
 def test_DieSet_rollrange_1d8_1d10_1d4_m_2(self):
     dieexpr_1d8_1d10_1d4_m_2 = dice.DieExpr("1d8+1d10+1d4-2")
     self.assertEqual(dieexpr_1d8_1d10_1d4_m_2.rollrange, 20)
示例#16
0
 def test_DieSet_rollrange_1d10_m_2(self):
     dieexpr_1d10_m_2 = dice.DieExpr("1d10-2")
     self.assertEqual(dieexpr_1d10_m_2.rollrange, 10)
示例#17
0
 def test_DieExpr_probability_1d10_m_2_0(self):
     dieexpr_1d10_m_2 = dice.DieExpr("1d10-2")
     self.assertEqual(dieexpr_1d10_m_2.probability(0), 0.1)
示例#18
0
 def test_DieExpr_probability_range_2d4_2to4(self):
     dieexpr_2d4 = dice.DieExpr("2d4")
     self.assertEqual(dieexpr_2d4.probability_range(2, 4), 0.375)
示例#19
0
 def test_DieExpr_probability_1d8_1d10_1d4_m_2_9(self):
     dieexpr_1d8_1d10_1d4_m_2 = dice.DieExpr("1d8+1d10+1d4-2")
     self.assertEqual(dieexpr_1d8_1d10_1d4_m_2.probability(9), 0.09062)
示例#20
0
 def test_DieSet_rollrange_2d4(self):
     dieexpr_2d4 = dice.DieExpr("2d4")
     self.assertEqual(dieexpr_2d4.rollrange, 7)
示例#21
0
 def test_DieExpr_probability_range_1d6_4to5(self):
     dieexpr_1d6 = dice.DieExpr("1d6")
     self.assertEqual(dieexpr_1d6.probability_range(4, 5), 0.33334)
示例#22
0
 def test_DieExpr_probability_1d6_1(self):
     dieexpr_1d6 = dice.DieExpr("1d6")
     self.assertEqual(dieexpr_1d6.probability(1), 0.16667)
示例#23
0
 def test_DieExpr_probability_range_2d4_4to6(self):
     dieexpr_2d4 = dice.DieExpr("2d4")
     self.assertEqual(dieexpr_2d4.probability_range(4, 6), 0.625)
示例#24
0
 def test_DieExpr_probability_1d6_7(self):
     dieexpr_1d6 = dice.DieExpr("1d6")
     self.assertEqual(dieexpr_1d6.probability(7), 0)
示例#25
0
 def test_DieExpr_probability_range_1d6_m_1d4_m2to2(self):
     dieexpr_1d6_m_1d4 = dice.DieExpr("1d6-1d4")
     self.assertEqual(dieexpr_1d6_m_1d4.probability_range(-2, 2), 0.70834)
示例#26
0
 def test_DieExpr_probability_2d4_2(self):
     dieexpr_2d4 = dice.DieExpr("2d4")
     self.assertEqual(dieexpr_2d4.probability(2), 0.0625)
示例#27
0
 def test_DieExpr_probability_range_1d8_1d10_1d4_m_2_8to13(self):
     dieexpr_1d8_1d10_1d4_m_2 = dice.DieExpr("1d8+1d10+1d4-2")
     self.assertEqual(dieexpr_1d8_1d10_1d4_m_2.probability_range(8, 13),
                      0.5375)
示例#28
0
 def test_DieExpr_probability_2d4_6(self):
     dieexpr_2d4 = dice.DieExpr("2d4")
     self.assertEqual(dieexpr_2d4.probability(6), 0.1875)
示例#29
0
 def test_DieExpr_probability_range_1d6_1d4_1to5(self):
     dieexpr_2d4 = dice.DieExpr("1d6+1d4")
     with self.assertRaisesRegex(ValueError,
                                 "Argument '1' not in valid range 2 - 10"):
         dieexpr_2d4.probability_range(1, 5)
示例#30
0
 def test_DieExpr_maxroll_1d8_1d10_1d4_m_2(self):
     dieexpr_1d8_1d10_1d4_m_2 = dice.DieExpr("1d8+1d10+1d4-2")
     self.assertEqual(dieexpr_1d8_1d10_1d4_m_2.maxroll, 20)