Sunday, August 9, 2020

Code from Testing Video

Here is the customer class code:

class Customer():
    #constructor
    def __init__(self, id, name, email, rewards):
        self.id=id
        self.name=name
        self.email=email
        self.rewards=rewards
    
    #gets for fields
    def getId(self):
        return self.id
    def getName(self):
        return self.name
    def getEmail(self):
        return self.email
    def getRewards(self):
        return self.rewards
    
    #methods to add or use rewards
    def addReward(self, points):
        #make sure points is an integer
        points=int(points)
        self.rewards += points
    def useRewards(self, points):
        points=int(points)
        self.rewards = self.rewards - points
    

    # class string method
    def __str__(self):
        return self.name + ' ' + self.email

Here is the code for the test.py:

import unittest
from customer import Customer

class TestCustomer(unittest.TestCase):
    #set up an instance of the class
    def setUp(self):
        self.c=Customer(123,'Bret Brown', 'bb@gmail.com', 100)
    #test the get methods
    def test_Id(self):
        self.assertEqual(self.c.getId(), 123)
    def test_name(self):
        self.assertEqual(self.c.getName(),'Bret Brown' )
    # test the rewards
    def test_AddReward(self):
        self.c.addReward(50)
        self.assertEqual(self.c.getRewards(), 150)
    def test_UseReward(self):
        self.c.useRewards(50)
        self.assertEqual(self.c.getRewards(), 50)
    #other tests
    def test_Addreward2(self):
        self.c.addReward(50)
        self.assertGreater(self.c.getRewards(), 100)
    def test_addRewards3(self):
        self.c.addReward(50.5)
        self.assertEqual(self.c.getRewards(), 150)
    # test class string method
    def test_ToString(self):
        self.assertEqual(str(self.c), 'Bret Brown bb@gmail.com')

    

Wednesday, January 8, 2020

toppings, sauce, crust, sides, size, 
customer, price, drinks, employees (not whole human resource),
delivery methods, (office space leasing)
Customer name, address, payment method, phone, email,
order (ovens) (monthly sales) SaleDates,
Inventory, boxes, promotions discounts, nutrition,
employee number, schedule, tips, opening closing times,location, 
products, customer Loyality points, Vendors, equipment 
maintenance and schedules.
wastage--menu--uniforms