oreorenasass 3.4.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 (268) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +11 -0
  3. data/CONTRIBUTING +3 -0
  4. data/MIT-LICENSE +20 -0
  5. data/README.md +221 -0
  6. data/Rakefile +370 -0
  7. data/VERSION +1 -0
  8. data/VERSION_NAME +1 -0
  9. data/bin/sass +13 -0
  10. data/bin/sass-convert +12 -0
  11. data/bin/scss +13 -0
  12. data/extra/update_watch.rb +13 -0
  13. data/init.rb +18 -0
  14. data/lib/sass/cache_stores/base.rb +88 -0
  15. data/lib/sass/cache_stores/chain.rb +34 -0
  16. data/lib/sass/cache_stores/filesystem.rb +60 -0
  17. data/lib/sass/cache_stores/memory.rb +47 -0
  18. data/lib/sass/cache_stores/null.rb +25 -0
  19. data/lib/sass/cache_stores.rb +15 -0
  20. data/lib/sass/callbacks.rb +67 -0
  21. data/lib/sass/css.rb +407 -0
  22. data/lib/sass/engine.rb +1181 -0
  23. data/lib/sass/environment.rb +191 -0
  24. data/lib/sass/error.rb +198 -0
  25. data/lib/sass/exec/base.rb +187 -0
  26. data/lib/sass/exec/sass_convert.rb +264 -0
  27. data/lib/sass/exec/sass_scss.rb +424 -0
  28. data/lib/sass/exec.rb +9 -0
  29. data/lib/sass/features.rb +47 -0
  30. data/lib/sass/importers/base.rb +182 -0
  31. data/lib/sass/importers/filesystem.rb +211 -0
  32. data/lib/sass/importers.rb +22 -0
  33. data/lib/sass/logger/base.rb +30 -0
  34. data/lib/sass/logger/log_level.rb +45 -0
  35. data/lib/sass/logger.rb +12 -0
  36. data/lib/sass/media.rb +210 -0
  37. data/lib/sass/plugin/compiler.rb +565 -0
  38. data/lib/sass/plugin/configuration.rb +118 -0
  39. data/lib/sass/plugin/generic.rb +15 -0
  40. data/lib/sass/plugin/merb.rb +48 -0
  41. data/lib/sass/plugin/rack.rb +60 -0
  42. data/lib/sass/plugin/rails.rb +47 -0
  43. data/lib/sass/plugin/staleness_checker.rb +199 -0
  44. data/lib/sass/plugin.rb +133 -0
  45. data/lib/sass/railtie.rb +10 -0
  46. data/lib/sass/repl.rb +57 -0
  47. data/lib/sass/root.rb +7 -0
  48. data/lib/sass/script/css_lexer.rb +33 -0
  49. data/lib/sass/script/css_parser.rb +34 -0
  50. data/lib/sass/script/functions.rb +2626 -0
  51. data/lib/sass/script/lexer.rb +449 -0
  52. data/lib/sass/script/parser.rb +637 -0
  53. data/lib/sass/script/tree/funcall.rb +306 -0
  54. data/lib/sass/script/tree/interpolation.rb +118 -0
  55. data/lib/sass/script/tree/list_literal.rb +77 -0
  56. data/lib/sass/script/tree/literal.rb +45 -0
  57. data/lib/sass/script/tree/map_literal.rb +64 -0
  58. data/lib/sass/script/tree/node.rb +109 -0
  59. data/lib/sass/script/tree/operation.rb +103 -0
  60. data/lib/sass/script/tree/selector.rb +26 -0
  61. data/lib/sass/script/tree/string_interpolation.rb +104 -0
  62. data/lib/sass/script/tree/unary_operation.rb +69 -0
  63. data/lib/sass/script/tree/variable.rb +57 -0
  64. data/lib/sass/script/tree.rb +16 -0
  65. data/lib/sass/script/value/arg_list.rb +36 -0
  66. data/lib/sass/script/value/base.rb +240 -0
  67. data/lib/sass/script/value/bool.rb +35 -0
  68. data/lib/sass/script/value/color.rb +680 -0
  69. data/lib/sass/script/value/helpers.rb +262 -0
  70. data/lib/sass/script/value/list.rb +113 -0
  71. data/lib/sass/script/value/map.rb +70 -0
  72. data/lib/sass/script/value/null.rb +44 -0
  73. data/lib/sass/script/value/number.rb +530 -0
  74. data/lib/sass/script/value/string.rb +97 -0
  75. data/lib/sass/script/value.rb +11 -0
  76. data/lib/sass/script.rb +66 -0
  77. data/lib/sass/scss/css_parser.rb +42 -0
  78. data/lib/sass/scss/parser.rb +1209 -0
  79. data/lib/sass/scss/rx.rb +141 -0
  80. data/lib/sass/scss/script_lexer.rb +15 -0
  81. data/lib/sass/scss/script_parser.rb +25 -0
  82. data/lib/sass/scss/static_parser.rb +368 -0
  83. data/lib/sass/scss.rb +16 -0
  84. data/lib/sass/selector/abstract_sequence.rb +109 -0
  85. data/lib/sass/selector/comma_sequence.rb +175 -0
  86. data/lib/sass/selector/pseudo.rb +256 -0
  87. data/lib/sass/selector/sequence.rb +600 -0
  88. data/lib/sass/selector/simple.rb +117 -0
  89. data/lib/sass/selector/simple_sequence.rb +325 -0
  90. data/lib/sass/selector.rb +326 -0
  91. data/lib/sass/shared.rb +76 -0
  92. data/lib/sass/source/map.rb +210 -0
  93. data/lib/sass/source/position.rb +39 -0
  94. data/lib/sass/source/range.rb +41 -0
  95. data/lib/sass/stack.rb +120 -0
  96. data/lib/sass/supports.rb +227 -0
  97. data/lib/sass/tree/at_root_node.rb +83 -0
  98. data/lib/sass/tree/charset_node.rb +22 -0
  99. data/lib/sass/tree/comment_node.rb +82 -0
  100. data/lib/sass/tree/content_node.rb +9 -0
  101. data/lib/sass/tree/css_import_node.rb +60 -0
  102. data/lib/sass/tree/debug_node.rb +18 -0
  103. data/lib/sass/tree/directive_node.rb +59 -0
  104. data/lib/sass/tree/each_node.rb +24 -0
  105. data/lib/sass/tree/error_node.rb +18 -0
  106. data/lib/sass/tree/extend_node.rb +43 -0
  107. data/lib/sass/tree/for_node.rb +36 -0
  108. data/lib/sass/tree/function_node.rb +39 -0
  109. data/lib/sass/tree/if_node.rb +52 -0
  110. data/lib/sass/tree/import_node.rb +74 -0
  111. data/lib/sass/tree/keyframe_rule_node.rb +15 -0
  112. data/lib/sass/tree/media_node.rb +48 -0
  113. data/lib/sass/tree/mixin_def_node.rb +38 -0
  114. data/lib/sass/tree/mixin_node.rb +52 -0
  115. data/lib/sass/tree/node.rb +238 -0
  116. data/lib/sass/tree/prop_node.rb +171 -0
  117. data/lib/sass/tree/return_node.rb +19 -0
  118. data/lib/sass/tree/root_node.rb +44 -0
  119. data/lib/sass/tree/rule_node.rb +145 -0
  120. data/lib/sass/tree/supports_node.rb +38 -0
  121. data/lib/sass/tree/trace_node.rb +33 -0
  122. data/lib/sass/tree/variable_node.rb +36 -0
  123. data/lib/sass/tree/visitors/base.rb +72 -0
  124. data/lib/sass/tree/visitors/check_nesting.rb +177 -0
  125. data/lib/sass/tree/visitors/convert.rb +334 -0
  126. data/lib/sass/tree/visitors/cssize.rb +369 -0
  127. data/lib/sass/tree/visitors/deep_copy.rb +107 -0
  128. data/lib/sass/tree/visitors/extend.rb +68 -0
  129. data/lib/sass/tree/visitors/perform.rb +539 -0
  130. data/lib/sass/tree/visitors/set_options.rb +139 -0
  131. data/lib/sass/tree/visitors/to_css.rb +381 -0
  132. data/lib/sass/tree/warn_node.rb +18 -0
  133. data/lib/sass/tree/while_node.rb +18 -0
  134. data/lib/sass/util/cross_platform_random.rb +19 -0
  135. data/lib/sass/util/multibyte_string_scanner.rb +157 -0
  136. data/lib/sass/util/normalized_map.rb +130 -0
  137. data/lib/sass/util/ordered_hash.rb +192 -0
  138. data/lib/sass/util/subset_map.rb +110 -0
  139. data/lib/sass/util/test.rb +9 -0
  140. data/lib/sass/util.rb +1318 -0
  141. data/lib/sass/version.rb +124 -0
  142. data/lib/sass.rb +102 -0
  143. data/rails/init.rb +1 -0
  144. data/test/sass/cache_test.rb +131 -0
  145. data/test/sass/callbacks_test.rb +61 -0
  146. data/test/sass/compiler_test.rb +232 -0
  147. data/test/sass/conversion_test.rb +2054 -0
  148. data/test/sass/css2sass_test.rb +477 -0
  149. data/test/sass/data/hsl-rgb.txt +319 -0
  150. data/test/sass/encoding_test.rb +219 -0
  151. data/test/sass/engine_test.rb +3301 -0
  152. data/test/sass/exec_test.rb +86 -0
  153. data/test/sass/extend_test.rb +1661 -0
  154. data/test/sass/fixtures/test_staleness_check_across_importers.css +1 -0
  155. data/test/sass/fixtures/test_staleness_check_across_importers.scss +1 -0
  156. data/test/sass/functions_test.rb +1926 -0
  157. data/test/sass/importer_test.rb +412 -0
  158. data/test/sass/logger_test.rb +58 -0
  159. data/test/sass/mock_importer.rb +49 -0
  160. data/test/sass/more_results/more1.css +9 -0
  161. data/test/sass/more_results/more1_with_line_comments.css +26 -0
  162. data/test/sass/more_results/more_import.css +29 -0
  163. data/test/sass/more_templates/_more_partial.sass +2 -0
  164. data/test/sass/more_templates/more1.sass +23 -0
  165. data/test/sass/more_templates/more_import.sass +11 -0
  166. data/test/sass/plugin_test.rb +554 -0
  167. data/test/sass/results/alt.css +4 -0
  168. data/test/sass/results/basic.css +9 -0
  169. data/test/sass/results/cached_import_option.css +3 -0
  170. data/test/sass/results/compact.css +5 -0
  171. data/test/sass/results/complex.css +86 -0
  172. data/test/sass/results/compressed.css +1 -0
  173. data/test/sass/results/expanded.css +19 -0
  174. data/test/sass/results/filename_fn.css +3 -0
  175. data/test/sass/results/if.css +3 -0
  176. data/test/sass/results/import.css +31 -0
  177. data/test/sass/results/import_charset.css +5 -0
  178. data/test/sass/results/import_charset_1_8.css +5 -0
  179. data/test/sass/results/import_charset_ibm866.css +5 -0
  180. data/test/sass/results/import_content.css +1 -0
  181. data/test/sass/results/line_numbers.css +49 -0
  182. data/test/sass/results/mixins.css +95 -0
  183. data/test/sass/results/multiline.css +24 -0
  184. data/test/sass/results/nested.css +22 -0
  185. data/test/sass/results/options.css +1 -0
  186. data/test/sass/results/parent_ref.css +13 -0
  187. data/test/sass/results/script.css +16 -0
  188. data/test/sass/results/scss_import.css +31 -0
  189. data/test/sass/results/scss_importee.css +2 -0
  190. data/test/sass/results/subdir/nested_subdir/nested_subdir.css +1 -0
  191. data/test/sass/results/subdir/subdir.css +3 -0
  192. data/test/sass/results/units.css +11 -0
  193. data/test/sass/results/warn.css +0 -0
  194. data/test/sass/results/warn_imported.css +0 -0
  195. data/test/sass/script_conversion_test.rb +328 -0
  196. data/test/sass/script_test.rb +1054 -0
  197. data/test/sass/scss/css_test.rb +1215 -0
  198. data/test/sass/scss/rx_test.rb +156 -0
  199. data/test/sass/scss/scss_test.rb +3900 -0
  200. data/test/sass/scss/test_helper.rb +37 -0
  201. data/test/sass/source_map_test.rb +977 -0
  202. data/test/sass/superselector_test.rb +191 -0
  203. data/test/sass/templates/_cached_import_option_partial.scss +1 -0
  204. data/test/sass/templates/_double_import_loop2.sass +1 -0
  205. data/test/sass/templates/_filename_fn_import.scss +11 -0
  206. data/test/sass/templates/_imported_charset_ibm866.sass +4 -0
  207. data/test/sass/templates/_imported_charset_utf8.sass +4 -0
  208. data/test/sass/templates/_imported_content.sass +3 -0
  209. data/test/sass/templates/_partial.sass +2 -0
  210. data/test/sass/templates/_same_name_different_partiality.scss +1 -0
  211. data/test/sass/templates/alt.sass +16 -0
  212. data/test/sass/templates/basic.sass +23 -0
  213. data/test/sass/templates/bork1.sass +2 -0
  214. data/test/sass/templates/bork2.sass +2 -0
  215. data/test/sass/templates/bork3.sass +2 -0
  216. data/test/sass/templates/bork4.sass +2 -0
  217. data/test/sass/templates/bork5.sass +3 -0
  218. data/test/sass/templates/cached_import_option.scss +3 -0
  219. data/test/sass/templates/compact.sass +17 -0
  220. data/test/sass/templates/complex.sass +305 -0
  221. data/test/sass/templates/compressed.sass +15 -0
  222. data/test/sass/templates/double_import_loop1.sass +1 -0
  223. data/test/sass/templates/expanded.sass +17 -0
  224. data/test/sass/templates/filename_fn.scss +18 -0
  225. data/test/sass/templates/if.sass +11 -0
  226. data/test/sass/templates/import.sass +12 -0
  227. data/test/sass/templates/import_charset.sass +9 -0
  228. data/test/sass/templates/import_charset_1_8.sass +6 -0
  229. data/test/sass/templates/import_charset_ibm866.sass +11 -0
  230. data/test/sass/templates/import_content.sass +4 -0
  231. data/test/sass/templates/importee.less +2 -0
  232. data/test/sass/templates/importee.sass +19 -0
  233. data/test/sass/templates/line_numbers.sass +13 -0
  234. data/test/sass/templates/mixin_bork.sass +5 -0
  235. data/test/sass/templates/mixins.sass +76 -0
  236. data/test/sass/templates/multiline.sass +20 -0
  237. data/test/sass/templates/nested.sass +25 -0
  238. data/test/sass/templates/nested_bork1.sass +2 -0
  239. data/test/sass/templates/nested_bork2.sass +2 -0
  240. data/test/sass/templates/nested_bork3.sass +2 -0
  241. data/test/sass/templates/nested_bork4.sass +2 -0
  242. data/test/sass/templates/nested_import.sass +2 -0
  243. data/test/sass/templates/nested_mixin_bork.sass +6 -0
  244. data/test/sass/templates/options.sass +2 -0
  245. data/test/sass/templates/parent_ref.sass +25 -0
  246. data/test/sass/templates/same_name_different_ext.sass +2 -0
  247. data/test/sass/templates/same_name_different_ext.scss +1 -0
  248. data/test/sass/templates/same_name_different_partiality.scss +1 -0
  249. data/test/sass/templates/script.sass +101 -0
  250. data/test/sass/templates/scss_import.scss +12 -0
  251. data/test/sass/templates/scss_importee.scss +1 -0
  252. data/test/sass/templates/single_import_loop.sass +1 -0
  253. data/test/sass/templates/subdir/import_up1.scss +1 -0
  254. data/test/sass/templates/subdir/import_up2.scss +1 -0
  255. data/test/sass/templates/subdir/nested_subdir/_nested_partial.sass +2 -0
  256. data/test/sass/templates/subdir/nested_subdir/nested_subdir.sass +3 -0
  257. data/test/sass/templates/subdir/subdir.sass +6 -0
  258. data/test/sass/templates/units.sass +11 -0
  259. data/test/sass/templates/warn.sass +3 -0
  260. data/test/sass/templates/warn_imported.sass +4 -0
  261. data/test/sass/test_helper.rb +8 -0
  262. data/test/sass/util/multibyte_string_scanner_test.rb +147 -0
  263. data/test/sass/util/normalized_map_test.rb +51 -0
  264. data/test/sass/util/subset_map_test.rb +91 -0
  265. data/test/sass/util_test.rb +467 -0
  266. data/test/sass/value_helpers_test.rb +179 -0
  267. data/test/test_helper.rb +109 -0
  268. metadata +386 -0
