hamster 1.0.1.pre.rc.1 → 1.0.1.pre.rc2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (209) hide show
  1. checksums.yaml +4 -4
  2. data/lib/hamster/groupable.rb +12 -0
  3. data/lib/hamster/hash.rb +32 -12
  4. data/lib/hamster/list.rb +68 -22
  5. data/lib/hamster/queue.rb +5 -6
  6. data/lib/hamster/set.rb +50 -14
  7. data/lib/hamster/stack.rb +2 -0
  8. data/lib/hamster/trie.rb +34 -14
  9. data/lib/hamster/tuple.rb +9 -24
  10. data/lib/hamster/vector.rb +29 -7
  11. data/lib/hamster/version.rb +1 -1
  12. data/spec/hamster/core_ext/array_spec.rb +4 -10
  13. data/spec/hamster/core_ext/enumerable_spec.rb +1 -0
  14. data/spec/hamster/experimental/mutable_set/add_qm_spec.rb +14 -22
  15. data/spec/hamster/experimental/mutable_set/add_spec.rb +20 -34
  16. data/spec/hamster/experimental/mutable_set/delete_qm_spec.rb +15 -24
  17. data/spec/hamster/experimental/mutable_set/delete_spec.rb +15 -25
  18. data/spec/hamster/experimental/mutable_stack/pop_spec.rb +21 -27
  19. data/spec/hamster/experimental/mutable_stack/push_spec.rb +11 -31
  20. data/spec/hamster/hash/all_spec.rb +21 -34
  21. data/spec/hamster/hash/any_spec.rb +0 -15
  22. data/spec/hamster/hash/clear_spec.rb +1 -8
  23. data/spec/hamster/hash/construction_spec.rb +3 -11
  24. data/spec/hamster/hash/copying_spec.rb +1 -8
  25. data/spec/hamster/hash/delete_spec.rb +1 -10
  26. data/spec/hamster/hash/each_spec.rb +1 -12
  27. data/spec/hamster/hash/empty_spec.rb +8 -8
  28. data/spec/hamster/hash/eql_spec.rb +30 -22
  29. data/spec/hamster/hash/except_spec.rb +1 -10
  30. data/spec/hamster/hash/fetch_spec.rb +1 -24
  31. data/spec/hamster/hash/filter_spec.rb +1 -16
  32. data/spec/hamster/hash/find_spec.rb +1 -14
  33. data/spec/hamster/hash/has_key_spec.rb +1 -10
  34. data/spec/hamster/hash/hash_spec.rb +1 -16
  35. data/spec/hamster/hash/immutable_spec.rb +0 -3
  36. data/spec/hamster/hash/inspect_spec.rb +1 -9
  37. data/spec/hamster/hash/keys_spec.rb +4 -5
  38. data/spec/hamster/hash/map_spec.rb +1 -16
  39. data/spec/hamster/hash/merge_spec.rb +5 -11
  40. data/spec/hamster/hash/new_spec.rb +21 -0
  41. data/spec/hamster/hash/put_spec.rb +13 -11
  42. data/spec/hamster/hash/reduce_spec.rb +7 -15
  43. data/spec/hamster/hash/remove_spec.rb +1 -16
  44. data/spec/hamster/hash/uniq_spec.rb +1 -8
  45. data/spec/hamster/hash/values_spec.rb +1 -6
  46. data/spec/hamster/immutable/copying_spec.rb +1 -8
  47. data/spec/hamster/immutable/immutable_spec.rb +1 -14
  48. data/spec/hamster/immutable/memoize_spec.rb +0 -1
  49. data/spec/hamster/list/add_spec.rb +1 -6
  50. data/spec/hamster/list/all_spec.rb +1 -28
  51. data/spec/hamster/list/any_spec.rb +1 -20
  52. data/spec/hamster/list/append_spec.rb +1 -11
  53. data/spec/hamster/list/at_spec.rb +1 -13
  54. data/spec/hamster/list/break_spec.rb +1 -13
  55. data/spec/hamster/list/cadr_spec.rb +1 -9
  56. data/spec/hamster/list/chunk_spec.rb +1 -9
  57. data/spec/hamster/list/clear_spec.rb +1 -9
  58. data/spec/hamster/list/combinations_spec.rb +1 -11
  59. data/spec/hamster/list/compact_spec.rb +1 -9
  60. data/spec/hamster/list/cons_spec.rb +1 -10
  61. data/spec/hamster/list/construction_spec.rb +1 -30
  62. data/spec/hamster/list/copying_spec.rb +1 -9
  63. data/spec/hamster/list/count_spec.rb +1 -15
  64. data/spec/hamster/list/cycle_spec.rb +1 -10
  65. data/spec/hamster/list/drop_spec.rb +1 -9
  66. data/spec/hamster/list/drop_while_spec.rb +1 -13
  67. data/spec/hamster/list/each_slice_spec.rb +1 -17
  68. data/spec/hamster/list/each_spec.rb +1 -17
  69. data/spec/hamster/list/each_with_index_spec.rb +1 -10
  70. data/spec/hamster/list/elem_index_spec.rb +1 -13
  71. data/spec/hamster/list/elem_indices_spec.rb +1 -11
  72. data/spec/hamster/list/empty_spec.rb +1 -13
  73. data/spec/hamster/list/eql_spec.rb +52 -62
  74. data/spec/hamster/list/find_index_spec.rb +1 -13
  75. data/spec/hamster/list/find_indices_spec.rb +1 -11
  76. data/spec/hamster/list/find_spec.rb +1 -17
  77. data/spec/hamster/list/flatten_spec.rb +1 -9
  78. data/spec/hamster/list/grep_spec.rb +1 -16
  79. data/spec/hamster/list/group_by_spec.rb +1 -20
  80. data/spec/hamster/list/head_spec.rb +1 -11
  81. data/spec/hamster/list/include_spec.rb +1 -13
  82. data/spec/hamster/list/init_spec.rb +1 -8
  83. data/spec/hamster/list/inits_spec.rb +1 -9
  84. data/spec/hamster/list/inspect_spec.rb +1 -11
  85. data/spec/hamster/list/intersperse_spec.rb +1 -9
  86. data/spec/hamster/list/join_spec.rb +1 -18
  87. data/spec/hamster/list/last_spec.rb +1 -11
  88. data/spec/hamster/list/map_spec.rb +1 -15
  89. data/spec/hamster/list/maximum_spec.rb +1 -20
  90. data/spec/hamster/list/merge_by_spec.rb +1 -19
  91. data/spec/hamster/list/merge_spec.rb +1 -20
  92. data/spec/hamster/list/minimum_spec.rb +1 -20
  93. data/spec/hamster/list/none_spec.rb +1 -18
  94. data/spec/hamster/list/one_spec.rb +1 -16
  95. data/spec/hamster/list/partition_spec.rb +1 -13
  96. data/spec/hamster/list/product_spec.rb +1 -11
  97. data/spec/hamster/list/reduce_spec.rb +0 -1
  98. data/spec/hamster/list/remove_spec.rb +1 -15
  99. data/spec/hamster/list/reverse_spec.rb +1 -11
  100. data/spec/hamster/list/size_spec.rb +1 -13
  101. data/spec/hamster/list/slice_spec.rb +1 -11
  102. data/spec/hamster/list/sorting_spec.rb +1 -14
  103. data/spec/hamster/list/span_spec.rb +1 -12
  104. data/spec/hamster/list/split_at_spec.rb +1 -9
  105. data/spec/hamster/list/sum_spec.rb +1 -11
  106. data/spec/hamster/list/tail_spec.rb +1 -11
  107. data/spec/hamster/list/tails_spec.rb +1 -9
  108. data/spec/hamster/list/take_spec.rb +1 -9
  109. data/spec/hamster/list/take_while_spec.rb +0 -1
  110. data/spec/hamster/list/to_a_spec.rb +1 -13
  111. data/spec/hamster/list/to_ary_spec.rb +0 -1
  112. data/spec/hamster/list/to_list_spec.rb +1 -9
  113. data/spec/hamster/list/to_set_spec.rb +2 -8
  114. data/spec/hamster/list/union_spec.rb +1 -11
  115. data/spec/hamster/list/uniq_spec.rb +1 -11
  116. data/spec/hamster/queue/clear_spec.rb +1 -9
  117. data/spec/hamster/queue/construction_spec.rb +1 -10
  118. data/spec/hamster/queue/dequeue_spec.rb +1 -11
  119. data/spec/hamster/queue/empty_spec.rb +1 -13
  120. data/spec/hamster/queue/enqueue_spec.rb +1 -11
  121. data/spec/hamster/queue/head_spec.rb +1 -11
  122. data/spec/hamster/queue/inspect_spec.rb +1 -9
  123. data/spec/hamster/queue/size_spec.rb +1 -11
  124. data/spec/hamster/queue/to_a_spec.rb +1 -11
  125. data/spec/hamster/queue/to_list_spec.rb +1 -11
  126. data/spec/hamster/set/add_spec.rb +1 -12
  127. data/spec/hamster/set/all_spec.rb +1 -18
  128. data/spec/hamster/set/any_spec.rb +1 -17
  129. data/spec/hamster/set/clear_spec.rb +9 -8
  130. data/spec/hamster/set/compact_spec.rb +1 -9
  131. data/spec/hamster/set/construction_spec.rb +1 -9
  132. data/spec/hamster/set/copying_spec.rb +1 -8
  133. data/spec/hamster/set/count_spec.rb +1 -13
  134. data/spec/hamster/set/delete_spec.rb +1 -10
  135. data/spec/hamster/set/difference_spec.rb +1 -11
  136. data/spec/hamster/set/empty_spec.rb +1 -11
  137. data/spec/hamster/set/exclusion_spec.rb +1 -11
  138. data/spec/hamster/set/filter_spec.rb +10 -17
  139. data/spec/hamster/set/find_spec.rb +1 -14
  140. data/spec/hamster/set/flatten_spec.rb +8 -10
  141. data/spec/hamster/set/group_by_spec.rb +8 -17
  142. data/spec/hamster/set/head_spec.rb +1 -12
  143. data/spec/hamster/set/immutable_spec.rb +1 -4
  144. data/spec/hamster/set/include_spec.rb +1 -9
  145. data/spec/hamster/set/inspect_spec.rb +1 -9
  146. data/spec/hamster/set/intersection_spec.rb +1 -11
  147. data/spec/hamster/set/join_spec.rb +1 -16
  148. data/spec/hamster/set/map_spec.rb +1 -16
  149. data/spec/hamster/set/marshal_spec.rb +1 -6
  150. data/spec/hamster/set/maximum_spec.rb +1 -18
  151. data/spec/hamster/set/minimum_spec.rb +1 -17
  152. data/spec/hamster/set/new_spec.rb +21 -0
  153. data/spec/hamster/set/none_spec.rb +1 -16
  154. data/spec/hamster/set/one_spec.rb +1 -14
  155. data/spec/hamster/set/partition_spec.rb +1 -13
  156. data/spec/hamster/set/product_spec.rb +1 -9
  157. data/spec/hamster/set/reduce_spec.rb +1 -26
  158. data/spec/hamster/set/remove_spec.rb +1 -16
  159. data/spec/hamster/set/size_spec.rb +1 -9
  160. data/spec/hamster/set/sorting_spec.rb +1 -3
  161. data/spec/hamster/set/subset_spec.rb +1 -9
  162. data/spec/hamster/set/sum_spec.rb +1 -9
  163. data/spec/hamster/set/superset_spec.rb +1 -9
  164. data/spec/hamster/set/to_a_spec.rb +1 -11
  165. data/spec/hamster/set/to_list_spec.rb +1 -11
  166. data/spec/hamster/set/to_set_spec.rb +1 -9
  167. data/spec/hamster/set/union_spec.rb +1 -11
  168. data/spec/hamster/set/uniq_spec.rb +1 -7
  169. data/spec/hamster/sorter/immutable_spec.rb +1 -4
  170. data/spec/hamster/stack/clear_spec.rb +1 -9
  171. data/spec/hamster/stack/construction_spec.rb +1 -10
  172. data/spec/hamster/stack/copying_spec.rb +1 -9
  173. data/spec/hamster/stack/empty_spec.rb +1 -9
  174. data/spec/hamster/stack/eql_spec.rb +1 -13
  175. data/spec/hamster/stack/immutable_spec.rb +1 -4
  176. data/spec/hamster/stack/inspect_spec.rb +1 -9
  177. data/spec/hamster/stack/peek_spec.rb +1 -11
  178. data/spec/hamster/stack/pop_spec.rb +1 -11
  179. data/spec/hamster/stack/push_spec.rb +1 -11
  180. data/spec/hamster/stack/size_spec.rb +1 -11
  181. data/spec/hamster/stack/to_a_spec.rb +1 -11
  182. data/spec/hamster/stack/to_list_spec.rb +1 -9
  183. data/spec/hamster/tuple/construction_spec.rb +30 -0
  184. data/spec/hamster/tuple/copying_spec.rb +1 -8
  185. data/spec/hamster/tuple/eql_spec.rb +57 -40
  186. data/spec/hamster/tuple/first_spec.rb +1 -6
  187. data/spec/hamster/tuple/immutable_spec.rb +1 -4
  188. data/spec/hamster/tuple/inspect_spec.rb +1 -6
  189. data/spec/hamster/tuple/last_spec.rb +1 -6
  190. data/spec/hamster/tuple/to_a_spec.rb +1 -9
  191. data/spec/hamster/tuple/to_ary_spec.rb +0 -1
  192. data/spec/hamster/undefined/erase_spec.rb +1 -12
  193. data/spec/hamster/vector/add_spec.rb +8 -0
  194. data/spec/hamster/vector/clear_spec.rb +1 -8
  195. data/spec/hamster/vector/copying_spec.rb +1 -8
  196. data/spec/hamster/vector/each_spec.rb +1 -11
  197. data/spec/hamster/vector/each_with_index_spec.rb +1 -9
  198. data/spec/hamster/vector/empty_spec.rb +7 -9
  199. data/spec/hamster/vector/eql_spec.rb +1 -12
  200. data/spec/hamster/vector/filter_spec.rb +8 -12
  201. data/spec/hamster/vector/first_spec.rb +1 -11
  202. data/spec/hamster/vector/get_spec.rb +1 -23
  203. data/spec/hamster/vector/include_spec.rb +1 -10
  204. data/spec/hamster/vector/map_spec.rb +8 -14
  205. data/spec/hamster/vector/new_spec.rb +48 -0
  206. data/spec/hamster/vector/reduce_spec.rb +1 -26
  207. data/spec/hamster/vector/set_spec.rb +8 -0
  208. data/spec/spec_helper.rb +0 -5
  209. metadata +35 -68
