ruby-nuggets 0.9.9 → 1.0.0

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 (244) hide show
  1. checksums.yaml +4 -4
  2. metadata +20 -324
  3. data/COPYING +0 -663
  4. data/ChangeLog +0 -7
  5. data/README +0 -62
  6. data/Rakefile +0 -47
  7. data/lib/nuggets.rb +0 -73
  8. data/lib/nuggets/all.rb +0 -36
  9. data/lib/nuggets/all_mixins.rb +0 -34
  10. data/lib/nuggets/ansicolor2css.rb +0 -125
  11. data/lib/nuggets/argv/option.rb +0 -3
  12. data/lib/nuggets/argv/option_mixin.rb +0 -85
  13. data/lib/nuggets/array/boost.rb +0 -5
  14. data/lib/nuggets/array/boost_mixin.rb +0 -78
  15. data/lib/nuggets/array/combination.rb +0 -63
  16. data/lib/nuggets/array/correlation.rb +0 -5
  17. data/lib/nuggets/array/correlation_mixin.rb +0 -64
  18. data/lib/nuggets/array/flatten_once.rb +0 -57
  19. data/lib/nuggets/array/flush.rb +0 -5
  20. data/lib/nuggets/array/flush_mixin.rb +0 -47
  21. data/lib/nuggets/array/format.rb +0 -66
  22. data/lib/nuggets/array/hashify.rb +0 -5
  23. data/lib/nuggets/array/hashify_mixin.rb +0 -48
  24. data/lib/nuggets/array/histogram.rb +0 -5
  25. data/lib/nuggets/array/histogram_mixin.rb +0 -170
  26. data/lib/nuggets/array/in_order.rb +0 -51
  27. data/lib/nuggets/array/limit.rb +0 -5
  28. data/lib/nuggets/array/limit_mixin.rb +0 -57
  29. data/lib/nuggets/array/mean.rb +0 -5
  30. data/lib/nuggets/array/mean_mixin.rb +0 -203
  31. data/lib/nuggets/array/median.rb +0 -5
  32. data/lib/nuggets/array/median_mixin.rb +0 -74
  33. data/lib/nuggets/array/mode.rb +0 -5
  34. data/lib/nuggets/array/mode_mixin.rb +0 -70
  35. data/lib/nuggets/array/monotone.rb +0 -84
  36. data/lib/nuggets/array/only.rb +0 -42
  37. data/lib/nuggets/array/rand.rb +0 -45
  38. data/lib/nuggets/array/regression.rb +0 -5
  39. data/lib/nuggets/array/regression_mixin.rb +0 -150
  40. data/lib/nuggets/array/runiq.rb +0 -5
  41. data/lib/nuggets/array/runiq_mixin.rb +0 -53
  42. data/lib/nuggets/array/shuffle.rb +0 -133
  43. data/lib/nuggets/array/standard_deviation.rb +0 -5
  44. data/lib/nuggets/array/standard_deviation_mixin.rb +0 -51
  45. data/lib/nuggets/array/to_hash.rb +0 -65
  46. data/lib/nuggets/array/variance.rb +0 -5
  47. data/lib/nuggets/array/variance_mixin.rb +0 -82
  48. data/lib/nuggets/cli.rb +0 -8
  49. data/lib/nuggets/content_type.rb +0 -98
  50. data/lib/nuggets/dotted_decimal.rb +0 -60
  51. data/lib/nuggets/enumerable/agrep.rb +0 -80
  52. data/lib/nuggets/enumerable/all_any_extended.rb +0 -67
  53. data/lib/nuggets/enumerable/minmax.rb +0 -103
  54. data/lib/nuggets/env/set.rb +0 -3
  55. data/lib/nuggets/env/set_mixin.rb +0 -68
  56. data/lib/nuggets/env/user_encoding.rb +0 -3
  57. data/lib/nuggets/env/user_encoding_mixin.rb +0 -55
  58. data/lib/nuggets/env/user_home.rb +0 -3
  59. data/lib/nuggets/env/user_home_mixin.rb +0 -57
  60. data/lib/nuggets/file/ext.rb +0 -5
  61. data/lib/nuggets/file/ext_mixin.rb +0 -88
  62. data/lib/nuggets/file/replace.rb +0 -5
  63. data/lib/nuggets/file/replace_mixin.rb +0 -56
  64. data/lib/nuggets/file/sub.rb +0 -5
  65. data/lib/nuggets/file/sub_mixin.rb +0 -96
  66. data/lib/nuggets/file/which.rb +0 -5
  67. data/lib/nuggets/file/which_mixin.rb +0 -73
  68. data/lib/nuggets/hash/at.rb +0 -69
  69. data/lib/nuggets/hash/deep_fetch.rb +0 -5
  70. data/lib/nuggets/hash/deep_fetch_mixin.rb +0 -75
  71. data/lib/nuggets/hash/deep_merge.rb +0 -5
  72. data/lib/nuggets/hash/deep_merge_mixin.rb +0 -54
  73. data/lib/nuggets/hash/idmap.rb +0 -5
  74. data/lib/nuggets/hash/idmap_mixin.rb +0 -42
  75. data/lib/nuggets/hash/in_order.rb +0 -44
  76. data/lib/nuggets/hash/insert.rb +0 -54
  77. data/lib/nuggets/hash/nest.rb +0 -5
  78. data/lib/nuggets/hash/nest_mixin.rb +0 -79
  79. data/lib/nuggets/hash/only.rb +0 -53
  80. data/lib/nuggets/hash/seen.rb +0 -5
  81. data/lib/nuggets/hash/seen_mixin.rb +0 -59
  82. data/lib/nuggets/hash/unroll.rb +0 -5
  83. data/lib/nuggets/hash/unroll_mixin.rb +0 -89
  84. data/lib/nuggets/hash/zip.rb +0 -5
  85. data/lib/nuggets/hash/zip_mixin.rb +0 -160
  86. data/lib/nuggets/i18n.rb +0 -156
  87. data/lib/nuggets/integer/factorial.rb +0 -57
  88. data/lib/nuggets/integer/length.rb +0 -5
  89. data/lib/nuggets/integer/length_mixin.rb +0 -50
  90. data/lib/nuggets/integer/map.rb +0 -5
  91. data/lib/nuggets/integer/map_mixin.rb +0 -43
  92. data/lib/nuggets/integer/to_binary_s.rb +0 -39
  93. data/lib/nuggets/io/agrep.rb +0 -44
  94. data/lib/nuggets/io/interact.rb +0 -5
  95. data/lib/nuggets/io/interact_mixin.rb +0 -160
  96. data/lib/nuggets/io/modes.rb +0 -122
  97. data/lib/nuggets/io/null.rb +0 -5
  98. data/lib/nuggets/io/null_mixin.rb +0 -41
  99. data/lib/nuggets/io/redirect.rb +0 -5
  100. data/lib/nuggets/io/redirect_mixin.rb +0 -51
  101. data/lib/nuggets/lazy_attr.rb +0 -45
  102. data/lib/nuggets/log_parser.rb +0 -71
  103. data/lib/nuggets/log_parser/apache.rb +0 -102
  104. data/lib/nuggets/log_parser/rails.rb +0 -220
  105. data/lib/nuggets/lsi.rb +0 -8
  106. data/lib/nuggets/midos.rb +0 -8
  107. data/lib/nuggets/mysql.rb +0 -8
  108. data/lib/nuggets/net/success.rb +0 -60
  109. data/lib/nuggets/numeric/between.rb +0 -2
  110. data/lib/nuggets/numeric/duration.rb +0 -101
  111. data/lib/nuggets/numeric/limit.rb +0 -63
  112. data/lib/nuggets/numeric/signum.rb +0 -53
  113. data/lib/nuggets/numeric/to_multiple.rb +0 -62
  114. data/lib/nuggets/object/blank.rb +0 -20
  115. data/lib/nuggets/object/blank_mixin.rb +0 -100
  116. data/lib/nuggets/object/boolean.rb +0 -5
  117. data/lib/nuggets/object/boolean_mixin.rb +0 -62
  118. data/lib/nuggets/object/eigenclass.rb +0 -2
  119. data/lib/nuggets/object/ghost_class.rb +0 -2
  120. data/lib/nuggets/object/metaclass.rb +0 -2
  121. data/lib/nuggets/object/msend.rb +0 -5
  122. data/lib/nuggets/object/msend_mixin.rb +0 -44
  123. data/lib/nuggets/object/silence.rb +0 -5
  124. data/lib/nuggets/object/silence_mixin.rb +0 -45
  125. data/lib/nuggets/object/singleton_class.rb +0 -5
  126. data/lib/nuggets/object/singleton_class_mixin.rb +0 -96
  127. data/lib/nuggets/object/uniclass.rb +0 -2
  128. data/lib/nuggets/object/virtual_class.rb +0 -2
  129. data/lib/nuggets/pluggable.rb +0 -92
  130. data/lib/nuggets/proc/bind.rb +0 -5
  131. data/lib/nuggets/proc/bind_mixin.rb +0 -52
  132. data/lib/nuggets/range/quantile.rb +0 -5
  133. data/lib/nuggets/range/quantile_mixin.rb +0 -43
  134. data/lib/nuggets/rdf/compression.rb +0 -6
  135. data/lib/nuggets/rdf/prefix.rb +0 -6
  136. data/lib/nuggets/rdf/turtle.rb +0 -8
  137. data/lib/nuggets/rdf/turtle/reader.rb +0 -6
  138. data/lib/nuggets/rdf/uri.rb +0 -6
  139. data/lib/nuggets/ruby.rb +0 -236
  140. data/lib/nuggets/statistics.rb +0 -12
  141. data/lib/nuggets/statistics_mixins.rb +0 -12
  142. data/lib/nuggets/string/camelscore.rb +0 -5
  143. data/lib/nuggets/string/camelscore_mixin.rb +0 -117
  144. data/lib/nuggets/string/capitalize_first.rb +0 -47
  145. data/lib/nuggets/string/case.rb +0 -82
  146. data/lib/nuggets/string/evaluate.rb +0 -5
  147. data/lib/nuggets/string/evaluate_mixin.rb +0 -48
  148. data/lib/nuggets/string/msub.rb +0 -85
  149. data/lib/nuggets/string/nsub.rb +0 -66
  150. data/lib/nuggets/string/sub_with_md.rb +0 -112
  151. data/lib/nuggets/string/wc.rb +0 -5
  152. data/lib/nuggets/string/wc_mixin.rb +0 -96
  153. data/lib/nuggets/string/word_wrap.rb +0 -77
  154. data/lib/nuggets/string/xor.rb +0 -5
  155. data/lib/nuggets/string/xor_mixin.rb +0 -60
  156. data/lib/nuggets/tempfile/open.rb +0 -58
  157. data/lib/nuggets/uri/content_type.rb +0 -5
  158. data/lib/nuggets/uri/content_type_mixin.rb +0 -48
  159. data/lib/nuggets/uri/exist.rb +0 -5
  160. data/lib/nuggets/uri/exist_mixin.rb +0 -57
  161. data/lib/nuggets/uri/redirect.rb +0 -5
  162. data/lib/nuggets/uri/redirect_mixin.rb +0 -102
  163. data/lib/nuggets/util/ansicolor2css.rb +0 -4
  164. data/lib/nuggets/util/cli.rb +0 -4
  165. data/lib/nuggets/util/content_type.rb +0 -4
  166. data/lib/nuggets/util/dotted_decimal.rb +0 -3
  167. data/lib/nuggets/util/i18n.rb +0 -4
  168. data/lib/nuggets/util/lazy_attr.rb +0 -4
  169. data/lib/nuggets/util/log_parser.rb +0 -4
  170. data/lib/nuggets/util/log_parser/apache.rb +0 -4
  171. data/lib/nuggets/util/log_parser/rails.rb +0 -4
  172. data/lib/nuggets/util/midos.rb +0 -4
  173. data/lib/nuggets/util/mysql.rb +0 -4
  174. data/lib/nuggets/util/pluggable.rb +0 -4
  175. data/lib/nuggets/util/ruby.rb +0 -4
  176. data/lib/nuggets/version.rb +0 -27
  177. data/spec/nuggets/array/boost_spec.rb +0 -50
  178. data/spec/nuggets/array/combination_spec.rb +0 -25
  179. data/spec/nuggets/array/correlation_spec.rb +0 -81
  180. data/spec/nuggets/array/flatten_once_spec.rb +0 -16
  181. data/spec/nuggets/array/flush_spec.rb +0 -43
  182. data/spec/nuggets/array/format_spec.rb +0 -52
  183. data/spec/nuggets/array/hashify_spec.rb +0 -41
  184. data/spec/nuggets/array/histogram_spec.rb +0 -87
  185. data/spec/nuggets/array/in_order_spec.rb +0 -13
  186. data/spec/nuggets/array/limit_spec.rb +0 -62
  187. data/spec/nuggets/array/mean_spec.rb +0 -203
  188. data/spec/nuggets/array/median_spec.rb +0 -77
  189. data/spec/nuggets/array/mode_spec.rb +0 -57
  190. data/spec/nuggets/array/monotone_spec.rb +0 -30
  191. data/spec/nuggets/array/only_spec.rb +0 -26
  192. data/spec/nuggets/array/regression_spec.rb +0 -54
  193. data/spec/nuggets/array/runiq_spec.rb +0 -25
  194. data/spec/nuggets/array/standard_deviation_spec.rb +0 -33
  195. data/spec/nuggets/array/to_hash_spec.rb +0 -28
  196. data/spec/nuggets/array/variance_spec.rb +0 -106
  197. data/spec/nuggets/dotted_decimal_spec.rb +0 -27
  198. data/spec/nuggets/enumerable/all_any_extended_spec.rb +0 -31
  199. data/spec/nuggets/enumerable/minmax_spec.rb +0 -21
  200. data/spec/nuggets/env/set_spec.rb +0 -29
  201. data/spec/nuggets/env/user_encoding_spec.rb +0 -38
  202. data/spec/nuggets/env/user_home_spec.rb +0 -42
  203. data/spec/nuggets/file/ext_spec.rb +0 -38
  204. data/spec/nuggets/file/replace_spec.rb +0 -95
  205. data/spec/nuggets/file/sub_spec.rb +0 -149
  206. data/spec/nuggets/file/which_spec.rb +0 -22
  207. data/spec/nuggets/hash/at_spec.rb +0 -19
  208. data/spec/nuggets/hash/deep_fetch_spec.rb +0 -159
  209. data/spec/nuggets/hash/deep_merge_spec.rb +0 -78
  210. data/spec/nuggets/hash/in_order_spec.rb +0 -12
  211. data/spec/nuggets/hash/insert_spec.rb +0 -13
  212. data/spec/nuggets/hash/nest_spec.rb +0 -102
  213. data/spec/nuggets/hash/only_spec.rb +0 -29
  214. data/spec/nuggets/hash/seen_spec.rb +0 -36
  215. data/spec/nuggets/hash/unroll_spec.rb +0 -68
  216. data/spec/nuggets/i18n_spec.rb +0 -13
  217. data/spec/nuggets/integer/factorial_spec.rb +0 -10
  218. data/spec/nuggets/integer/length_spec.rb +0 -18
  219. data/spec/nuggets/integer/map_spec.rb +0 -19
  220. data/spec/nuggets/integer/to_binary_s_spec.rb +0 -19
  221. data/spec/nuggets/numeric/duration_spec.rb +0 -25
  222. data/spec/nuggets/numeric/limit_spec.rb +0 -16
  223. data/spec/nuggets/numeric/signum_spec.rb +0 -16
  224. data/spec/nuggets/numeric/to_multiple_spec.rb +0 -16
  225. data/spec/nuggets/object/blank_spec.rb +0 -34
  226. data/spec/nuggets/object/boolean_spec.rb +0 -23
  227. data/spec/nuggets/object/msend_spec.rb +0 -25
  228. data/spec/nuggets/object/silence_spec.rb +0 -36
  229. data/spec/nuggets/object/singleton_class_spec.rb +0 -51
  230. data/spec/nuggets/proc/bind_spec.rb +0 -28
  231. data/spec/nuggets/range/quantile_spec.rb +0 -33
  232. data/spec/nuggets/string/camelscore_spec.rb +0 -114
  233. data/spec/nuggets/string/capitalize_first_spec.rb +0 -13
  234. data/spec/nuggets/string/case_spec.rb +0 -31
  235. data/spec/nuggets/string/evaluate_spec.rb +0 -24
  236. data/spec/nuggets/string/msub_spec.rb +0 -20
  237. data/spec/nuggets/string/nsub_spec.rb +0 -13
  238. data/spec/nuggets/string/sub_with_md_spec.rb +0 -25
  239. data/spec/nuggets/string/wc_spec.rb +0 -73
  240. data/spec/nuggets/string/word_wrap_spec.rb +0 -81
  241. data/spec/nuggets/string/xor_spec.rb +0 -57
  242. data/spec/nuggets/uri/content_type_spec.rb +0 -42
  243. data/spec/nuggets/uri/exist_spec.rb +0 -49
  244. data/spec/spec_helper.rb +0 -36
