summaryrefslogtreecommitdiffstats
path: root/graders/genpizza.py
blob: 82f63a24405aab7a84a4ab0c872207b7f80a4f2d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#!/usr/bin/env python

handout = [
		{'toppings': [('pepperoni', 0)], 'size': 12},
		{
				'toppings': [
					('tomato', 1),
					('sauce', 2),
					],
				'size': 8
				},
		{
				'toppings': [
					('some stuff', 0),
					('other stuff', 1),
					('even more stuff', 1),
					],
				'size': 10
				},
		{
				'toppings': [
					('tomato', 1),
					('sauce', 2),
					('', 0),
					('food', 0),
					],
				'size': 6
			},
	]
invalid = [
		{'toppings': [('pepperoni', 0)], 'size': 10},
		{'toppings': [('biribiri', 0)]},
		{'size': 6},
		{'toppings': [('pepperoni', 0)], 'size': 9},
		{'toppings': [('cheese', 1)], 'size': 12},
	]

def write_pizza(f, pizza):
	if 'toppings' in pizza:
		for topping in pizza['toppings']:
			f.write('%s,%d,' % (topping[0], topping[1]))
	if 'size' in pizza:
		f.write(str(pizza['size']))
	f.write('\n')

def write_pizfile(filename, pizzas):
	f = open(filename, 'w')
	for pizza in pizzas:
		write_pizza(f, pizza)
	f.close()

write_pizfile('handout.piz', handout)
write_pizfile('invalid.piz', invalid)