@@ -1,13 +1,9 @@
1
1
  require "spec_helper"
2
-
3
2
  require "hamster/set"
4
3
 
5
4
  describe Hamster::Set do
6
-
7
5
  [:size, :length].each do |method|
8
-
9
6
  describe "##{method}" do
10
-
11
7
  [
12
8
  [[], 0],
13
9
  [["A"], 1],
@@ -17,11 +13,7 @@ describe Hamster::Set do
17
13
  it "returns #{result} for #{values.inspect}" do
18
14
  Hamster.set(*values).send(method).should == result
19
15
  end
20
-
21
16
  end
22
-
23
17
  end
24
-
25
18
  end
26
-
27
- end
19
+ end
@@ -1,5 +1,4 @@
1
1
  require "spec_helper"
2
-
3
2
  require "hamster/set"
4
3
 
5
4
  describe Hamster::Set do
@@ -9,7 +8,6 @@ describe Hamster::Set do
9
8
  ].each do |method, comparator|
10
9
 
11
10
  describe "##{method}" do
12
-
13
11
  [
14
12
  [[], []],
15
13
  [["A"], ["A"]],
@@ -44,4 +42,4 @@ describe Hamster::Set do
44
42
  end
45
43
  end
46
44
  end
47
- end
45
+ end
@@ -1,11 +1,8 @@
1
1
  require "spec_helper"
2
-
3
2
  require "hamster/set"
4
3
 
5
4
  describe Hamster::Set do
6
-
7
5
  describe "#subset?" do
8
-
9
6
  [
10
7
  [[], [], true],
11
8
  [["A"], [], false],
@@ -21,7 +18,6 @@ describe Hamster::Set do
21
18
  ].each do |a, b, expected|
22
19
 
23
20
  describe "for #{a.inspect} and #{b.inspect}" do
24
-
25
21
  before do
26
22
  @result = Hamster.set(*a).subset?(Hamster.set(*b))
27
23
  end
@@ -29,11 +25,7 @@ describe Hamster::Set do
29
25
  it "returns #{expected}" do
30
26
  @result.should == expected
31
27
  end
32
-
33
28
  end
34
-
35
29
  end
36
-
37
30
  end
38
-
39
- end
31
+ end
@@ -1,11 +1,8 @@
1
1
  require "spec_helper"
2
-
3
2
  require "hamster/set"
4
3
 
5
4
  describe Hamster::Set do
6
-
7
5
  describe "#sum" do
8
-
9
6
  [
10
7
  [[], 0],
11
8
  [[2], 2],
@@ -13,7 +10,6 @@ describe Hamster::Set do
13
10
  ].each do |values, expected|
14
11
 
15
12
  describe "on #{values.inspect}" do
16
-
17
13
  before do
18
14
  original = Hamster.set(*values)
19
15
  @result = original.sum
@@ -22,11 +18,7 @@ describe Hamster::Set do
22
18
  it "returns #{expected.inspect}" do
23
19
  @result.should == expected
24
20
  end
25
-
26
21
  end
27
-
28
22
  end
29
-
30
23
  end
31
-
32
- end
24
+ end
@@ -1,11 +1,8 @@
1
1
  require "spec_helper"
2
-
3
2
  require "hamster/set"
4
3
 
5
4
  describe Hamster::Set do
6
-
7
5
  describe "#superset?" do
8
-
9
6
  [
10
7
  [[], [], true],
11
8
  [["A"], [], true],
@@ -21,7 +18,6 @@ describe Hamster::Set do
21
18
  ].each do |a, b, expected|
22
19
 
23
20
  describe "for #{a.inspect} and #{b.inspect}" do
24
-
25
21
  before do
26
22
  @result = Hamster.set(*a).superset?(Hamster.set(*b))
27
23
  end
@@ -29,11 +25,7 @@ describe Hamster::Set do
29
25
  it "returns #{expected}" do
30
26
  @result.should == expected
31
27
  end
32
-
33
28
  end
34
-
35
29
  end
36
-
37
30
  end
38
-
39
- end
31
+ end
@@ -1,13 +1,9 @@
1
1
  require "spec_helper"
2
-
3
2
  require "hamster/set"
4
3
 
5
4
  describe Hamster::Set do
6
-
7
5
  [:to_a, :entries].each do |method|
8
-
9
6
  describe "##{method}" do
10
-
11
7
  [
12
8
  [],
13
9
  ["A"],
@@ -15,7 +11,6 @@ describe Hamster::Set do
15
11
  ].each do |values|
16
12
 
17
13
  describe "on #{values.inspect}" do
18
-
19
14
  before do
20
15
  @set = Hamster.set(*values)
21
16
  @result = @set.send(method)
@@ -30,13 +25,8 @@ describe Hamster::Set do
30
25
  @result << "The End"
31
26
  @result.last.should == "The End"
32
27
  end
33
-
34
28
  end
35
-
36
29
  end
37
-
38
30
  end
39
-
40
31
  end
41
-
42
- end
32
+ end
@@ -1,12 +1,9 @@
1
1
  require "spec_helper"
2
-
3
2
  require "hamster/set"
4
3
  require "hamster/list"
5
4
 
6
5
  describe Hamster::Set do
7
-
8
6
  describe "#to_list" do
9
-
10
7
  [
11
8
  [],
12
9
  ["A"],
@@ -14,7 +11,6 @@ describe Hamster::Set do
14
11
  ].each do |values|
15
12
 
16
13
  describe "on #{values.inspect}" do
17
-
18
14
  before do
19
15
  set = Hamster.set(*values)
20
16
  @list = set.to_list
@@ -25,7 +21,6 @@ describe Hamster::Set do
25
21
  end
26
22
 
27
23
  describe "the returned list" do
28
-
29
24
  it "has the correct length" do
30
25
  @list.size.should == values.size
31
26
  end
@@ -35,13 +30,8 @@ describe Hamster::Set do
35
30
  @list.should include(value)
36
31
  end
37
32
  end
38
-
39
33
  end
40
-
41
34
  end
42
-
43
35
  end
44
-
45
36
  end
46
-
47
- end
37
+ end
@@ -1,11 +1,8 @@
1
1
  require "spec_helper"
2
-
3
2
  require "hamster/set"
4
3
 
5
4
  describe Hamster::Set do
6
-
7
5
  describe "#to_set" do
8
-
9
6
  [
10
7
  [],
11
8
  ["A"],
@@ -13,7 +10,6 @@ describe Hamster::Set do
13
10
  ].each do |values|
14
11
 
15
12
  describe "on #{values.inspect}" do
16
-
17
13
  before do
18
14
  @original = Hamster.set(*values)
19
15
  @result = @original.to_set
@@ -22,11 +18,7 @@ describe Hamster::Set do
22
18
  it "returns self" do
23
19
  @result.should equal(@original)
24
20
  end
25
-
26
21
  end
27
-
28
22
  end
29
-
30
23
  end
31
-
32
- end
24
+ end
@@ -1,13 +1,9 @@
1
1
  require "spec_helper"
2
-
3
2
  require "hamster/set"
4
3
 
5
4
  describe Hamster::Set do
6
-
7
5
  [:union, :|, :+, :merge].each do |method|
8
-
9
6
  describe "##{method}" do
10
-
11
7
  [
12
8
  [[], [], []],
13
9
  [["A"], [], ["A"]],
@@ -16,7 +12,6 @@ describe Hamster::Set do
16
12
  ].each do |a, b, expected|
17
13
 
18
14
  describe "returns #{expected.inspect}" do
19
-
20
15
  before do
21
16
  @a = Hamster.set(*a)
22
17
  @b = Hamster.set(*b)
@@ -33,13 +28,8 @@ describe Hamster::Set do
33
28
  after do
34
29
  @result.should == Hamster.set(*expected)
35
30
  end
36
-
37
31
  end
38
-
39
32
  end
40
-
41
33
  end
42
-
43
34
  end
44
-
45
- end
35
+ end
@@ -1,23 +1,17 @@
1
1
  require "spec_helper"
2
-
3
2
  require "hamster/set"
4
3
 
5
4
  describe Hamster::Set do
6
-
7
5
  before do
8
6
  @set = Hamster.set("A", "B", "C")
9
7
  end
10
8
 
11
9
  [:uniq, :nub, :remove_duplicates].each do |method|
12
-
13
10
  describe "##{method}" do
14
11
 
15
12
  it "returns self" do
16
13
  @set.send(method).should equal(@set)
17
14
  end
18
-
19
15
  end
20
-
21
16
  end
22
-
23
- end
17
+ end
@@ -1,12 +1,9 @@
1
1
  require "spec_helper"
2
-
3
2
  require "hamster/immutable"
4
3
  require "hamster/sorter"
5
4
 
6
5
  describe Hamster::Sorter do
7
-
8
6
  it "includes Immutable" do
9
7
  Hamster::Sorter.should include(Hamster::Immutable)
10
8
  end
11
-
12
- end
9
+ end
@@ -1,11 +1,8 @@
1
1
  require "spec_helper"
2
-
3
2
  require "hamster/stack"
4
3
 
5
4
  describe Hamster::Stack do
6
-
7
5
  describe "#stack" do
8
-
9
6
  [
10
7
  [],
11
8
  ["A"],
@@ -13,7 +10,6 @@ describe Hamster::Stack do
13
10
  ].each do |values|
14
11
 
15
12
  describe "on #{values}" do
16
-
17
13
  before do
18
14
  @original = Hamster.stack(*values)
19
15
  @result = @original.clear
@@ -26,11 +22,7 @@ describe Hamster::Stack do
26
22
  it "returns an empty list" do
27
23
  @result.should equal(Hamster.stack)
28
24
  end
29
-
30
25
  end
31
-
32
26
  end
33
-
34
27
  end
35
-
36
- end
28
+ end
@@ -1,13 +1,9 @@
1
1
  require "spec_helper"
2
-
3
2
  require "hamster/stack"
4
3
 
5
4
  describe Hamster do
6
-
7
5
  describe ".stack" do
8
-
9
6
  describe "with no arguments" do
10
-
11
7
  before do
12
8
  @stack = Hamster.stack
13
9
  end
@@ -19,11 +15,9 @@ describe Hamster do
19
15
  it "returns an empty stack" do
20
16
  @stack.should be_empty
21
17
  end
22
-
23
18
  end
24
19
 
25
20
  describe "with a number of items" do
26
-
27
21
  before do
28
22
  @stack = Hamster.stack("A", "B", "C")
29
23
  end
@@ -35,9 +29,6 @@ describe Hamster do
35
29
  it "is the same as repeatedly using #push" do
36
30
  @stack.should == Hamster.stack.push("A").push("B").push("C")
37
31
  end
38
-
39
32
  end
40
-
41
33
  end
42
-
43
- end
34
+ end
@@ -1,11 +1,8 @@
1
1
  require "spec_helper"
2
-
3
2
  require "hamster/stack"
4
3
 
5
4
  describe Hamster::Stack do
6
-
7
5
  [:dup, :clone].each do |method|
8
-
9
6
  [
10
7
  [],
11
8
  ["A"],
@@ -13,7 +10,6 @@ describe Hamster::Stack do
13
10
  ].each do |values|
14
11
 
15
12
  describe "on #{values.inspect}" do
16
-
17
13
  before do
18
14
  @stack = Hamster.stack(*values)
19
15
  end
@@ -21,11 +17,7 @@ describe Hamster::Stack do
21
17
  it "returns self" do
22
18
  @stack.send(method).should equal(@stack)
23
19
  end
24
-
25
20
  end
26
-
27
21
  end
28
-
29
22
  end
30
-
31
- end
23
+ end
@@ -1,11 +1,8 @@
1
1
  require "spec_helper"
2
-
3
2
  require "hamster/stack"
4
3
 
5
4
  describe Hamster::Stack do
6
-
7
5
  describe "#empty?" do
8
-
9
6
  [
10
7
  [[], true],
11
8
  [["A"], false],
@@ -13,7 +10,6 @@ describe Hamster::Stack do
13
10
  ].each do |values, expected|
14
11
 
15
12
  describe "on #{values.inspect}" do
16
-
17
13
  before do
18
14
  @stack = Hamster.stack(*values)
19
15
  end
@@ -21,11 +17,7 @@ describe Hamster::Stack do
21
17
  it "returns #{expected.inspect}" do
22
18
  @stack.empty?.should == expected
23
19
  end
24
-
25
20
  end
26
-
27
21
  end
28
-
29
22
  end
30
-
31
- end
23
+ end