@@ -1,24 +0,0 @@
1
- require 'nuggets/string/evaluate'
2
-
3
- describe_extended String, Nuggets::String::EvaluateMixin do
4
-
5
- describe do
6
-
7
- %w[bl#{a}blub bl#{a}#{b}lub].each { |str|
8
- { 'blablub' => %w[a b], 'blubblub' => %w[ub b] }.each { |res, (a, b)|
9
- example { str.evaluate(binding).should == res }
10
- }
11
-
12
- example do
13
- lambda { str.evaluate(binding) }.should raise_error(NameError, /`a'/)
14
- end
15
- }
16
-
17
- end
18
-
19
- [ 'a"b"c', 'a\"b\"c', 'a\\"b\\"c', 'a\\\"b\\\"c',
20
- "a'b'c", 'a%q{b}c', 'a{b}c', 'a{bc', 'ab}c' ].each { |str|
21
- example { str.evaluate(binding).should == str }
22
- }
23
-
24
- end
@@ -1,20 +0,0 @@
1
- require 'nuggets/string/msub'
2
-
3
- describe String, 'msub' do
4
-
5
- let(:s) { 'Foo, Bar - Baz' }
6
-
7
- example { s.gsub(/a/, 'o').gsub(/o/, 'a').should == 'Faa, Bar - Baz' }
8
- example { s.msub('a' => 'o', 'o' => 'a').should == 'Faa, Bor - Boz' }
9
-
10
- example { s.msub!('a' => 'o', 'o' => 'a'); s.should == 'Faa, Bor - Boz' }
11
-
12
- example { s.msub(/[A-Z]/ => '#{__match__.downcase}', __binding__: binding).should == 'foo, bar - baz' }
13
- example { s.msub(/[A-Z]/ => lambda { |match| match.downcase }).should == 'foo, bar - baz' }
14
-
15
- t = '!!!'
16
-
17
- example { lambda { s.msub('r' => '???', 'z' => '#{t}') }.should raise_error(NameError) }
18
- example { s.msub('r' => '???', 'z' => '#{t}', __binding__: binding).should == 'Foo, Ba??? - Ba!!!' }
19
-
20
- end
@@ -1,13 +0,0 @@
1
- require 'nuggets/string/nsub'
2
-
3
- describe String, 'nsub' do
4
-
5
- let(:s) { 'a b c d e f g h i' }
6
-
7
- example { s.nsub(' ', '', 6).should == 'abcdefg h i' }
8
-
9
- example { s.nsub(' ', 6) { '' }.should == 'abcdefg h i' }
10
-
11
- example { s.nsub!(' ', '', 6); s.should == 'abcdefg h i' }
12
-
13
- end
@@ -1,25 +0,0 @@
1
- require 'nuggets/string/sub_with_md'
2
-
3
- describe String, 'sub_with_md' do
4
-
5
- let(:s) { 'Foo, Bar - Baz' }
6
-
7
- example {
8
- s.gsub(/\w(\w+)(\W*)/) { |m|
9
- "#{$1.gsub(/[ao]/, 'X')}#{$2}"
10
- }.should == 'XXXrXz'
11
- }
12
-
13
- example {
14
- s.gsub_with_md(/\w(\w+)(\W*)/) { |md|
15
- "#{md[1].gsub(/[ao]/, 'X')}#{md[2]}"
16
- }.should == 'XX, Xr - Xz'
17
- }
18
-
19
- example {
20
- s.gsub_with_md(/\w(\w+)(\W*)/) { |md|
21
- "#{md[1].gsub_with_md(/[ao]/) { |md2| md2[0].upcase }}#{md[2]}"
22
- }.should == 'OO, Ar - Az'
23
- }
24
-
25
- end
@@ -1,73 +0,0 @@
1
- # encoding: utf-8
2
-
3
- require 'nuggets/string/wc'
4
-
5
- describe_extended String, Nuggets::String::WcMixin do
6
-
7
- describe 'empty' do
8
-
9
- before do
10
- @str = ''
11
- end
12
-
13
- example { @str.wc.should == [0, 0, 0] }
14
-
15
- example { @str.line_count.should == 0 }
16
-
17
- example { @str.word_count.should == 0 }
18
-
19
- example { @str.byte_count.should == 0 }
20
-
21
- example { @str.char_count.should == 0 }
22
-
23
- end
24
-
25
- describe 'non-empty' do
26
-
27
- before do
28
- @str = <<-STR
29
- The fox went out on a chilly night / Prayed for the moon to give him light / For he had many a mile to go that night / Before he reached the town o
30
- He ran til he came to a great big bin / Where the ducks and the geese were kept therein / Said, a couple of you are going to grease my chin / Before I leave this town o
31
- He grabbed the grey goose by the neck / Throwed a duck across his back / He didn't mind the quack, quack, quack / And the legs all dangling down o
32
- Then old mother Flipper-flopper jumped out of bed / Out of the window she cocked her head / Crying, John, John the grey goose is gone / and the fox is on the town o
33
- Then John he went to the top of the hill / Blew his horn both loud and shrill / The fox, he said, I better flee with my kill / Or they'll soon be on my trail o
34
- He ran till he came to his cozy den / There were the little ones, eight, nine, ten / Saying, Daddy, daddy, Better go back again / For it must be a mighty fine town o
35
- Then the fox and his wife, without any strife / Cut up the goose with a carving knife / They never had such a supper in their life / And the little ones chewed on the bones o
36
- STR
37
- end
38
-
39
- example { @str.wc.should == [7, 252, 1130] }
40
-
41
- example { @str.line_count.should == 7 }
42
-
43
- example { @str.word_count.should == 252 }
44
-
45
- example { @str.byte_count.should == 1130 }
46
-
47
- example { @str.char_count.should == 1130 }
48
-
49
- end
50
-
51
- describe 'special' do
52
-
53
- before do
54
- @str = <<-STR
55
- TECHNICIÄNS ÖF SPÅCE SHIP EÅRTH
56
- THIS IS YÖÜR CÄPTÅIN SPEÄKING
57
- YÖÜR ØÅPTÅIN IS DEA̋D
58
- STR
59
- end
60
-
61
- example { @str.wc.should == [3, 14, 99] }
62
-
63
- example { @str.line_count.should == 3 }
64
-
65
- example { @str.word_count.should == 14 }
66
-
67
- example { @str.byte_count.should == 99 }
68
-
69
- example { @str.char_count.should == 84 }
70
-
71
- end
72
-
73
- end
@@ -1,81 +0,0 @@
1
- require 'nuggets/string/word_wrap'
2
-
3
- describe String, 'word_wrap' do
4
-
5
- let(:s) { <<-EOT }
6
- Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Nullam nulla arcu,
7
- ullamcorper non, vulputate eget, elementum quis, sapien. Quisque consequat
8
- porta enim. Phasellus porta libero et turpis. Ut felis.
9
-
10
- Phasellus eget est a enim rutrum accumsan. Integer nec purus. Maecenas
11
- facilisis urna sed arcu. Suspendisse potenti.
12
-
13
-
14
- Vestibulum lacus metus, faucibus sit amet, mattis non, mollis sed, pede. Aenean
15
- vitae sem nec sem euismod sollicitudin. Cras rhoncus.
16
-
17
-
18
-
19
- Phasellus condimentum, ante a cursus dictum, lectus ipsum convallis magna, sed
20
- tincidunt massa eros vitae ante. Suspendisse nec sem.
21
- In hac habitasse platea dictumst. Fusce purus leo, ullamcorper sit amet, luctus
22
- in, mollis mollis, enim. In adipiscing erat.
23
- EOT
24
-
25
- s60 = <<-EOT
26
- Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
27
- Nullam nulla arcu,
28
- ullamcorper non, vulputate eget, elementum quis, sapien.
29
- Quisque consequat
30
- porta enim. Phasellus porta libero et turpis. Ut felis.
31
-
32
- Phasellus eget est a enim rutrum accumsan. Integer nec
33
- purus. Maecenas
34
- facilisis urna sed arcu. Suspendisse potenti.
35
-
36
-
37
- Vestibulum lacus metus, faucibus sit amet, mattis non,
38
- mollis sed, pede. Aenean
39
- vitae sem nec sem euismod sollicitudin. Cras rhoncus.
40
-
41
-
42
-
43
- Phasellus condimentum, ante a cursus dictum, lectus ipsum
44
- convallis magna, sed
45
- tincidunt massa eros vitae ante. Suspendisse nec sem.
46
- In hac habitasse platea dictumst. Fusce purus leo,
47
- ullamcorper sit amet, luctus
48
- in, mollis mollis, enim. In adipiscing erat.
49
- EOT
50
-
51
- example {
52
- s.word_wrap(60).should == s60
53
- }
54
-
55
- example {
56
- s.word_wrap!(60); s.should == s60
57
- }
58
-
59
- example {
60
- s.word_wrap(79).should == <<-EOT
61
- Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Nullam nulla arcu,
62
- ullamcorper non, vulputate eget, elementum quis, sapien. Quisque consequat
63
- porta enim. Phasellus porta libero et turpis. Ut felis.
64
-
65
- Phasellus eget est a enim rutrum accumsan. Integer nec purus. Maecenas
66
- facilisis urna sed arcu. Suspendisse potenti.
67
-
68
-
69
- Vestibulum lacus metus, faucibus sit amet, mattis non, mollis sed, pede. Aenean
70
- vitae sem nec sem euismod sollicitudin. Cras rhoncus.
71
-
72
-
73
-
74
- Phasellus condimentum, ante a cursus dictum, lectus ipsum convallis magna, sed
75
- tincidunt massa eros vitae ante. Suspendisse nec sem.
76
- In hac habitasse platea dictumst. Fusce purus leo, ullamcorper sit amet, luctus
77
- in, mollis mollis, enim. In adipiscing erat.
78
- EOT
79
- }
80
-
81
- end
@@ -1,57 +0,0 @@
1
- require 'nuggets/string/xor'
2
-
3
- describe_extended String, Nuggets::String::XorMixin do
4
-
5
- describe 'same length' do
6
-
7
- before do
8
- @str1 = 'foobar'
9
- @str2 = 'secret'
10
-
11
- @res = "\025\n\f\020\004\006"
12
- end
13
-
14
- example { @str1.xor(@str2).should == @res }
15
-
16
- example { @str2.xor(@str1).should == @res }
17
-
18
- example { (@str1 ^ @str2).should == @res }
19
-
20
- example { (@str2 ^ @str1).should == @res }
21
-
22
- end
23
-
24
- describe 'different length' do
25
-
26
- before do
27
- @str1 = 'baz'
28
- @str2 = 'secret'
29
- @str3 = 'foobarbaz'
30
-
31
- @res1 = "sec\020\004\016"
32
- @res2 = "foo\021\004\021\020\004\016"
33
- end
34
-
35
- example { @str1.xor(@str2).should == @res1 }
36
-
37
- example { @str2.xor(@str1).should == @res1 }
38
-
39
- example { (@str1 ^ @str2).should == @res1 }
40
-
41
- example { (@str2 ^ @str1).should == @res1 }
42
-
43
- example { lambda { @str1.xor(@str2, true) }.should raise_error(ArgumentError, 'must be of same length') }
44
-
45
- example { @str2.xor(@str3).should == @res2 }
46
-
47
- example { @str3.xor(@str2).should == @res2 }
48
-
49
- example { (@str2 ^ @str3).should == @res2 }
50
-
51
- example { (@str3 ^ @str2).should == @res2 }
52
-
53
- example { lambda { @str2.xor(@str3, true) }.should raise_error(ArgumentError, 'must be of same length') }
54
-
55
- end
56
-
57
- end
@@ -1,42 +0,0 @@
1
- require 'nuggets/uri/content_type'
2
-
3
- describe_extended URI, Nuggets::URI::ContentTypeMixin, true do
4
-
5
- let(:cache) { Nuggets::URI::RedirectMixin::URI_REDIRECT_HTTP_CACHE }
6
-
7
- {
8
- 'http://www.google.de' => 'text/html',
9
- 'http://example.de/misc/' => 'text/html',
10
- 'http://example.de/misc/ww.png' => 'image/png',
11
- 'http://example.de/misc/suicide_is_painless.mid' => 'audio/midi',
12
- 'http://example.de/misc/fugmann/wille_-_fugmann-slides.tar.gz' => 'application/x-gzip',
13
- 'http://example.de/misc/i_hate_ms.pdf' => 'application/pdf',
14
- 'http://example.de/bla' => false,
15
- 'http://blawinter.de' => nil,
16
- 'htp://www.google.de' => nil,
17
- 'ftp://example.org' => nil,
18
- 'www.google.de' => nil
19
- }.each { |u, t|
20
- example {
21
- begin
22
- req, res = double(Net::HTTP), double(Net::HTTPResponse)
23
-
24
- req.stub(:use_ssl=)
25
- req.stub(:use_ssl?)
26
-
27
- res.stub(:success?).and_return(t)
28
- res.stub(:content_type).and_return(t)
29
-
30
- req.stub(:head).and_return(res)
31
-
32
- cache.update([(uri = URI(u)).host, uri.port] => req)
33
-
34
- URI.content_type(u).should == t
35
- cache.size.should == 1
36
- ensure
37
- cache.clear
38
- end
39
- }
40
- }
41
-
42
- end
@@ -1,49 +0,0 @@
1
- require 'nuggets/uri/exist'
2
-
3
- describe_extended URI, Nuggets::URI::ExistMixin, true do
4
-
5
- let(:cache) { Nuggets::URI::RedirectMixin::URI_REDIRECT_HTTP_CACHE }
6
-
7
- %w[
8
- http://www.google.de
9
- http://example.de
10
- http://example.de/bla
11
- http://example.de/index.html
12
- http://example.de/index.htm
13
- http://xuugle.de
14
- ].each { |u|
15
- [true, false, nil].each { |s|
16
- example {
17
- begin
18
- req, res = double(Net::HTTP), double(Net::HTTPResponse)
19
-
20
- req.stub(:use_ssl=)
21
- req.stub(:use_ssl?)
22
-
23
- res.stub(:success?).and_return(s)
24
-
25
- req.stub(:head).and_return(res)
26
-
27
- cache.update([(uri = URI(u)).host, uri.port] => req)
28
-
29
- URI.exist?(u).should == s
30
- cache.size.should == 1
31
- ensure
32
- cache.clear
33
- end
34
- }
35
- }
36
- }
37
-
38
- %w[
39
- htp://www.google.de
40
- ftp://example.org
41
- www.google.de
42
- ].each { |u|
43
- example {
44
- URI.exist?(u).should be_nil
45
- cache.should be_empty
46
- }
47
- }
48
-
49
- end
@@ -1,36 +0,0 @@
1
- $:.unshift('lib') unless $:.first == 'lib'
2
-
3
- Float::NAN = 0 / 0.0 unless Float.const_defined?(:NAN)
4
- Float::INFINITY = 1 / 0.0 unless Float.const_defined?(:INFINITY)
5
-
6
- RSpec.configure { |config|
7
- %w[expect mock].each { |what|
8
- config.send("#{what}_with", :rspec) { |c| c.syntax = [:should, :expect] }
9
- }
10
-
11
- config.include(Module.new {
12
- def equal_float(value, precision = 1.0e-14)
13
- be_within(precision).of(value)
14
- end
15
-
16
- def tempfile(txt = @txt)
17
- t = Tempfile.open("nuggets_spec_#{object_id}_temp") { |f| f.puts txt }
18
- block_given? ? yield(t.path) : t.path
19
- ensure
20
- t.close(true) if t
21
- end
22
- })
23
- }
24
-
25
- extend(Module.new {
26
- def describe_extended(mod, ext, singleton = false, &block)
27
- describe(mod, 'when extended by', ext) {
28
- example {
29
- klass = singleton ? class << mod; self; end : mod
30
- klass.ancestors.should include(ext)
31
- }
32
-
33
- class_eval(&block)
34
- }
35
- end
36
- })