rosarium 0.1.3 → 0.1.4
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.
- checksums.yaml +4 -4
- data/README.md +9 -12
- data/lib/rosarium/simple_promise.rb +2 -2
- data/spec/deferred_spec.rb +2 -2
- data/spec/promise_methods_spec.rb +4 -4
- data/spec/promise_static_spec.rb +3 -3
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4d29d25a2dda69339736325662c95e47aa89f72a
|
4
|
+
data.tar.gz: cedaeb3c52e8e7638b089e24570200ef726d4dd5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e709529f21c3de794fd607f3c3a28561e0b3369584accdff616b7b35a516a82617c901380a95a40c34668242df4d7b7a49179c7d3932ae24486716a7e95e7803
|
7
|
+
data.tar.gz: 2d1f44d108baa337a810726731277730d8f2b07488358ada586dca0c9a33d268db02d6f263364cad1002086d23134c4cafd56249d56165aafb64f677a45d3588
|
data/README.md
CHANGED
@@ -69,6 +69,12 @@ then later, use the "deferred" to fulfill or reject the promise:
|
|
69
69
|
# One of: :pending, :fulfilled, :rejected.
|
70
70
|
promise.state
|
71
71
|
|
72
|
+
# Equivalent to "state == :fulfilled"
|
73
|
+
promise.fulfilled?
|
74
|
+
|
75
|
+
# Equivalent to "state == :rejected"
|
76
|
+
promise.rejected?
|
77
|
+
|
72
78
|
# Wait for the promise to be settled, then return its value (if fulfilled -
|
73
79
|
# note the value may be nil), or nil (if rejected).
|
74
80
|
promise.value
|
@@ -77,22 +83,13 @@ then later, use the "deferred" to fulfill or reject the promise:
|
|
77
83
|
# or nil (if fulfilled).
|
78
84
|
promise.reason
|
79
85
|
|
80
|
-
# A hash describing the state of the promise. Always includes :state key;
|
81
|
-
# may include :value or :reason.
|
82
|
-
promise.inspect
|
83
|
-
|
84
|
-
# true iff state == :fulfilled
|
85
|
-
promise.fulfilled?
|
86
|
-
|
87
|
-
# true iff state == :rejected
|
88
|
-
promise.rejected?
|
89
|
-
|
90
86
|
# Wait for the promise to be settled, then return its value (if fulfilled),
|
91
87
|
# or raise with the rejection reason (if rejected).
|
92
88
|
promise.value!
|
93
89
|
|
94
|
-
#
|
95
|
-
|
90
|
+
# A hash describing the state of the promise. Always includes :state key;
|
91
|
+
# may include :value or :reason.
|
92
|
+
promise.inspect
|
96
93
|
```
|
97
94
|
|
98
95
|
Chaining promises together:
|
@@ -65,6 +65,8 @@ module Rosarium
|
|
65
65
|
end
|
66
66
|
end
|
67
67
|
|
68
|
+
private
|
69
|
+
|
68
70
|
def wait
|
69
71
|
on_resolution do
|
70
72
|
@mutex.synchronize { @condition.broadcast }
|
@@ -78,8 +80,6 @@ module Rosarium
|
|
78
80
|
end
|
79
81
|
end
|
80
82
|
|
81
|
-
private
|
82
|
-
|
83
83
|
def synchronize
|
84
84
|
@mutex.synchronize { yield }
|
85
85
|
end
|
data/spec/deferred_spec.rb
CHANGED
@@ -63,7 +63,7 @@ describe "deferred promises" do
|
|
63
63
|
d1.resolve(d2.promise)
|
64
64
|
check_pending d1.promise
|
65
65
|
d2.resolve 7
|
66
|
-
d1.promise.
|
66
|
+
d1.promise.value
|
67
67
|
check_fulfilled d1.promise, 7
|
68
68
|
end
|
69
69
|
|
@@ -74,7 +74,7 @@ describe "deferred promises" do
|
|
74
74
|
check_pending d1.promise
|
75
75
|
e = an_error
|
76
76
|
d2.reject e
|
77
|
-
d1.promise.
|
77
|
+
d1.promise.value
|
78
78
|
check_rejected d1.promise, e
|
79
79
|
end
|
80
80
|
|
@@ -33,7 +33,7 @@ describe Rosarium::Promise do
|
|
33
33
|
chained = deferred.promise.then { then_called = true }
|
34
34
|
check_pending chained
|
35
35
|
deferred.reject e
|
36
|
-
chained.
|
36
|
+
chained.value
|
37
37
|
check_rejected chained, e
|
38
38
|
expect(then_called).to be_falsy
|
39
39
|
end
|
@@ -45,7 +45,7 @@ describe Rosarium::Promise do
|
|
45
45
|
got_args = nil
|
46
46
|
chained = deferred.promise.then(Proc.new {|*args| got_args = args; raise e2 }) { raise "should never be called" }
|
47
47
|
deferred.reject e
|
48
|
-
chained.
|
48
|
+
chained.value
|
49
49
|
check_rejected chained, e2
|
50
50
|
expect(got_args).to eq([e])
|
51
51
|
end
|
@@ -54,7 +54,7 @@ describe Rosarium::Promise do
|
|
54
54
|
deferred = Rosarium::Promise.defer
|
55
55
|
chained = deferred.promise.then(Proc.new {7}) { raise "should never be called" }
|
56
56
|
deferred.reject an_error
|
57
|
-
chained.
|
57
|
+
chained.value
|
58
58
|
check_fulfilled chained, 7
|
59
59
|
end
|
60
60
|
|
@@ -63,7 +63,7 @@ describe Rosarium::Promise do
|
|
63
63
|
deferred = Rosarium::Promise.defer
|
64
64
|
chained = deferred.promise.send(method) { 7 }
|
65
65
|
deferred.reject an_error
|
66
|
-
chained.
|
66
|
+
chained.value
|
67
67
|
check_fulfilled chained, 7
|
68
68
|
end
|
69
69
|
end
|
data/spec/promise_static_spec.rb
CHANGED
@@ -61,7 +61,7 @@ describe "instantly-resolved promises" do
|
|
61
61
|
|
62
62
|
e = an_error
|
63
63
|
d2.reject e
|
64
|
-
promise.
|
64
|
+
promise.value
|
65
65
|
check_fulfilled promise, [ d1.promise, d2.promise ]
|
66
66
|
end
|
67
67
|
|
@@ -82,7 +82,7 @@ describe "instantly-resolved promises" do
|
|
82
82
|
|
83
83
|
e = an_error
|
84
84
|
d3.reject e
|
85
|
-
promise.
|
85
|
+
promise.value
|
86
86
|
check_rejected promise, e
|
87
87
|
end
|
88
88
|
|
@@ -96,7 +96,7 @@ describe "instantly-resolved promises" do
|
|
96
96
|
check_pending promise
|
97
97
|
|
98
98
|
d2.resolve 8
|
99
|
-
promise.
|
99
|
+
promise.value
|
100
100
|
check_fulfilled promise, [7,8]
|
101
101
|
end
|
102
102
|
|