Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

I need help with this problem. The errors keep popping up when I run this program for dice roll with false replaceDice errors and bool

I need help with this problem. The errors keep popping up when I run this program for dice roll with false replaceDice errors and bool ones along with multi die ones.

import random

class Die: def __init__(self,n=6): self.dieCount = 0 self.numberOfsides = 6 self.totalRolls = 0 self.replaceDie = True def rollDie(self): return random.randrange(1,self.numberOfsides) def rollTwoDie(self): return self.rollDie()+self.rollDie()

def rollMultiDie(self,n=2): sum=0 for i in range(n): sum += self.rollDie()

def getSides(self): return self.numberOfsides def getDieCount(self): return self.dieCount def incrementRolls(self): self.totalRolls = self.totalRolls + 1 if(self.totalRolls > 100): self.replaceDie = True def getIncrementRolls(self): return self.incrementRolls def resetIncrementRolls(self): self.incrementRolls = 0

def replaceDie(self): return self.replaceDie

I need to use this program unedited to test it.

import unittest from Die import Die

class DieTest(unittest.TestCase): def test_instantiation(self): d6 = Die() self.assertEqual(d6.getSides(), 6) self.assertFalse(d6.getSides() == 3) d3 = Die(3) self.assertTrue(d3.getSides() == 3) self.assertFalse(d3.getSides() == 6) self.assertFalse(d6.replaceDie()) def test_rolls(self): d6 = Die() self.assertTrue( d6.rollDie() < 7 ) self.assertFalse( d6.rollDie() > 6 ) self.assertTrue( d6.rollTwoDie() < 13 ) self.assertTrue( d6.rollTwoDie() <= 12 ) self.assertTrue( d6.rollMultiDie(3) > 2 ) self.assertTrue( d6.rollMultiDie(4) > 4 )

def test_count(self): d1 = Die() d2 = Die() d3 = Die() d4 = Die() self.assertTrue(d1.getDieCount() == 4)

def test_replace(self): d1 = Die() self.assertFalse(d1.replaceDie()) for x in range(1,110): d1.rollDie() self.assertTrue(d1.replaceDie())

def test_totalRolls(self): d1 = Die() for x in range(1,110): d1.rollDie() self.assertTrue(d1.getIncrementRolls() == 109) d1.resetIncrementRolls() self.assertTrue(d1.getIncrementRolls() == 0)

if __name__ == "__main__": unittest.main()

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Machine Learning And Knowledge Discovery In Databases European Conference Ecml Pkdd 2015 Porto Portugal September 7 11 2015 Proceedings Part 3 Lnai 9286

Authors: Albert Bifet ,Michael May ,Bianca Zadrozny ,Ricard Gavalda ,Dino Pedreschi ,Francesco Bonchi ,Jaime Cardoso ,Myra Spiliopoulou

1st Edition

3319234609, 978-3319234601

More Books

Students also viewed these Databases questions