示例#1
0
 def test_car_wheels(self):
     man = Car('MAN', 'Truck', 'trailer')
     koenigsegg = Car('Koenigsegg', 'Agera R')
     self.assertEqual(
         [8, 4], [man.num_of_wheels, koenigsegg.num_of_wheels],
         msg=
         'The car shoud have four (4) wheels except its a type of trailer')
示例#2
0
    def test_car_speed2(self):
        man = Car('Mercedes', 'SLR500')
        parked_speed = man.speed
        moving_speed = man.drive(3).speed

        self.assertListEqual(
            [parked_speed, moving_speed], [0, 1000],
            msg=
            'The Mercedes should have speed 0 km/h until you put `the pedal to the metal`'
        )
示例#3
0
    def test_car_speed(self):
        man = Car('MAN', 'Truck', 'trailer')
        parked_speed = man.speed
        moving_speed = man.drive(7).speed

        self.assertListEqual(
            [parked_speed, moving_speed], [0, 77],
            msg=
            'The Trailer should have speed 0 km/h until you put `the pedal to the metal`'
        )
示例#4
0
 def test_drive_car(self):
     man = Car('MAN', 'Truck', 'trailer')
     moving_man = man.drive(7)
     moving_man_instance = isinstance(moving_man, Car)
     moving_man_type = type(moving_man) is Car
     self.assertListEqual(
         [True, True, man.speed],
         [moving_man_instance, moving_man_type, moving_man.speed],
         msg=
         'The car drive function should return the instance of the Car class'
     )
示例#5
0
 def test_car_doors(self):
     opel = Car('Opel', 'Omega 3')
     porshe = Car('Porshe', '911 Turbo')
     self.assertListEqual(
         [
             opel.num_of_doors, porshe.num_of_doors,
             Car('Koenigsegg', 'Agera R').num_of_doors
         ], [4, 2, 2],
         msg=
         'The car shoud have four (4) doors except its a Porshe or Koenigsegg'
     )
示例#6
0
 def test_default_car_model(self):
     gm = Car()
     self.assertEqual(
         'GM',
         gm.model,
         msg=
         "The car's model should be called `GM` if no model was passed as an argument"
     )
示例#7
0
 def test_default_car_name(self):
     gm = Car()
     self.assertEqual(
         'General',
         gm.name,
         msg=
         'The car should be called `General` if no name was passed as an argument'
     )
clock = pygame.time.Clock()

#this will be the code that creates the rain and places them in a list
rain_drops = pygame.sprite.Group()

for i in range(1000):
    rain = Rain(RAINBLUE, 2, 3)
    rain.rect.x = random.randint(2, 398)
    rain.rect.y = random.randint(0, 350)

    rain_drops.add(rain)  #this adds every drop to the rainstorm

#this code will create the car list and import a car in it
cars = pygame.sprite.Group()

car1 = Car(RED, )  #this will be the car closer to the screen
car1.rect.x = 0
car1.rect.y = 365

car2 = Car(BLUE, )  #this will be the farther car
car2.rect.x = 340
car2.rect.y = 350

cars.add(car2)
cars.add(car1)

#how fast each car will initialy go in the start
speed1 = 5
speed2 = 4

#---------Main Program Loop----------
示例#9
0
 def test_car_instance(self):
     honda = Car('Honda')
     self.assertIsInstance(
         honda,
         Car,
         msg='The object should be an instance of the `Car` class')
示例#10
0
 def test_car_type(self):
     koenigsegg = Car('Koenigsegg', 'Agera R')
     self.assertTrue(
         koenigsegg.is_saloon(),
         msg='The car type should be saloon if it is not a trailer')
示例#11
0
 def test_car_properties(self):
     toyota = Car('Toyota', 'Corolla')
     self.assertListEqual(
         ['Toyota', 'Corolla'], [toyota.name, toyota.model],
         msg='The car name and model should be a property of the car')
示例#12
0
 def test_object_type(self):
     honda = Car('Honda')
     self.assertTrue((type(honda) is Car),
                     msg='The object should be a type of `Car`')