timecop 0.4.6 → 0.5.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.
- data/History.rdoc +15 -0
- data/VERSION.yml +2 -2
- data/lib/timecop/timecop.rb +9 -9
- data/test/timecop_test.rb +20 -15
- metadata +4 -4
data/History.rdoc
CHANGED
@@ -1,3 +1,18 @@
|
|
1
|
+
=== 0.5.0 / 2012-09-12
|
2
|
+
|
3
|
+
* Maintenance
|
4
|
+
* Timecop#travel, Timecop#freeze blocks return nil or block value
|
5
|
+
|
6
|
+
=== 0.4.6 / 2012-09-05
|
7
|
+
|
8
|
+
* Maintenance
|
9
|
+
* Fix rounding support for Ruby < 1.9
|
10
|
+
|
11
|
+
=== 0.4.5 / 2012-08-09
|
12
|
+
|
13
|
+
* Maintenance
|
14
|
+
* Subclasses of Time/Date/DateTime now return proper instances
|
15
|
+
|
1
16
|
=== 0.4.4 / 2012-07-29
|
2
17
|
|
3
18
|
* Maintenance
|
data/VERSION.yml
CHANGED
data/lib/timecop/timecop.rb
CHANGED
@@ -47,10 +47,11 @@ class Timecop
|
|
47
47
|
# which will lead to files being generated with the timestamp set by the Timecop.freeze call
|
48
48
|
# in your dev environment
|
49
49
|
#
|
50
|
-
# Returns the
|
50
|
+
# Returns the value of the block or nil.
|
51
51
|
def freeze(*args, &block)
|
52
|
-
instance().send(:travel, :freeze, *args, &block)
|
53
|
-
|
52
|
+
val = instance().send(:travel, :freeze, *args, &block)
|
53
|
+
|
54
|
+
block_given? ? val : nil
|
54
55
|
end
|
55
56
|
|
56
57
|
# Allows you to run a block of code and "fake" a time throughout the execution of that block.
|
@@ -59,10 +60,11 @@ class Timecop
|
|
59
60
|
# * Note: Timecop.travel will not freeze time (as opposed to Timecop.freeze). This is a particularly
|
60
61
|
# good candidate for use in environment files in rails projects.
|
61
62
|
#
|
62
|
-
# Returns the
|
63
|
+
# Returns the value of the block or nil.
|
63
64
|
def travel(*args, &block)
|
64
|
-
instance().send(:travel, :travel, *args, &block)
|
65
|
-
|
65
|
+
val = instance().send(:travel, :travel, *args, &block)
|
66
|
+
|
67
|
+
block_given? ? val : nil
|
66
68
|
end
|
67
69
|
|
68
70
|
def baseline
|
@@ -74,11 +76,9 @@ class Timecop
|
|
74
76
|
end
|
75
77
|
|
76
78
|
# Reverts back to system's Time.now, Date.today and DateTime.now (if it exists).
|
77
|
-
#
|
78
|
-
# Returns Time.now, which is now the real current time.
|
79
79
|
def return
|
80
80
|
instance().send(:unmock!)
|
81
|
-
|
81
|
+
nil
|
82
82
|
end
|
83
83
|
|
84
84
|
def return_to_baseline
|
data/test/timecop_test.rb
CHANGED
@@ -324,29 +324,34 @@ class TestTimecop < Test::Unit::TestCase
|
|
324
324
|
assert_nil Time.send(:mock_time)
|
325
325
|
end
|
326
326
|
|
327
|
-
def
|
328
|
-
|
329
|
-
|
330
|
-
|
327
|
+
def test_travel_time_returns_nil
|
328
|
+
t_future = Time.local(2030, 10, 10, 10, 10, 10)
|
329
|
+
assert_nil Timecop.travel(t_future)
|
330
|
+
end
|
331
|
+
|
332
|
+
def test_travel_time_with_block_returns_the_value_of_the_block
|
333
|
+
t_future = Time.local(2030, 10, 10, 10, 10, 10)
|
334
|
+
expected = :foo
|
335
|
+
actual = Timecop.travel(t_future) { expected }
|
336
|
+
|
337
|
+
assert_equal expected, actual
|
331
338
|
end
|
332
339
|
|
333
|
-
def
|
340
|
+
def test_freeze_time_returns_nil
|
334
341
|
t_future = Time.local(2030, 10, 10, 10, 10, 10)
|
335
|
-
|
336
|
-
assert times_effectively_equal(t_future, t_travel)
|
342
|
+
assert_nil Timecop.freeze(t_future)
|
337
343
|
end
|
338
344
|
|
339
|
-
def
|
345
|
+
def test_freeze_time_with_block_returns_the_value_of_the_block
|
340
346
|
t_future = Time.local(2030, 10, 10, 10, 10, 10)
|
341
|
-
|
342
|
-
|
347
|
+
expected = :foo
|
348
|
+
actual = Timecop.freeze(t_future) { expected }
|
349
|
+
|
350
|
+
assert_equal expected, actual
|
343
351
|
end
|
344
352
|
|
345
|
-
def
|
346
|
-
|
347
|
-
Timecop.freeze Time.local(2030, 10, 10, 10, 10, 10)
|
348
|
-
t_return = Timecop.return
|
349
|
-
assert times_effectively_equal(t_real, t_return)
|
353
|
+
def test_return_returns_nil
|
354
|
+
assert_nil Timecop.return
|
350
355
|
end
|
351
356
|
|
352
357
|
def test_freeze_without_params
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: timecop
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 11
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
|
-
-
|
9
|
-
-
|
10
|
-
version: 0.
|
8
|
+
- 5
|
9
|
+
- 0
|
10
|
+
version: 0.5.0
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Travis Jeffery
|