events_jp 0.0.4 → 0.0.5

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: aab2519d8804f736156630b36db725f413a4c164
4
- data.tar.gz: b106f59cb674759ce82d20c6d878eccb05fb5638
3
+ metadata.gz: 4f67d6a45cf0c82bfadeefff22ffd982d7bd52f9
4
+ data.tar.gz: 7cdbcd44a517af9b0573b7ac1bc9260df3114215
5
5
  SHA512:
6
- metadata.gz: 2e54ae85cbde020a03ffbc7d1425f136a1ad9fe04211e87758d4eb06f1f4f8a75c1aeae65d28110ffe2aec9f09f32631dd85c431863932a580d0e9167347c787
7
- data.tar.gz: a806e5bc7904bb2bce3aa70e46caa234db1adcdb57f47d411f3e530c2c3b1d5878a1953ac6406f70ef137967c9e5fbc6f3dc09bcb74fcf5bdfdb5fb8c05d61d2
6
+ metadata.gz: aa55f679cabc8e8d020b3d702dc13dc44c30d6ce5088ec203318fe6f0647cc9499d70c467e1da312d9eb39f306988f3bc9f40b0e9fea140b10ae2bb5f5134716
7
+ data.tar.gz: 67220f492e3d0c0831e1bd86f23d867cd7e0ad8ddc0f14c84fde3e4ca3f60f9a5fb842079fa0b4b9bb1af5347ace937543673f3e74764bab40945876b7e2f826
data/README.md CHANGED
@@ -21,10 +21,11 @@ Or install it yourself as:
21
21
  ### Search events
22
22
 
23
23
  ```ruby
24
- events = EventsJp.get_events(keyword: 'Ruby')
24
+ events, errors = EventsJp.get_events(keyword: 'Ruby')
25
25
  events.each do |e|
26
26
  puts "#{e.service} - #{e.title}"
27
27
  end
28
+ puts errors #=> []
28
29
  ```
29
30
 
30
31
  * Unfortunately, Doorkeeper don't support keyword search....
@@ -32,10 +33,11 @@ end
32
33
  ### Get all events
33
34
 
34
35
  ```ruby
35
- events = EventsJp.get_events(service_limit: 100)
36
+ events, errors = EventsJp.get_events(service_limit: 100)
36
37
  events.each do |e|
37
38
  puts "#{e.service} - #{e.title}"
38
39
  end
40
+ puts errors #=> []
39
41
  ```
40
42
 
41
43
  ### Complement
@@ -4,14 +4,16 @@ module EventsJp
4
4
  SERVICES = [EventsJp::Atnd, EventsJp::Connpass, EventsJp::Doorkeeper, EventsJp::Zusaar]
5
5
 
6
6
  def get_events(keyword: nil, service_limit: nil)
7
- results = []
7
+ results, errors = [], []
8
8
 
9
9
  Parallel.each(SERVICES, in_threads: SERVICES.count) do |service|
10
10
  next if service == EventsJp::Doorkeeper && keyword
11
- results << service.get_events(keyword: keyword, limit: service_limit)
11
+ res, err = service.get_events(keyword: keyword, limit: service_limit)
12
+ results << res
13
+ errors << err
12
14
  end
13
15
 
14
- results.compact.flatten
16
+ return [results.compact.flatten, errors.compact.flatten]
15
17
  end
16
18
  end
17
19
  end
@@ -5,15 +5,19 @@ module EventsJp
5
5
 
6
6
  class << self
7
7
  def get_events(keyword: nil, limit: nil)
8
- res = []
8
+ results, errors = [], []
9
9
  loop do
10
- opt = merged_option(keyword, res, DEFAULT_OPT)
11
- tmp = convert_response(get(ENDPOINT, opt))
12
- res += tmp
13
- break if finish_get?(res, tmp, limit)
10
+ tmp, err = access_wrapper do
11
+ opt = merged_option(keyword, results, DEFAULT_OPT)
12
+ convert_response(get(ENDPOINT, opt))
13
+ end
14
+ results += tmp
15
+ errors << err
16
+ break if finish_get?(results, tmp, limit)
14
17
  sleep(1)
15
18
  end
16
- res.uniq.flatten
19
+
20
+ return [results.uniq.compact.flatten, errors.compact.flatten]
17
21
  end
18
22
 
19
23
  def convert_response(json_str)
@@ -5,15 +5,20 @@ module EventsJp
5
5
 
6
6
  class << self