@@ -0,0 +1,179 @@
1
+ #!/usr/bin/env ruby
2
+ require File.dirname(__FILE__) + '/../test_helper'
3
+
4
+ class ValueHelpersTest < MiniTest::Test
5
+ include Sass::Script
6
+ include Sass::Script::Value::Helpers
7
+
8
+ def test_bool
9
+ assert_same Value::Bool::TRUE, bool(true)
10
+ assert_same Value::Bool::FALSE, bool(false)
11
+ assert_same Value::Bool::FALSE, bool(nil)
12
+ assert_same Value::Bool::TRUE, bool(Object.new)
13
+ end
14
+
15
+ def test_hex_color_with_three_digits
16
+ color = hex_color("F07")
17
+ assert_equal 255, color.red
18
+ assert_equal 0, color.green
19
+ assert_equal 119, color.blue
20
+ assert_equal 1, color.alpha
21
+ end
22
+
23
+ def test_hex_color_without_hash
24
+ color_without_hash = hex_color("FF007F")
25
+ assert_equal 255, color_without_hash.red
26
+ assert_equal 0, color_without_hash.green
27
+ assert_equal 127, color_without_hash.blue
28
+ assert_equal 1, color_without_hash.alpha
29
+ end
30
+
31
+ def test_hex_color_with_hash
32
+ color_with_hash = hex_color("#FF007F")
33
+ assert_equal 255, color_with_hash.red
34
+ assert_equal 0, color_with_hash.green
35
+ assert_equal 127, color_with_hash.blue
36
+ assert_equal 1, color_with_hash.alpha
37
+ end
38
+
39
+ def test_malformed_hex_color
40
+ assert_raises ArgumentError do
41
+ hex_color("green")
42
+ end
43
+ assert_raises ArgumentError do
44
+ hex_color("#abcd")
45
+ end
46
+ end
47
+
48
+
49
+ def test_hex_color_with_alpha
50
+ color_with_alpha = hex_color("FF007F", 0.5)
51
+ assert_equal 0.5, color_with_alpha.alpha
52
+ end
53
+
54
+ def test_hex_color_alpha_clamps_0_to_1
55
+ assert_equal 1, hex_color("FF007F", 50).alpha
56
+ end
57
+
58
+ def test_hsl_color_without_alpha
59
+ no_alpha = hsl_color(1, 0.5, 1)
60
+ assert_equal 1, no_alpha.hue
61
+ assert_equal 0.5, no_alpha.saturation
62
+ assert_equal 1, no_alpha.lightness
63
+ assert_equal 1, no_alpha.alpha
64
+ end
65
+
66
+ def test_hsl_color_with_alpha
67
+ has_alpha = hsl_color(1, 0.5, 1, 0.5)
68
+ assert_equal 1, has_alpha.hue
69
+ assert_equal 0.5, has_alpha.saturation
70
+ assert_equal 1, has_alpha.lightness
71
+ assert_equal 0.5, has_alpha.alpha
72
+ end
73
+
74
+ def test_rgb_color_without_alpha
75
+ no_alpha = rgb_color(255, 0, 0)
76
+ assert_equal 255, no_alpha.red
77
+ assert_equal 0, no_alpha.green
78
+ assert_equal 0, no_alpha.blue
79
+ assert_equal 1, no_alpha.alpha
80
+ end
81
+
82
+ def test_rgb_color_with_alpha
83
+ has_alpha = rgb_color(255, 255, 255, 0.5)
84
+ assert_equal 255, has_alpha.red
85
+ assert_equal 255, has_alpha.green
86
+ assert_equal 255, has_alpha.blue
87
+ assert_equal 0.5, has_alpha.alpha
88
+ end
89
+
90
+ def test_number
91
+ n = number(1)
92
+ assert_equal 1, n.value
93
+ assert_equal "1", n.to_sass
94
+ end
95
+
96
+ def test_number_with_single_unit
97
+ n = number(1, "px")
98
+ assert_equal 1, n.value
99
+ assert_equal "1px", n.to_sass
100
+ end
101
+
102
+ def test_number_with_singal_numerator_and_denominator
103
+ ratio = number(1, "px/em")
104
+ assert_equal "1px/em", ratio.to_sass
105
+ end
106
+
107
+ def test_number_with_many_numerator_and_denominator_units
108
+ complex = number(1, "px*in/em*%")
109
+ assert_equal "1in*px/%*em", complex.to_sass
110
+ end
111
+
112
+ def test_number_with_many_numerator_and_denominator_units_with_spaces
113
+ complex = number(1, "px * in / em * %")
114
+ assert_equal "1in*px/%*em", complex.to_sass
115
+ end
116
+
117
+ def test_number_with_malformed_units
118
+ assert_raises ArgumentError do
119
+ number(1, "px/em/%")
120
+ end
121
+ assert_raises ArgumentError do
122
+ number(1, "/")
123
+ end
124
+ assert_raises ArgumentError do
125
+ number(1, "px/")
126
+ end
127
+ end
128
+
129
+ def test_space_list
130
+ l = list(number(1, "px"), hex_color("#f71"), :space)
131
+ l.options = {}
132
+ assert_kind_of Sass::Script::Value::List, l
133
+ assert_equal "1px #f71", l.to_sass
134
+ end
135
+
136
+ def test_comma_list
137
+ l = list(number(1, "px"), hex_color("#f71"), :comma)
138
+ l.options = {}
139
+ assert_kind_of Sass::Script::Value::List, l
140
+ assert_equal "1px, #f71", l.to_sass
141
+ end
142
+
143
+ def test_missing_list_type
144
+ assert_raises ArgumentError do
145
+ list(number(1, "px"), hex_color("#f71"))
146
+ end
147
+ end
148
+
149
+ def test_null
150
+ assert_kind_of Sass::Script::Value::Null, null
151
+ end
152
+
153
+ def test_quoted_string
154
+ s = quoted_string("sassy string")
155
+ s.options = {}
156
+ assert_kind_of Sass::Script::Value::String, s
157
+ assert_equal "sassy string", s.value
158
+ assert_equal :string, s.type
159
+ assert_equal '"sassy string"', s.to_sass
160
+ end
161
+
162
+ def test_identifier
163
+ s = identifier("a-sass-ident")
164
+ s.options = {}
165
+ assert_kind_of Sass::Script::Value::String, s
166
+ assert_equal "a-sass-ident", s.value
167
+ assert_equal :identifier, s.type
168
+ assert_equal "a-sass-ident", s.to_sass
169
+ end
170
+
171
+ def test_unquoted_string
172
+ s = unquoted_string("a-sass-ident")
173
+ s.options = {}
174
+ assert_kind_of Sass::Script::Value::String, s
175
+ assert_equal "a-sass-ident", s.value
176
+ assert_equal :identifier, s.type
177
+ assert_equal "a-sass-ident", s.to_sass
178
+ end
179
+ end
@@ -0,0 +1,109 @@
1
+ lib_dir = File.dirname(__FILE__) + '/../lib'
2
+
3
+ require 'minitest/autorun'
4
+ require 'fileutils'
5
+ $:.unshift lib_dir unless $:.include?(lib_dir)
6
+ require 'sass'
7
+ require 'mathn' if ENV['MATHN'] == 'true'
8
+
9
+ Sass::RAILS_LOADED = true unless defined?(Sass::RAILS_LOADED)
10
+
11
+ Sass.tests_running = true
12
+
13
+ if defined?(Encoding)
14
+ $-w, w = false, $-w
15
+ Encoding.default_external = 'UTF-8'
16
+ $-w = w
17
+ end
18
+
19
+ module Sass::Script::Functions
20
+ def option(name)
21
+ Sass::Script::Value::String.new(@options[name.value.to_sym].to_s)
22
+ end
23
+ end
24
+
25
+ class MiniTest::Test
26
+ def munge_filename(opts = {})
27
+ opts[:filename] ||= filename_for_test(opts[:syntax] || :sass)
28
+ opts[:sourcemap_filename] ||= sourcemap_filename_for_test
29
+ opts
30
+ end
31
+
32
+ def test_name
33
+ caller.
34
+ map {|c| Sass::Util.caller_info(c)[2]}.
35
+ compact.
36
+ map {|c| c.sub(/^(block|rescue) in /, '')}.
37
+ find {|c| c =~ /^test_/}
38
+ end
39
+
40
+ def filename_for_test(syntax = :sass)
41
+ "#{test_name}_inline.#{syntax}"
42
+ end
43
+
44
+ def sourcemap_filename_for_test(syntax = :sass)
45
+ "#{test_name}_inline.css.map"
46
+ end
47
+
48
+ def clean_up_sassc
49
+ path = File.dirname(__FILE__) + "/../.sass-cache"
50
+ FileUtils.rm_r(path) if File.exist?(path)
51
+ end
52
+
53
+ def assert_warning(message)
54
+ the_real_stderr, $stderr = $stderr, StringIO.new
55
+ yield
56
+
57
+ if message.is_a?(Regexp)
58
+ assert_match message, $stderr.string.strip
59
+ else
60
+ assert_equal message.strip, $stderr.string.strip
61
+ end
62
+ ensure
63
+ $stderr = the_real_stderr
64
+ end
65
+
66
+ def assert_no_warning
67
+ the_real_stderr, $stderr = $stderr, StringIO.new
68
+ yield
69
+
70
+ assert_equal '', $stderr.string
71
+ ensure
72
+ $stderr = the_real_stderr
73
+ end
74
+
75
+ def silence_warnings(&block)
76
+ Sass::Util.silence_warnings(&block)
77
+ end
78
+
79
+ def assert_raise_message(klass, message)
80
+ yield
81
+ rescue Exception => e
82
+ assert_instance_of(klass, e)
83
+ assert_equal(message, e.message)
84
+ else
85
+ flunk "Expected exception #{klass}, none raised"
86
+ end
87
+
88
+ def assert_raise_line(line)
89
+ yield
90
+ rescue Sass::SyntaxError => e
91
+ assert_equal(line, e.sass_line)
92
+ else
93
+ flunk "Expected exception on line #{line}, none raised"
94
+ end
95
+ end
96
+
97
+ module PublicApiLinter
98
+ def lint_api(api_class, duck_type_class)
99
+ define_method :test_lint_instance do
100
+ assert lint_instance.is_a?(duck_type_class)
101
+ end
102
+ api_class.instance_methods.each do |meth|
103
+ define_method :"test_has_#{meth}" do
104
+ assert lint_instance.respond_to?(meth),
105
+ "#{duck_type_class.name} does not implement #{meth}"
106
+ end
107
+ end
108
+ end
109
+ end
metadata ADDED
@@ -0,0 +1,386 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: oreorenasass
3
+ version: !ruby/object:Gem::Version
4
+ version: 3.4.0
5
+ platform: ruby
6
+ authors:
7
+ - Natalie Weizenbaum
8
+ - Chris Eppstein
9
+ - Hampton Catlin
10
+ autorequire:
11
+ bindir: bin
12
+ cert_chain: []
13
+ date: 2014-08-19 00:00:00.000000000 Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: yard
17
+ requirement: !ruby/object:Gem::Requirement
18
+ requirements:
19
+ - - ">="
20
+ - !ruby/object:Gem::Version
21
+ version: 0.5.3
22
+ type: :development
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ requirements:
26
+ - - ">="
27
+ - !ruby/object:Gem::Version
28
+ version: 0.5.3
29
+ - !ruby/object:Gem::Dependency
30
+ name: maruku
31
+ requirement: !ruby/object:Gem::Requirement
32
+ requirements:
33
+ - - ">="
34
+ - !ruby/object:Gem::Version
35
+ version: 0.5.9
36
+ type: :development
37
+ prerelease: false
38
+ version_requirements: !ruby/object:Gem::Requirement
39
+ requirements:
40
+ - - ">="
41
+ - !ruby/object:Gem::Version
42
+ version: 0.5.9
43
+ - !ruby/object:Gem::Dependency
44
+ name: minitest
45
+ requirement: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - ">="
48
+ - !ruby/object:Gem::Version
49
+ version: '5'
50
+ type: :development
51
+ prerelease: false
52
+ version_requirements: !ruby/object:Gem::Requirement
53
+ requirements:
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ version: '5'
57
+ description: |2
58
+ Sass makes CSS fun again. Sass is an extension of CSS3, adding
59
+ nested rules, variables, mixins, selector inheritance, and more.
60
+ It's translated to well-formatted, standard CSS using the
61
+ command line tool or a web-framework plugin.
62
+ email: sass-lang@googlegroups.com
63
+ executables:
64
+ - sass
65
+ - sass-convert
66
+ - scss
67
+ extensions: []
68
+ extra_rdoc_files: []
69
+ files:
70
+ - ".yardopts"
71
+ - CONTRIBUTING
72
+ - MIT-LICENSE
73
+ - README.md
74
+ - Rakefile
75
+ - VERSION
76
+ - VERSION_NAME
77
+ - bin/sass
78
+ - bin/sass-convert
79
+ - bin/scss
80
+ - extra/update_watch.rb
81
+ - init.rb
82
+ - lib/sass.rb
83
+ - lib/sass/cache_stores.rb
84
+ - lib/sass/cache_stores/base.rb
85
+ - lib/sass/cache_stores/chain.rb
86
+ - lib/sass/cache_stores/filesystem.rb
87
+ - lib/sass/cache_stores/memory.rb
88
+ - lib/sass/cache_stores/null.rb
89
+ - lib/sass/callbacks.rb
90
+ - lib/sass/css.rb
91
+ - lib/sass/engine.rb
92
+ - lib/sass/environment.rb
93
+ - lib/sass/error.rb
94
+ - lib/sass/exec.rb
95
+ - lib/sass/exec/base.rb
96
+ - lib/sass/exec/sass_convert.rb
97
+ - lib/sass/exec/sass_scss.rb
98
+ - lib/sass/features.rb
99
+ - lib/sass/importers.rb
100
+ - lib/sass/importers/base.rb
101
+ - lib/sass/importers/filesystem.rb
102
+ - lib/sass/logger.rb
103
+ - lib/sass/logger/base.rb
104
+ - lib/sass/logger/log_level.rb
105
+ - lib/sass/media.rb
106
+ - lib/sass/plugin.rb
107
+ - lib/sass/plugin/compiler.rb
108
+ - lib/sass/plugin/configuration.rb
109
+ - lib/sass/plugin/generic.rb
110
+ - lib/sass/plugin/merb.rb
111
+ - lib/sass/plugin/rack.rb
112
+ - lib/sass/plugin/rails.rb
113
+ - lib/sass/plugin/staleness_checker.rb
114
+ - lib/sass/railtie.rb
115
+ - lib/sass/repl.rb
116
+ - lib/sass/root.rb
117
+ - lib/sass/script.rb
118
+ - lib/sass/script/css_lexer.rb
119
+ - lib/sass/script/css_parser.rb
120
+ - lib/sass/script/functions.rb
121
+ - lib/sass/script/lexer.rb
122
+ - lib/sass/script/parser.rb
123
+ - lib/sass/script/tree.rb
124
+ - lib/sass/script/tree/funcall.rb
125
+ - lib/sass/script/tree/interpolation.rb
126
+ - lib/sass/script/tree/list_literal.rb
127
+ - lib/sass/script/tree/literal.rb
128
+ - lib/sass/script/tree/map_literal.rb
129
+ - lib/sass/script/tree/node.rb
130
+ - lib/sass/script/tree/operation.rb
131
+ - lib/sass/script/tree/selector.rb
132
+ - lib/sass/script/tree/string_interpolation.rb
133
+ - lib/sass/script/tree/unary_operation.rb
134
+ - lib/sass/script/tree/variable.rb
135
+ - lib/sass/script/value.rb
136
+ - lib/sass/script/value/arg_list.rb
137
+ - lib/sass/script/value/base.rb
138
+ - lib/sass/script/value/bool.rb
139
+ - lib/sass/script/value/color.rb
140
+ - lib/sass/script/value/helpers.rb
141
+ - lib/sass/script/value/list.rb
142
+ - lib/sass/script/value/map.rb
143
+ - lib/sass/script/value/null.rb
144
+ - lib/sass/script/value/number.rb
145
+ - lib/sass/script/value/string.rb
146
+ - lib/sass/scss.rb
147
+ - lib/sass/scss/css_parser.rb
148
+ - lib/sass/scss/parser.rb
149
+ - lib/sass/scss/rx.rb
150
+ - lib/sass/scss/script_lexer.rb
151
+ - lib/sass/scss/script_parser.rb
152
+ - lib/sass/scss/static_parser.rb
153
+ - lib/sass/selector.rb
154
+ - lib/sass/selector/abstract_sequence.rb
155
+ - lib/sass/selector/comma_sequence.rb
156
+ - lib/sass/selector/pseudo.rb
157
+ - lib/sass/selector/sequence.rb
158
+ - lib/sass/selector/simple.rb
159
+ - lib/sass/selector/simple_sequence.rb
160
+ - lib/sass/shared.rb
161
+ - lib/sass/source/map.rb
162
+ - lib/sass/source/position.rb
163
+ - lib/sass/source/range.rb
164
+ - lib/sass/stack.rb
165
+ - lib/sass/supports.rb
166
+ - lib/sass/tree/at_root_node.rb
167
+ - lib/sass/tree/charset_node.rb
168
+ - lib/sass/tree/comment_node.rb
169
+ - lib/sass/tree/content_node.rb
170
+ - lib/sass/tree/css_import_node.rb
171
+ - lib/sass/tree/debug_node.rb
172
+ - lib/sass/tree/directive_node.rb
173
+ - lib/sass/tree/each_node.rb
174
+ - lib/sass/tree/error_node.rb
175
+ - lib/sass/tree/extend_node.rb
176
+ - lib/sass/tree/for_node.rb
177
+ - lib/sass/tree/function_node.rb
178
+ - lib/sass/tree/if_node.rb
179
+ - lib/sass/tree/import_node.rb
180
+ - lib/sass/tree/keyframe_rule_node.rb
181
+ - lib/sass/tree/media_node.rb
182
+ - lib/sass/tree/mixin_def_node.rb
183
+ - lib/sass/tree/mixin_node.rb
184
+ - lib/sass/tree/node.rb
185
+ - lib/sass/tree/prop_node.rb
186
+ - lib/sass/tree/return_node.rb
187
+ - lib/sass/tree/root_node.rb
188
+ - lib/sass/tree/rule_node.rb
189
+ - lib/sass/tree/supports_node.rb
190
+ - lib/sass/tree/trace_node.rb
191
+ - lib/sass/tree/variable_node.rb
192
+ - lib/sass/tree/visitors/base.rb
193
+ - lib/sass/tree/visitors/check_nesting.rb
194
+ - lib/sass/tree/visitors/convert.rb
195
+ - lib/sass/tree/visitors/cssize.rb
196
+ - lib/sass/tree/visitors/deep_copy.rb
197
+ - lib/sass/tree/visitors/extend.rb
198
+ - lib/sass/tree/visitors/perform.rb
199
+ - lib/sass/tree/visitors/set_options.rb
200
+ - lib/sass/tree/visitors/to_css.rb
201
+ - lib/sass/tree/warn_node.rb
202
+ - lib/sass/tree/while_node.rb
203
+ - lib/sass/util.rb
204
+ - lib/sass/util/cross_platform_random.rb
205
+ - lib/sass/util/multibyte_string_scanner.rb
206
+ - lib/sass/util/normalized_map.rb
207
+ - lib/sass/util/ordered_hash.rb
208
+ - lib/sass/util/subset_map.rb
209
+ - lib/sass/util/test.rb
210
+ - lib/sass/version.rb
211
+ - rails/init.rb
212
+ - test/sass/cache_test.rb
213
+ - test/sass/callbacks_test.rb
214
+ - test/sass/compiler_test.rb
215
+ - test/sass/conversion_test.rb
216
+ - test/sass/css2sass_test.rb
217
+ - test/sass/data/hsl-rgb.txt
218
+ - test/sass/encoding_test.rb
219
+ - test/sass/engine_test.rb
220
+ - test/sass/exec_test.rb
221
+ - test/sass/extend_test.rb
222
+ - test/sass/fixtures/test_staleness_check_across_importers.css
223
+ - test/sass/fixtures/test_staleness_check_across_importers.scss
224
+ - test/sass/functions_test.rb
225
+ - test/sass/importer_test.rb
226
+ - test/sass/logger_test.rb
227
+ - test/sass/mock_importer.rb
228
+ - test/sass/more_results/more1.css
229
+ - test/sass/more_results/more1_with_line_comments.css
230
+ - test/sass/more_results/more_import.css
231
+ - test/sass/more_templates/_more_partial.sass
232
+ - test/sass/more_templates/more1.sass
233
+ - test/sass/more_templates/more_import.sass
234
+ - test/sass/plugin_test.rb
235
+ - test/sass/results/alt.css
236
+ - test/sass/results/basic.css
237
+ - test/sass/results/cached_import_option.css
238
+ - test/sass/results/compact.css
239
+ - test/sass/results/complex.css
240
+ - test/sass/results/compressed.css
241
+ - test/sass/results/expanded.css
242
+ - test/sass/results/filename_fn.css
243
+ - test/sass/results/if.css
244
+ - test/sass/results/import.css
245
+ - test/sass/results/import_charset.css
246
+ - test/sass/results/import_charset_1_8.css
247
+ - test/sass/results/import_charset_ibm866.css
248
+ - test/sass/results/import_content.css
249
+ - test/sass/results/line_numbers.css
250
+ - test/sass/results/mixins.css
251
+ - test/sass/results/multiline.css
252
+ - test/sass/results/nested.css
253
+ - test/sass/results/options.css
254
+ - test/sass/results/parent_ref.css
255
+ - test/sass/results/script.css
256
+ - test/sass/results/scss_import.css
257
+ - test/sass/results/scss_importee.css
258
+ - test/sass/results/subdir/nested_subdir/nested_subdir.css
259
+ - test/sass/results/subdir/subdir.css
260
+ - test/sass/results/units.css
261
+ - test/sass/results/warn.css
262
+ - test/sass/results/warn_imported.css
263
+ - test/sass/script_conversion_test.rb
264
+ - test/sass/script_test.rb
265
+ - test/sass/scss/css_test.rb
266
+ - test/sass/scss/rx_test.rb
267
+ - test/sass/scss/scss_test.rb
268
+ - test/sass/scss/test_helper.rb
269
+ - test/sass/source_map_test.rb
270
+ - test/sass/superselector_test.rb
271
+ - test/sass/templates/_cached_import_option_partial.scss
272
+ - test/sass/templates/_double_import_loop2.sass
273
+ - test/sass/templates/_filename_fn_import.scss
274
+ - test/sass/templates/_imported_charset_ibm866.sass
275
+ - test/sass/templates/_imported_charset_utf8.sass
276
+ - test/sass/templates/_imported_content.sass
277
+ - test/sass/templates/_partial.sass
278
+ - test/sass/templates/_same_name_different_partiality.scss
279
+ - test/sass/templates/alt.sass
280
+ - test/sass/templates/basic.sass
281
+ - test/sass/templates/bork1.sass
282
+ - test/sass/templates/bork2.sass
283
+ - test/sass/templates/bork3.sass
284
+ - test/sass/templates/bork4.sass
285
+ - test/sass/templates/bork5.sass
286
+ - test/sass/templates/cached_import_option.scss
287
+ - test/sass/templates/compact.sass
288
+ - test/sass/templates/complex.sass
289
+ - test/sass/templates/compressed.sass
290
+ - test/sass/templates/double_import_loop1.sass
291
+ - test/sass/templates/expanded.sass
292
+ - test/sass/templates/filename_fn.scss
293
+ - test/sass/templates/if.sass
294
+ - test/sass/templates/import.sass
295
+ - test/sass/templates/import_charset.sass
296
+ - test/sass/templates/import_charset_1_8.sass
297
+ - test/sass/templates/import_charset_ibm866.sass
298
+ - test/sass/templates/import_content.sass
299
+ - test/sass/templates/importee.less
300
+ - test/sass/templates/importee.sass
301
+ - test/sass/templates/line_numbers.sass
302
+ - test/sass/templates/mixin_bork.sass
303
+ - test/sass/templates/mixins.sass
304
+ - test/sass/templates/multiline.sass
305
+ - test/sass/templates/nested.sass
306
+ - test/sass/templates/nested_bork1.sass
307
+ - test/sass/templates/nested_bork2.sass
308
+ - test/sass/templates/nested_bork3.sass
309
+ - test/sass/templates/nested_bork4.sass
310
+ - test/sass/templates/nested_import.sass
311
+ - test/sass/templates/nested_mixin_bork.sass
312
+ - test/sass/templates/options.sass
313
+ - test/sass/templates/parent_ref.sass
314
+ - test/sass/templates/same_name_different_ext.sass
315
+ - test/sass/templates/same_name_different_ext.scss
316
+ - test/sass/templates/same_name_different_partiality.scss
317
+ - test/sass/templates/script.sass
318
+ - test/sass/templates/scss_import.scss
319
+ - test/sass/templates/scss_importee.scss
320
+ - test/sass/templates/single_import_loop.sass
321
+ - test/sass/templates/subdir/import_up1.scss
322
+ - test/sass/templates/subdir/import_up2.scss
323
+ - test/sass/templates/subdir/nested_subdir/_nested_partial.sass
324
+ - test/sass/templates/subdir/nested_subdir/nested_subdir.sass
325
+ - test/sass/templates/subdir/subdir.sass
326
+ - test/sass/templates/units.sass
327
+ - test/sass/templates/warn.sass
328
+ - test/sass/templates/warn_imported.sass
329
+ - test/sass/test_helper.rb
330
+ - test/sass/util/multibyte_string_scanner_test.rb
331
+ - test/sass/util/normalized_map_test.rb
332
+ - test/sass/util/subset_map_test.rb
333
+ - test/sass/util_test.rb
334
+ - test/sass/value_helpers_test.rb
335
+ - test/test_helper.rb
336
+ homepage: http://sass-lang.com/
337
+ licenses:
338
+ - MIT
339
+ metadata: {}
340
+ post_install_message:
341
+ rdoc_options: []
342
+ require_paths:
343
+ - lib
344
+ required_ruby_version: !ruby/object:Gem::Requirement
345
+ requirements:
346
+ - - ">="
347
+ - !ruby/object:Gem::Version
348
+ version: 1.8.7
349
+ required_rubygems_version: !ruby/object:Gem::Requirement
350
+ requirements:
351
+ - - ">="
352
+ - !ruby/object:Gem::Version
353
+ version: '0'
354
+ requirements: []
355
+ rubyforge_project: sass
356
+ rubygems_version: 2.2.2
357
+ signing_key:
358
+ specification_version: 4
359
+ summary: A powerful but elegant CSS compiler that makes CSS fun again.
360
+ test_files:
361
+ - test/sass/encoding_test.rb
362
+ - test/sass/exec_test.rb
363
+ - test/sass/util/subset_map_test.rb
364
+ - test/sass/util/multibyte_string_scanner_test.rb
365
+ - test/sass/util/normalized_map_test.rb
366
+ - test/sass/value_helpers_test.rb
367
+ - test/sass/superselector_test.rb
368
+ - test/sass/plugin_test.rb
369
+ - test/sass/conversion_test.rb
370
+ - test/sass/script_test.rb
371
+ - test/sass/functions_test.rb
372
+ - test/sass/script_conversion_test.rb
373
+ - test/sass/engine_test.rb
374
+ - test/sass/extend_test.rb
375
+ - test/sass/importer_test.rb
376
+ - test/sass/scss/rx_test.rb
377
+ - test/sass/scss/scss_test.rb
378
+ - test/sass/scss/css_test.rb
379
+ - test/sass/cache_test.rb
380
+ - test/sass/logger_test.rb
381
+ - test/sass/util_test.rb
382
+ - test/sass/callbacks_test.rb
383
+ - test/sass/source_map_test.rb
384
+ - test/sass/css2sass_test.rb
385
+ - test/sass/compiler_test.rb
386
+ has_rdoc: false