promise.rb 0.7.0.rc2 → 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 487aaf8c555487ea2f7b3bbdb77a5a63b0be1f38
4
- data.tar.gz: 1a1ede2482f03dd9c55c0050b913bc718b077bea
3
+ metadata.gz: 167485e5a9ba45d151d029e5b067079dcb2dabd1
4
+ data.tar.gz: 2f4eca3f6a4b22f09708e92dac211d0851c646fd
5
5
  SHA512:
6
- metadata.gz: 31b9d4895eca8ceab77fcce63730ad620b2d7f294b2bd53eb47c6da412557c714ce58bb99cc1a87995dac172e554e61ea4b0ae94ef6004d63746a3acc2ed8399
7
- data.tar.gz: 6bf132f844d4f83b7369ffd79711aa9b772c2d285507908510993099a4c1a54a3aab66eb2de7d2d4271509c62bbea24c71229086deff567adf73f5867d3b4f54
6
+ metadata.gz: 3850720bbef2c6c812b4431d79ee4a3593401ff9c724172c2b3ac7ba581447c55b4ad0539c8255dfd34e75de0acf54b1836067b5e9ee059a32b0abe4c7e26f61
7
+ data.tar.gz: e57d239371b8905f202ddb9956349cc60186e5154c335ba5dfb6eb27811c961605f8ab54f316dde42e963e6d058ddfe51f14f1bd1fda68eb842287a2111f1a8b
@@ -1,5 +1,11 @@
1
1
  # promise.rb changelog
2
2
 
3
+ ## 0.7.0 (February 24, 2016)
4
+
5
+ ### Features
6
+
7
+ * Add a Promise#rescue convenience for specifying on_reject. (pull #16)
8
+
3
9
  ## 0.7.0.rc2 (February 17, 2016)
4
10
 
5
11
  ### Bug Fixes
@@ -58,9 +58,7 @@ TooManyInstanceVariables:
58
58
  exclude: []
59
59
  max_instance_variables: 6
60
60
  TooManyMethods:
61
- enabled: true
62
- exclude: []
63
- max_methods: 13
61
+ enabled: false
64
62
  TooManyStatements:
65
63
  enabled: true
66
64
  exclude:
@@ -96,3 +96,6 @@ LineEndConcatenation:
96
96
 
97
97
  GuardClause:
98
98
  Enabled: false
99
+
100
+ Alias:
101
+ EnforcedStyle: prefer_alias_method
@@ -47,6 +47,11 @@ class Promise
47
47
  next_promise
48
48
  end
49
49
 
50
+ def rescue(&block)
51
+ self.then(nil, block)
52
+ end
53
+ alias_method :catch, :rescue
54
+
50
55
  def sync
51
56
  wait if pending?
52
57
  raise reason if rejected?
@@ -1,5 +1,5 @@
1
1
  # encoding: utf-8
2
2
 
3
3
  class Promise
4
- VERSION = '0.7.0.rc2'
4
+ VERSION = '0.7.0'.freeze
5
5
  end
@@ -347,6 +347,28 @@ describe Promise do
347
347
  end
348
348
 
349
349
  describe 'extras' do
350
+ describe '#rescue' do
351
+ it 'provides an on_reject callback' do
352
+ result = nil
353
+ subject.rescue { |reas| result = reas }
354
+
355
+ subject.reject(reason)
356
+ expect(result).to eq(reason)
357
+ expect(subject.reason).to eq(reason)
358
+ end
359
+ end
360
+
361
+ describe '#catch' do
362
+ it 'provides an on_reject callback' do
363
+ result = nil
364
+ subject.catch { |reas| result = reas }
365
+
366
+ subject.reject(reason)
367
+ expect(result).to eq(reason)
368
+ expect(subject.reason).to eq(reason)
369
+ end
370
+ end
371
+
350
372
  describe '#progress' do
351
373
  let(:status) { double('status') }
352
374
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: promise.rb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0.rc2
4
+ version: 0.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lars Gierth
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-02-17 00:00:00.000000000 Z
11
+ date: 2016-02-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -70,9 +70,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
70
70
  version: '0'
71
71
  required_rubygems_version: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - ">"
73
+ - - ">="
74
74
  - !ruby/object:Gem::Version
75
- version: 1.3.1
75
+ version: '0'
76
76
  requirements: []
77
77
  rubyforge_project:
78
78
  rubygems_version: 2.2.5