7
7
  def get_events(keyword: nil, limit: nil)
8
- res = []
8
+ results, errors = [], []
9
9
  loop do
10
- opt = merged_option(keyword, res, DEFAULT_OPT)
11
- tmp = convert_response(get(ENDPOINT, opt))
12
- res += tmp
13
- break if finish_get?(res, tmp, limit)
10
+ tmp, err = access_wrapper do
11
+ opt = merged_option(keyword, results, DEFAULT_OPT)
12
+ convert_response(get(ENDPOINT, opt))
13
+ end
14
+ results += tmp
15
+ errors << err
16
+ break if finish_get?(results, tmp, limit)
17
+
14
18
  sleep(1)
15
19
  end
16
- res.uniq.flatten
20
+
21
+ return [results.uniq.compact.flatten, errors.compact.flatten]
17
22
  end
18
23
 
19
24
  def convert_response(json_str)
@@ -5,15 +5,20 @@ module EventsJp
5
5
 
6
6
  class << self
7
7
  def get_events(keyword: nil, limit: nil)
8
- res = []
8
+ results, errors = [], []
9
+
9
10
  1.upto(1000) do |page|
10
- opt = merged_option(page, DEFAULT_OPT)
11
- tmp = convert_response(get(ENDPOINT, opt))
12
- res += tmp
13
- break if finish_get?(res, tmp, limit)
11
+ tmp, err = access_wrapper do
12
+ opt = merged_option(page, DEFAULT_OPT)
13
+ convert_response(get(ENDPOINT, opt))
14
+ end
15
+ results += tmp
16
+ errors << err
17
+ break if finish_get?(results, tmp, limit)
14
18
  sleep(1)
15
19
  end
16
- res.uniq.flatten
20
+
21
+ return [results.uniq.compact.flatten, errors.compact.flatten]
17
22
  end
18
23
 
19
24
  def merged_option(page, option)
@@ -4,6 +4,12 @@ module EventsJp
4
4
  extend EventsJp::Connection
5
5
 
6
6
  class << self
7
+ def access_wrapper(&block)
8
+ return [block.call, nil]
9
+ rescue => e
10
+ return [[], e.message]
11
+ end
12
+
7
13
  def service_name
8
14
  self.name.to_s.downcase.gsub(/^(.*::)/, '')
9
15
  end
@@ -5,15 +5,19 @@ module EventsJp
5
5
 
6
6
  class << self
7
7
  def get_events(keyword: nil, limit: nil)
8
- res = []
8
+ results, errors = [], []
9
9
  loop do
10
- opt = merged_option(keyword, res, DEFAULT_OPT)
11
- tmp = convert_response(get(ENDPOINT, opt))
12
- res += tmp
13
- break if finish_get?(res, tmp, limit)
10
+ tmp, err = access_wrapper do
11
+ opt = merged_option(keyword, results, DEFAULT_OPT)
12
+ convert_response(get(ENDPOINT, opt))
13
+ end
14
+ results += tmp
15
+ errors << err
16
+ break if finish_get?(results, tmp, limit)
14
17
  sleep(1)
15
18
  end
16
- res.uniq.flatten
19
+
20
+ return [results.uniq.compact.flatten, errors.compact.flatten]
17
21
  end
18
22
 
19
23
  def convert_response(json_str)
@@ -1,3 +1,3 @@
1
1
  module EventsJp
2
- VERSION = '0.0.4'
2
+ VERSION = '0.0.5'
3
3
  end
@@ -1,51 +1,51 @@
1
- $:.unshift(File.expand_path('../', __FILE__))
2
1
  require 'spec_helper'
3
2
 
4
3
  describe 'EventsJp::Atnd' do
5
4
  describe '.convert_response' do
6
- before(:each) do
7
- response = %[{"events": [{"event": {"address": "sample"}}]}]
8
- @conv_res = EventsJp::Atnd.convert_response(response)
9
- end
10
-
5
+ let!(:response) { %[{"events": [{"event": {"address": "sample"}}]}] }
11
6
  it 'converts to Array' do
12
- expect(@conv_res.class).to eq(Array)
13
- expect(@conv_res.first.address).to eq('sample')
7
+ results = EventsJp::Atnd.convert_response(response)
8
+ expect(results.class).to eq(Array)
9
+ expect(results.first.address).to eq('sample')
14
10
  end
15
11
  end
16
12
 
17
13
  describe '.get_events' do
