-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathbin_tests.txt
79 lines (64 loc) · 1.45 KB
/
bin_tests.txt
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
Tests for BinItems and Bins
>>> from warehouse import BinItem, Bin
BinItems
========
BinItems consist of sku and quantity attributes, which are both displayed
when a BinItem is printed.
>>> item = BinItem('12345-27', 2136)
>>> item.sku
'12345-27'
>>> item.quantity
2136
>>> print(item)
SKU 12345-27: 2136
Bins
====
Bin objects are containers that hold BinItems.
>>> a_bin = Bin('A')
>>> a_bin.name
'A'
>>> a_bin.contents
[]
>>> print(a_bin)
Bin A:
>>> a_bin.add(BinItem('12345-45', 500))
>>> print(a_bin)
Bin A:
SKU 12345-45: 500
Items should be inserted in order of sku number
>>> a_bin.add(BinItem('12345-27', 4320))
>>> print(a_bin)
Bin A:
SKU 12345-27: 4320
SKU 12345-45: 500
>>> a_bin.add(BinItem('12345-32', 29))
>>> print(a_bin)
Bin A:
SKU 12345-27: 4320
SKU 12345-32: 29
SKU 12345-45: 500
>>> a_bin.add(BinItem('12345-15', 333))
>>> print(a_bin)
Bin A:
SKU 12345-15: 333
SKU 12345-27: 4320
SKU 12345-32: 29
SKU 12345-45: 500
>>> a_bin.add(BinItem('12345-97', 2343))
>>> print(a_bin)
Bin A:
SKU 12345-15: 333
SKU 12345-27: 4320
SKU 12345-32: 29
SKU 12345-45: 500
SKU 12345-97: 2343
If an item which is already in the bin is added, only the quantity should
change.
>>> a_bin.add(BinItem('12345-32', 100))
>>> print(a_bin)
Bin A:
SKU 12345-15: 333
SKU 12345-27: 4320
SKU 12345-32: 129
SKU 12345-45: 500
SKU 12345-97: 2343