File tree Expand file tree Collapse file tree 2 files changed +26
-0
lines changed Expand file tree Collapse file tree 2 files changed +26
-0
lines changed Original file line number Diff line number Diff line change @@ -15,6 +15,19 @@ def getTail(self):
15
15
tail = property (
16
16
fget = lambda self : self .getTail ())
17
17
18
+ def enqueueHead (self , obj ):
19
+ self ._list .prepend (obj )
20
+
21
+ def dequeueHead (self ):
22
+ assert not self ._list .isEmpty
23
+ return self ._list .extract (self ._list .head .value )
24
+
25
+ def enqueueTail (self , obj ):
26
+ pass
27
+
28
+ def dequeueTail (self ):
29
+ pass
30
+
18
31
def __iter__ (self ):
19
32
pass
20
33
Original file line number Diff line number Diff line change @@ -78,5 +78,18 @@ def test_init(self):
78
78
self .assertEqual (self .d .head , None )
79
79
self .assertEqual (self .d .tail , None )
80
80
81
+ def test_head (self ):
82
+ self .d .enqueueHead (1 )
83
+ self .assertEqual (self .d .head .value , 1 )
84
+ self .assertEqual (self .d .tail .value , 1 )
85
+ self .d .enqueueHead (2 )
86
+ self .d .enqueueHead (3 )
87
+ self .assertEqual (self .d .head .value , 3 )
88
+ self .assertEqual (self .d .tail .value , 1 )
89
+ self .assertEqual (self .d .dequeueHead () , 3 )
90
+ self .assertEqual (self .d .dequeueHead () , 2 )
91
+ self .assertEqual (self .d .dequeueHead () , 1 )
92
+ self .assertRaises (AssertionError , self .d .dequeueHead )
93
+
81
94
if __name__ == "__main__" :
82
95
unittest .main ()
You can’t perform that action at this time.
0 commit comments