18
14
  context 'with keyword' do
19
- before(:each) do
20
- @res = EventsJp::Atnd.get_events(limit: 100, keyword: 'Ruby')
21
- end
22
-
23
15
  it 'returns conpass API results' do
24
- expect(@res.count).to eq(100)
25
- expect(@res.first.title).to eq('第16回 tottoruby')
16
+ results, errors = EventsJp::Atnd.get_events(limit: 100, keyword: 'Ruby')
17
+ expect(errors).to be == []
18
+ expect(results.count).to eq(100)
19
+ expect(results.first.title).to eq('第16回 tottoruby')
26
20
  end
27
21
  end
28
22
 
29
23
  context 'no keyword' do
30
- before(:each) do
31
- @res = EventsJp::Atnd.get_events(limit: 100)
24
+ it 'returns conpass API results' do
25
+ results, errors = EventsJp::Atnd.get_events(limit: 100)
26
+ expect(errors).to be == []
27
+ expect(results.count).to eq(100)
28
+ expect(results.first.service).to eq('atnd')
29
+ expect(results.first.title).to eq('[テスト] qkstudy #01')
30
+ expect(results.first.catch).to eq('人は働くために、休みが必要である。')
31
+ expect(results.first.event_url).to eq('http://atnd.org/events/17662')
32
+ expect(results.first.started_at).to eq(DateTime.parse('2112-08-20T19:00:00.000+09:00'))
33
+ expect(results.first.ended_at).to eq(DateTime.parse('2112-08-20T21:30:00.000+09:00'))
34
+ expect(results.first.address).to eq('東京都千代田区丸の内3丁目5番1号')
35
+ expect(results.first.place).to eq('東京国際フォーラム ホールB7')
36
+ expect(results.first.lat).to eq(35.6769467)
37
+ expect(results.first.lon).to eq(139.7635034)
38
+ expect(results.first.limit).to be_nil
39
+ expect(results.first.accepted).to eq(5)
40
+ expect(results.first.waiting).to eq(0)
32
41
  end
42
+ end
33
43
 
34
- it 'returns conpass API results' do
35
- expect(@res.count).to eq(100)
36
- expect(@res.first.service).to eq('atnd')
37
- expect(@res.first.title).to eq('[テスト] qkstudy #01')
38
- expect(@res.first.catch).to eq('人は働くために、休みが必要である。')
39
- expect(@res.first.event_url).to eq('http://atnd.org/events/17662')
40
- expect(@res.first.started_at).to eq(DateTime.parse('2112-08-20T19:00:00.000+09:00'))
41
- expect(@res.first.ended_at).to eq(DateTime.parse('2112-08-20T21:30:00.000+09:00'))
42
- expect(@res.first.address).to eq('東京都千代田区丸の内3丁目5番1号')
43
- expect(@res.first.place).to eq('東京国際フォーラム ホールB7')
44
- expect(@res.first.lat).to eq(35.6769467)
45
- expect(@res.first.lon).to eq(139.7635034)
46
- expect(@res.first.limit).to be_nil
47
- expect(@res.first.accepted).to eq(5)
48
- expect(@res.first.waiting).to eq(0)
44
+ context 'when raise errors in convert_response method' do
45
+ it 'returns error' do
46
+ allow(EventsJp::Atnd).to receive(:convert_response).and_raise(StandardError)
47
+ _, errors = EventsJp::Atnd.get_events(limit: 100)
48
+ expect(errors).not_to be_empty
49
49
  end
50
50
  end
51
51
  end
@@ -3,49 +3,50 @@ require 'spec_helper'
3
3
 
4
4
  describe 'EventsJp::Conpass' do
5
5
  describe '.convert_response' do
6
- before(:each) do
7
- response = %[{"events": [{"address": "sample"}]}]
8
- @conv_res = EventsJp::Connpass.convert_response(response)
9
- end
10
-
6
+ let!(:response) { %[{"events": [{"address": "sample"}]}] }
11
7
  it 'converts to Array' do
12
- expect(@conv_res.class).to eq(Array)
13
- expect(@conv_res.first.address).to eq('sample')
8
+ result = EventsJp::Connpass.convert_response(response)
9
+ expect(result.class).to eq(Array)
10
+ expect(result.first.address).to eq('sample')
14
11
  end
15
12
  end
16
13
 
17
14
  describe '.get_events' do
18
15
  context 'with keyword' do
