def test_read_stock_2(self): database.create_tables(self.db) with open("index2.html", encoding='utf-8') as f: main.read_stock(self.db, f) cursor = self.db.cursor() cursor.execute("SELECT * FROM products") result = cursor.fetchall() self.assertEqual(len(result), 6) self.assertSequenceEqual((4, "Zipped Jacket", 95, 56.73, "$"), result[4]) self.assertSequenceEqual((5, "Silk Summer Top", 63, 36.56,'£'), result[5])
def test_read_stock_1(self): database.create_tables(self.db) with open("index.html", encoding='utf-8') as f: main.read_stock(self.db, f) cursor = self.db.cursor() cursor.execute("SELECT * FROM products") result = cursor.fetchall() self.assertEqual(len(result), 20) self.assertSequenceEqual((2, "Yellow Wool Jumper", 81, 175.31, "$"), result[2]) self.assertSequenceEqual((6, "Dark Denim Top", 78, 90.31, "$"), result[6])
def test_report_1(self): database.create_tables(self.db) my_relations = """product,location 0,0 1,1 2,0""" my_locations = """id,number,street,city,state 0,6,"John Rd",Bourke,NSW 1,3,"Macquarie St",Melbourne,VIC""" main.read_relations(self.db, StringIO(my_relations)) main.read_locations(self.db, StringIO(my_locations)) with open("index3.html") as f: main.read_stock(self.db, f) with StringIO() as f: main.report(self.db, f) output = f.getvalue() # print(output) reader = csv.DictReader(StringIO(output)) records = [r for r in reader] self.assertEqual(3, len(records)) self.assertDictEqual( { 'description': 'Zipped Jacket', 'price': '56.73', 'currency': '£', 'stock': '95', 'location': "3, Macquarie St, Melbourne, VIC" }, dict(records[0])) self.assertDictEqual( { 'description': 'Soft Winter Jacket', 'price': '111.23', 'currency': '$', 'stock': '38', 'location': "6, John Rd, Bourke, NSW" }, dict(records[1])) self.assertDictEqual( { 'description': 'Navy Sports Jacket', 'price': '149.05', 'currency': '$', 'stock': '25', 'location': "6, John Rd, Bourke, NSW" }, dict(records[2]))