haml-edge 3.1.70 → 3.1.71
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.
- data/EDGE_GEM_VERSION +1 -1
- data/VERSION +1 -1
- data/lib/haml/util.rb +39 -1
- data/test/haml/util_test.rb +23 -0
- data/test/test_helper.rb +9 -1
- metadata +2 -2
data/EDGE_GEM_VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
3.1.
|
|
1
|
+
3.1.71
|
data/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
3.1.
|
|
1
|
+
3.1.71
|
data/lib/haml/util.rb
CHANGED
|
@@ -231,6 +231,44 @@ module Haml
|
|
|
231
231
|
info
|
|
232
232
|
end
|
|
233
233
|
|
|
234
|
+
# Returns whether one version string represents a more recent version than another.
|
|
235
|
+
#
|
|
236
|
+
# @param v1 [String] A version string.
|
|
237
|
+
# @param v2 [String] Another version string.
|
|
238
|
+
# @return [Boolean]
|
|
239
|
+
def version_gt(v1, v2)
|
|
240
|
+
# Construct an array to make sure the shorter version is padded with nil
|
|
241
|
+
Array.new([v1.length, v2.length].max).zip(v1.split("."), v2.split(".")) do |_, p1, p2|
|
|
242
|
+
p1 ||= "0"
|
|
243
|
+
p2 ||= "0"
|
|
244
|
+
release1 = p1 =~ /^[0-9]+$/
|
|
245
|
+
release2 = p2 =~ /^[0-9]+$/
|
|
246
|
+
if release1 && release2
|
|
247
|
+
# Integer comparison if both are full releases
|
|
248
|
+
p1, p2 = p1.to_i, p2.to_i
|
|
249
|
+
next if p1 == p2
|
|
250
|
+
return p1 > p2
|
|
251
|
+
elsif !release1 && !release2
|
|
252
|
+
# String comparison if both are prereleases
|
|
253
|
+
next if p1 == p2
|
|
254
|
+
return p1 > p2
|
|
255
|
+
else
|
|
256
|
+
# If only one is a release, that one is newer
|
|
257
|
+
return release1
|
|
258
|
+
end
|
|
259
|
+
end
|
|
260
|
+
end
|
|
261
|
+
|
|
262
|
+
# Returns whether one version string represents the same or a more
|
|
263
|
+
# recent version than another.
|
|
264
|
+
#
|
|
265
|
+
# @param v1 [String] A version string.
|
|
266
|
+
# @param v2 [String] Another version string.
|
|
267
|
+
# @return [Boolean]
|
|
268
|
+
def version_geq(v1, v2)
|
|
269
|
+
version_gt(v1, v2) || !version_gt(v2, v1)
|
|
270
|
+
end
|
|
271
|
+
|
|
234
272
|
# Silence all output to STDERR within a block.
|
|
235
273
|
#
|
|
236
274
|
# @yield A block in which no output will be printed to STDERR
|
|
@@ -308,7 +346,7 @@ module Haml
|
|
|
308
346
|
return false unless defined?(ActionPack) && defined?(ActionPack::VERSION) &&
|
|
309
347
|
defined?(ActionPack::VERSION::STRING)
|
|
310
348
|
|
|
311
|
-
ActionPack::VERSION::STRING
|
|
349
|
+
version_geq(ActionPack::VERSION::STRING, version)
|
|
312
350
|
end
|
|
313
351
|
|
|
314
352
|
# Returns an ActionView::Template* class.
|
data/test/haml/util_test.rb
CHANGED
|
@@ -217,6 +217,29 @@ class UtilTest < Test::Unit::TestCase
|
|
|
217
217
|
assert_equal(["/tmp/foo.rb", 12, "fizzle"], caller_info("/tmp/foo.rb:12: in `fizzle {}'"))
|
|
218
218
|
end
|
|
219
219
|
|
|
220
|
+
def test_version_gt
|
|
221
|
+
assert_version_gt("2.0.0", "1.0.0")
|
|
222
|
+
assert_version_gt("1.1.0", "1.0.0")
|
|
223
|
+
assert_version_gt("1.0.1", "1.0.0")
|
|
224
|
+
assert_version_gt("1.0.0", "1.0.0.rc")
|
|
225
|
+
assert_version_gt("1.0.0.1", "1.0.0.rc")
|
|
226
|
+
assert_version_gt("1.0.0.rc", "0.9.9")
|
|
227
|
+
assert_version_gt("1.0.0.beta", "1.0.0.alpha")
|
|
228
|
+
|
|
229
|
+
assert_version_eq("1.0.0", "1.0.0")
|
|
230
|
+
assert_version_eq("1.0.0", "1.0.0.0")
|
|
231
|
+
end
|
|
232
|
+
|
|
233
|
+
def assert_version_gt(v1, v2)
|
|
234
|
+
#assert(version_gt(v1, v2), "Expected #{v1} > #{v2}")
|
|
235
|
+
assert(!version_gt(v2, v1), "Expected #{v2} < #{v1}")
|
|
236
|
+
end
|
|
237
|
+
|
|
238
|
+
def assert_version_eq(v1, v2)
|
|
239
|
+
assert(!version_gt(v1, v2), "Expected #{v1} = #{v2}")
|
|
240
|
+
assert(!version_gt(v2, v1), "Expected #{v2} = #{v1}")
|
|
241
|
+
end
|
|
242
|
+
|
|
220
243
|
def test_def_static_method
|
|
221
244
|
klass = Class.new
|
|
222
245
|
def_static_method(klass, :static_method, [:arg1, :arg2],
|
data/test/test_helper.rb
CHANGED
|
@@ -76,7 +76,15 @@ class Test::Unit::TestCase
|
|
|
76
76
|
|
|
77
77
|
def rails_form_opener
|
|
78
78
|
return '' unless Haml::Util.ap_geq?("3.0.0.rc")
|
|
79
|
-
|
|
79
|
+
if Haml::Util.ap_geq?("3.0.0.rc2")
|
|
80
|
+
encoding = 'utf8'
|
|
81
|
+
char = '✓'
|
|
82
|
+
else
|
|
83
|
+
encoding = '_snowman'
|
|
84
|
+
char = '☃'
|
|
85
|
+
end
|
|
86
|
+
return '<div style="margin:0;padding:0;display:inline"><input name="' + encoding +
|
|
87
|
+
'" type="hidden" value="' + char + '" /></div>'
|
|
80
88
|
end
|
|
81
89
|
|
|
82
90
|
def assert_raise_message(klass, message)
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: haml-edge
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 3.1.
|
|
4
|
+
version: 3.1.71
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Nathan Weizenbaum
|
|
@@ -11,7 +11,7 @@ autorequire:
|
|
|
11
11
|
bindir: bin
|
|
12
12
|
cert_chain: []
|
|
13
13
|
|
|
14
|
-
date: 2010-08-
|
|
14
|
+
date: 2010-08-30 00:00:00 -04:00
|
|
15
15
|
default_executable:
|
|
16
16
|
dependencies:
|
|
17
17
|
- !ruby/object:Gem::Dependency
|