19
- before(:each) do
20
- @res = EventsJp::Connpass.get_events(keyword: 'Ruby', limit: 100)
21
- end
22
-
23
16
  it 'returns conpass API results' do
24
- expect(@res.count).to eq(100)
25
- expect(@res.first.title).to eq('NDS#39 Niigata.pm tech talk')
17
+ results, errors = EventsJp::Connpass.get_events(keyword: 'Ruby', limit: 100)
18
+ expect(errors).to be == []
19
+ expect(results.count).to eq(100)
20
+ expect(results.first.title).to eq('NDS#39 Niigata.pm tech talk')
26
21
  end
27
22
  end
28
23
 
29
24
  context 'no keyword' do
30
- before(:each) do
31
- @res = EventsJp::Connpass.get_events(limit: 100)
25
+ it 'returns conpass API results' do
26
+ results, errors = EventsJp::Connpass.get_events(limit: 100)
27
+ expect(errors).to be == []
28
+ expect(results.count).to eq(100)
29
+ expect(results.first.service).to eq('connpass')
30
+ expect(results.first.title).to eq('キイロイトリ勉強会')
31
+ expect(results.first.catch).to eq('キイロイトリの魅力を勉強してください')
32
+ expect(results.first.event_url).to eq('http://connpass.com/event/14/')
33
+ expect(results.first.started_at).to eq(DateTime.parse('2038-01-18T03:13:10+09:00'))
34
+ expect(results.first.ended_at).to eq(DateTime.parse('2038-01-18T03:14:10+09:00'))
35
+ expect(results.first.address).to eq('東京')
36
+ expect(results.first.place).to eq('どこか')
37
+ expect(results.first.lat).to eq(35.6894875)
38
+ expect(results.first.lon).to eq(139.6917064)
39
+ expect(results.first.limit).to eq(10)
40
+ expect(results.first.accepted).to eq(2)
41
+ expect(results.first.waiting).to eq(0)
32
42
  end
43
+ end
33
44
 
34
- it 'returns conpass API results' do
35
- expect(@res.count).to eq(100)
36
- expect(@res.first.service).to eq('connpass')
37
- expect(@res.first.title).to eq('キイロイトリ勉強会')
38
- expect(@res.first.catch).to eq('キイロイトリの魅力を勉強してください')
39
- expect(@res.first.event_url).to eq('http://connpass.com/event/14/')
40
- expect(@res.first.started_at).to eq(DateTime.parse('2038-01-18T03:13:10+09:00'))
41
- expect(@res.first.ended_at).to eq(DateTime.parse('2038-01-18T03:14:10+09:00'))
42
- expect(@res.first.address).to eq('東京')
43
- expect(@res.first.place).to eq('どこか')
44
- expect(@res.first.lat).to eq(35.6894875)
45
- expect(@res.first.lon).to eq(139.6917064)
46
- expect(@res.first.limit).to eq(10)
47
- expect(@res.first.accepted).to eq(2)
48
- expect(@res.first.waiting).to eq(0)
45
+ context 'when raise errors in convert_response method' do
46
+ it 'returns error' do
47
+ allow(EventsJp::Connpass).to receive(:convert_response).and_raise(StandardError)
48
+ _, errors = EventsJp::Connpass.get_events(limit: 100)
49
+ expect(errors).not_to be_empty
49
50
  end
50
51
  end
51
52
  end
@@ -3,37 +3,40 @@ require 'spec_helper'
3
3
 
4
4
  describe 'EventsJp::Doorkeeper' do
5
5
  describe '.convert_response' do
6
- before(:each) do
7
- response = %[[{"event":{"address": "sample"}}]]
8
- @conv_res = EventsJp::Doorkeeper.convert_response(response)
9
- end
10
-
6
+ let!(:response) { %[[{"event":{"address": "sample"}}]] }
11
7
  it 'converts to Array' do
12
- expect(@conv_res.class).to eq(Array)
13
- expect(@conv_res.first.address).to eq('sample')
8
+ results = EventsJp::Doorkeeper.convert_response(response)
9
+ expect(results.class).to eq(Array)
10
+ expect(results.first.address).to eq('sample')
14
11
  end
15
12
  end
16
13
 
17
14
  describe '.get_events' do
18
- before(:each) do
19
- @res = EventsJp::Doorkeeper.get_events(limit: 25)
15
+ it 'returns doorkeeper API results' do
16
+ results, errors = EventsJp::Doorkeeper.get_events(limit: 25)
17
+ expect(errors).to be == []
18
+ expect(results.count).to eq(25)
19
+ expect(results.first.service).to eq('doorkeeper')
20
+ expect(results.first.catch).to be_nil
21
+ expect(results.first.title).to eq('大切な人の未来へ贈る タイムカプセルレター(2017年に再会!アースデイ東京2014企画プロジェクト版)')
22
+ expect(results.first.event_url).to eq('http://asobiba.doorkeeper.jp/events/10448')
23
+ expect(results.first.started_at).to eq(DateTime.parse('2017-04-30T00:00:00.000Z'))
24
+ expect(results.first.ended_at).to eq(DateTime.parse('2017-04-30T01:00:00.000Z'))
25
+ expect(results.first.address).to be_nil
26
+ expect(results.first.place).to be_nil
27
+ expect(results.first.lat).to be_nil
28
+ expect(results.first.lon).to be_nil
29
+ expect(results.first.limit).to eq(500)
30
+ expect(results.first.accepted).to eq(115)
31
+ expect(results.first.waiting).to eq(0)
20
32
  end
33
+ end
21
34
 
22
- it 'returns doorkeeper API results' do
23
- expect(@res.count).to eq(25)
24
- expect(@res.first.service).to eq('doorkeeper')
25
- expect(@res.first.catch).to be_nil
26
- expect(@res.first.title).to eq('大切な人の未来へ贈る タイムカプセルレター(2017年に再会!アースデイ東京2014企画プロジェクト版)')
27
- expect(@res.first.event_url).to eq('http://asobiba.doorkeeper.jp/events/10448')
28
- expect(@res.first.started_at).to eq(DateTime.parse('2017-04-30T00:00:00.000Z'))
29
- expect(@res.first.ended_at).to eq(DateTime.parse('2017-04-30T01:00:00.000Z'))
30
- expect(@res.first.address).to be_nil
31
- expect(@res.first.place).to be_nil
32
- expect(@res.first.lat).to be_nil
33
- expect(@res.first.lon).to be_nil
34
- expect(@res.first.limit).to eq(500)
35
- expect(@res.first.accepted).to eq(115)
36
- expect(@res.first.waiting).to eq(0)
35
+ context 'when raise errors in convert_response method' do
36
+ it 'returns error' do
37
+ allow(EventsJp::Doorkeeper).to receive(:convert_response).and_raise(StandardError)
38
+ _, errors = EventsJp::Doorkeeper.get_events(limit: 100)
39
+ expect(errors).not_to be_empty
37
40
  end
38
41
  end
39
42
  end
@@ -3,49 +3,50 @@ require 'spec_helper'
3
3
 
4
4
  describe 'EventsJp::Zusaar' do
5
5
  describe '.convert_response' do
6
- before(:each) do
7
- response = %[{"event":[{"address":"sample"}]}]
8
- @conv_res = EventsJp::Zusaar.convert_response(response)
9
- end
10
-
6
+ let!(:response) { %[{"event":[{"address":"sample"}]}] }
11
7
  it 'converts to Array' do
12
- expect(@conv_res.class).to eq(Array)
13
- expect(@conv_res.first.address).to eq('sample')
8
+ results = EventsJp::Zusaar.convert_response(response)
9
+ expect(results.class).to eq(Array)
10
+ expect(results.first.address).to eq('sample')
14
11
  end
15
12
  end
16
13
 
17
14
  describe '.get_events' do
18
15
  context 'with keyword' do
19
- before(:each) do
20
- @res = EventsJp::Zusaar.get_events(keyword: 'Ruby', limit: 10)
21
- end
22
-
23
16
  it 'returns conpass API results' do
24
- expect(@res.count).to eq(10)
25
- expect(@res.first.title).to eq('もくもくRuby')
17
+ results, errors = EventsJp::Zusaar.get_events(keyword: 'Ruby', limit: 10)
18
+ expect(errors).to be == []
19
+ expect(results.count).to eq(10)
20
+ expect(results.first.title).to eq('もくもくRuby')
26
21
  end
27
22
  end
28
23
 
29
24
  context 'no keyword' do
30
- before(:each) do
31
- @res = EventsJp::Zusaar.get_events(limit: 100)
25
+ it 'returns zusaar API results' do
26
+ results, errors = EventsJp::Zusaar.get_events(limit: 100)
27
+ expect(errors).to be == []
28
+ expect(results.count).to eq(100)
29
+ expect(results.first.service).to eq('zusaar')
30
+ expect(results.first.title).to eq('イスラム&ハラル市場進出支援セミナー')
31
+ expect(results.first.catch).to eq('〜本当は教えたくない東南アジア”イスラム市場”のビジネスチャンス〜')
32
+ expect(results.first.event_url).to eq('http://www.zusaar.com/event/7667004')
33
+ expect(results.first.started_at).to eq(DateTime.parse('2014-10-11T13:30:00+09:00'))
34
+ expect(results.first.ended_at).to eq(DateTime.parse('2014-10-11T15:30:00+09:00'))
35
+ expect(results.first.address).to eq('東京都千代田区神田鍛冶町3-2-2')
36
+ expect(results.first.place).to eq('エッサム神田ホール')
37
+ expect(results.first.lat).to eq(35.6934894)
38
+ expect(results.first.lon).to eq(139.7712663)
39
+ expect(results.first.limit).to eq(30)
40
+ expect(results.first.accepted).to eq(0)
41
+ expect(results.first.waiting).to eq(0)
32
42
  end
43
+ end
33
44
 
34
- it 'returns zusaar API results' do
35
- expect(@res.count).to eq(100)
36
- expect(@res.first.service).to eq('zusaar')
37
- expect(@res.first.title).to eq('イスラム&ハラル市場進出支援セミナー')
38
- expect(@res.first.catch).to eq('〜本当は教えたくない東南アジア”イスラム市場”のビジネスチャンス〜')
39
- expect(@res.first.event_url).to eq('http://www.zusaar.com/event/7667004')
40
- expect(@res.first.started_at).to eq(DateTime.parse('2014-10-11T13:30:00+09:00'))
41
- expect(@res.first.ended_at).to eq(DateTime.parse('2014-10-11T15:30:00+09:00'))
42
- expect(@res.first.address).to eq('東京都千代田区神田鍛冶町3-2-2')
43
- expect(@res.first.place).to eq('エッサム神田ホール')
44
- expect(@res.first.lat).to eq(35.6934894)
45
- expect(@res.first.lon).to eq(139.7712663)
46
- expect(@res.first.limit).to eq(30)
47
- expect(@res.first.accepted).to eq(0)
48
- expect(@res.first.waiting).to eq(0)
45
+ context 'when raise errors in convert_response method' do
46
+ it 'returns error' do
47
+ allow(EventsJp::Zusaar).to receive(:convert_response).and_raise(StandardError)
48
+ _, errors = EventsJp::Zusaar.get_events(limit: 100)
49
+ expect(errors).not_to be_empty
49
50
  end
50
51
  end
51
52
  end
@@ -4,26 +4,28 @@ require 'spec_helper'
4
4
  describe 'EventsJp::Event' do
5
5
  describe '.get_all' do
6
6
  context 'with keyword' do
7
- before(:each) do
8
- @result = EventsJp.get_events(keyword: 'Ruby', service_limit: 10)
9
- end
10
-
11
7
  it 'return each more than 10 events' do
12
- expect(@result.count).to be > 40
13
- end
14
-
15
- it "doesn't have nil" do
16
- expect(@result.any?{|e| e.nil? }).to be_falsy
8
+ results, errors = EventsJp.get_events(keyword: 'Ruby', service_limit: 10)
9
+ expect(errors).to be == []
10
+ expect(results.count).to be > 40
11
+ expect(results.any?{|e| e.nil? }).to be_falsy
17
12
  end
18
13
  end
19
14
 
20
15
  context 'no keyword' do
21
- before(:each) do
22
- @result = EventsJp.get_events(service_limit: 10)
16
+ it 'return each 100 events' do
17
+ results, errors = EventsJp.get_events(service_limit: 10)
18
+ expect(errors).to be == []
19
+ expect(results.count).to be > 40
23
20
  end
21
+ end
24
22
 
25
- it 'return each 100 events' do
26
- expect(@result.count).to be > 40
23
+ context 'when raise errors in convert_response method' do
24
+ it 'returns error' do
25
+ allow(EventsJp::Atnd).to receive(:convert_response).and_raise(StandardError)
26
+ results, errors = EventsJp.get_events(service_limit: 10)
27
+ expect(errors).not_to be_empty
28
+ expect(results.count).to be > 40
27
29
  end
28
30
  end
29
31
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: events_jp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - morizyun
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-12-17 00:00:00.000000000 Z
11
+ date: 2014-12-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: hashie