caseblocks_api 0.1.2 → 0.2.2

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/Gemfile CHANGED
@@ -4,19 +4,20 @@ source "http://rubygems.org"
4
4
  # gem "activesupport", ">= 2.3.5"
5
5
 
6
6
  gem 'httparty'
7
+ gem 'activesupport'
7
8
 
8
9
  group :development, :test do
9
10
  gem 'pry'
10
11
  gem 'webmock'
12
+ gem 'rspec-given'
11
13
  end
12
14
 
13
15
  # Add dependencies to develop your gem here.
14
16
  # Include everything needed to run rake, tests, features, etc.
15
17
  group :development do
16
- gem "rspec", "~> 2.8.0"
18
+ gem "rspec", "~> 2.11"
17
19
  gem "rdoc", "~> 3.12"
18
20
  gem "bundler"
19
21
  gem "jeweler", "~> 1.8.4"
20
22
  gem 'guard-rspec'
21
- gem 'growl'
22
23
  end
data/Gemfile.lock CHANGED
@@ -1,13 +1,15 @@
1
1
  GEM
2
2
  remote: http://rubygems.org/
3
3
  specs:
4
+ activesupport (3.2.6)
5
+ i18n (~> 0.6)
6
+ multi_json (~> 1.0)
4
7
  addressable (2.2.8)
5
8
  coderay (1.0.7)
6
9
  crack (0.3.1)
7
10
  diff-lcs (1.1.3)
8
11
  ffi (1.0.11)
9
12
  git (1.2.5)
10
- growl (1.0.3)
11
13
  guard (1.2.3)
12
14
  listen (>= 0.4.2)
13
15
  thor (>= 0.14.6)
@@ -16,6 +18,7 @@ GEM
16
18
  httparty (0.8.3)
17
19
  multi_json (~> 1.0)
18
20
  multi_xml
21
+ i18n (0.6.0)
19
22
  jeweler (1.8.4)
20
23
  bundler (~> 1.0)
21
24
  git (>= 1.2.5)
@@ -41,14 +44,16 @@ GEM
41
44
  ffi (>= 0.5.0)
42
45
  rdoc (3.12)
43
46
  json (~> 1.4)
44
- rspec (2.8.0)
45
- rspec-core (~> 2.8.0)
46
- rspec-expectations (~> 2.8.0)
47
- rspec-mocks (~> 2.8.0)
48
- rspec-core (2.8.0)
49
- rspec-expectations (2.8.0)
50
- diff-lcs (~> 1.1.2)
51
- rspec-mocks (2.8.0)
47
+ rspec (2.11.0)
48
+ rspec-core (~> 2.11.0)
49
+ rspec-expectations (~> 2.11.0)
50
+ rspec-mocks (~> 2.11.0)
51
+ rspec-core (2.11.1)
52
+ rspec-expectations (2.11.3)
53
+ diff-lcs (~> 1.1.3)
54
+ rspec-given (2.0.0)
55
+ rspec (> 1.2.8)
56
+ rspec-mocks (2.11.2)
52
57
  slop (2.4.4)
53
58
  thor (0.15.4)
54
59
  webmock (1.8.7)
@@ -59,12 +64,13 @@ PLATFORMS
59
64
  ruby
60
65
 
61
66
  DEPENDENCIES
67
+ activesupport
62
68
  bundler
63
- growl
64
69
  guard-rspec
65
70
  httparty
66
71
  jeweler (~> 1.8.4)
67
72
  pry
68
73
  rdoc (~> 3.12)
69
- rspec (~> 2.8.0)
74
+ rspec (~> 2.11)
75
+ rspec-given
70
76
  webmock
data/README.rdoc CHANGED
@@ -25,3 +25,5 @@ Description goes here.
25
25
  Copyright (c) 2012 EmergeAdapt. See LICENSE.txt for
26
26
  further details.
27
27
 
28
+
29
+
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.2
1
+ 0.2.2
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "caseblocks_api"
8
- s.version = "0.1.2"
8
+ s.version = "0.2.2"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Mark Provan"]
12
- s.date = "2012-08-03"
12
+ s.date = "2012-10-09"
13
13
  s.email = "development@emergeadapt.com"
14
14
  s.extra_rdoc_files = [
15
15
  "LICENSE.txt",
@@ -28,8 +28,15 @@ Gem::Specification.new do |s|
28
28
  "caseblocks_api.gemspec",
29
29
  "lib/caseblocks_api.rb",
30
30
  "lib/caseblocks_api/authentication_exception.rb",
31
+ "lib/caseblocks_api/bucket_results.rb",
32
+ "lib/caseblocks_api/find_by_property.rb",
33
+ "lib/caseblocks_api/update_case.rb",
31
34
  "spec/caseblocks_api_spec.rb",
32
- "spec/spec_helper.rb"
35
+ "spec/lib/caseblocks_api/bucket_results_spec.rb",
36
+ "spec/lib/caseblocks_api/find_case_by_property_spec.rb",
37
+ "spec/lib/caseblocks_api/update_case_spec.rb",
38
+ "spec/spec_helper.rb",
39
+ "spec/support/fake_http_party.rb"
33
40
  ]
34
41
  s.homepage = "http://github.com/EmergeAdapt/caseblocks_api"
35
42
  s.licenses = ["MIT"]
@@ -42,35 +49,38 @@ Gem::Specification.new do |s|
42
49
 
43
50
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
44
51
  s.add_runtime_dependency(%q<httparty>, [">= 0"])
52
+ s.add_runtime_dependency(%q<activesupport>, [">= 0"])
45
53
  s.add_development_dependency(%q<pry>, [">= 0"])
46
54
  s.add_development_dependency(%q<webmock>, [">= 0"])
47
- s.add_development_dependency(%q<rspec>, ["~> 2.8.0"])
55
+ s.add_development_dependency(%q<rspec-given>, [">= 0"])
56
+ s.add_development_dependency(%q<rspec>, ["~> 2.11"])
48
57
  s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
49
58
  s.add_development_dependency(%q<bundler>, [">= 0"])
50
59
  s.add_development_dependency(%q<jeweler>, ["~> 1.8.4"])
51
60
  s.add_development_dependency(%q<guard-rspec>, [">= 0"])
52
- s.add_development_dependency(%q<growl>, [">= 0"])
53
61
  else
54
62
  s.add_dependency(%q<httparty>, [">= 0"])
63
+ s.add_dependency(%q<activesupport>, [">= 0"])
55
64
  s.add_dependency(%q<pry>, [">= 0"])
56
65
  s.add_dependency(%q<webmock>, [">= 0"])
57
- s.add_dependency(%q<rspec>, ["~> 2.8.0"])
66
+ s.add_dependency(%q<rspec-given>, [">= 0"])
67
+ s.add_dependency(%q<rspec>, ["~> 2.11"])
58
68
  s.add_dependency(%q<rdoc>, ["~> 3.12"])
59
69
  s.add_dependency(%q<bundler>, [">= 0"])
60
70
  s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
61
71
  s.add_dependency(%q<guard-rspec>, [">= 0"])
62
- s.add_dependency(%q<growl>, [">= 0"])
63
72
  end
64
73
  else
65
74
  s.add_dependency(%q<httparty>, [">= 0"])
75
+ s.add_dependency(%q<activesupport>, [">= 0"])
66
76
  s.add_dependency(%q<pry>, [">= 0"])
67
77
  s.add_dependency(%q<webmock>, [">= 0"])
68
- s.add_dependency(%q<rspec>, ["~> 2.8.0"])
78
+ s.add_dependency(%q<rspec-given>, [">= 0"])
79
+ s.add_dependency(%q<rspec>, ["~> 2.11"])
69
80
  s.add_dependency(%q<rdoc>, ["~> 3.12"])
70
81
  s.add_dependency(%q<bundler>, [">= 0"])
71
82
  s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
72
83
  s.add_dependency(%q<guard-rspec>, [">= 0"])
73
- s.add_dependency(%q<growl>, [">= 0"])
74
84
  end
75
85
  end
76
86
 
@@ -1,27 +1,32 @@
1
1
  require "httparty"
2
2
  require "json"
3
+ require 'active_support/inflector'
3
4
  require "caseblocks_api/authentication_exception"
4
5
 
5
6
  module CaseblocksAPI
7
+ require 'caseblocks_api/bucket_results'
8
+ require 'caseblocks_api/find_by_property'
9
+ require 'caseblocks_api/update_case'
10
+
6
11
  class Client
7
12
  include HTTParty
8
-
13
+
9
14
  attr_reader :auth_token
10
-
15
+
11
16
  headers "Accept" => "application/json"
12
17
  headers "Content-Type" => "application/json"
13
-
18
+
14
19
  def initialize(email, password, url)
15
20
  self.class.base_uri url
16
- result = self.class.post("/tokens", :body => {email: email, password: password}.to_json)
21
+ result = self.class.post("/tokens", :body => {email: email, password: password}.to_json)
17
22
  if result["message"]
18
23
  raise CaseblocksAPI::AuthenticationException.new(result["message"])
19
24
  else
20
25
  @auth_token = result["token"] if result
21
26
  self.class.default_params("auth_token" => @auth_token)
22
27
  end
23
- end
24
-
28
+ end
29
+
25
30
  def create_case(params, case_type=nil)
26
31
  if case_type
27
32
  case_type_id = get_casetype_id(case_type)
@@ -31,7 +36,7 @@ module CaseblocksAPI
31
36
  end
32
37
  self.class.post("/case_blocks/cases", :body => {:case => params}.to_json)
33
38
  end
34
-
39
+
35
40
  def get_casetype_id(case_type_name)
36
41
  response = self.class.get("/case_blocks/case_types")["case_types"]
37
42
  response.each do |case_type|
@@ -41,6 +46,6 @@ module CaseblocksAPI
41
46
  end
42
47
  nil
43
48
  end
44
-
45
- end
46
- end
49
+
50
+ end
51
+ end
@@ -0,0 +1,22 @@
1
+ require 'caseblocks_api'
2
+ require 'active_support/inflector'
3
+
4
+ module CaseblocksAPI
5
+ class BucketResults
6
+ def initialize(client)
7
+ @client = client
8
+ end
9
+
10
+ def execute(bucket_name)
11
+ bucket_slug = bucket_name.gsub(' ', '').underscore
12
+ results = @client.get("/case_blocks/buckets/#{bucket_slug}/results", query: {page_size: 100})
13
+ results
14
+ end
15
+ end
16
+
17
+ class Client
18
+ def bucket_results(bucket_name)
19
+ BucketResults.new(self.class).execute(bucket_name)
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,20 @@
1
+ require 'caseblocks_api'
2
+ require 'active_support/inflector'
3
+
4
+ module CaseblocksAPI
5
+ class FindByProperty
6
+ def initialize(client)
7
+ @client = client
8
+ end
9
+
10
+ def execute(case_type, property_name, value)
11
+ @client.get("/case_blocks/#{case_type}", {query: {search: true, property: property_name, value: value}})
12
+ end
13
+ end
14
+
15
+ class Client
16
+ def find_by_property(case_type, property_name, value)
17
+ FindByProperty.new(self.class).execute(case_type, property_name, value)
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,22 @@
1
+ require 'caseblocks_api'
2
+ require 'active_support/inflector'
3
+
4
+ module CaseblocksAPI
5
+ class UpdateCase
6
+ def initialize(client)
7
+ @client = client
8
+ end
9
+
10
+ def execute(case_type, id, params)
11
+ case_type_name = case_type.singularize
12
+ url = "/case_blocks/#{case_type_name}/#{id}"
13
+ @client.put(url, {:body => {case_type_name => params}.to_json})
14
+ end
15
+ end
16
+
17
+ class Client
18
+ def update_case(case_type, id, params)
19
+ UpdateCase.new(self.class).execute(case_type, id, params)
20
+ end
21
+ end
22
+ end
@@ -11,7 +11,7 @@ describe "CaseblocksApi" do
11
11
  caseblocks.auth_token.should eql "some_token"
12
12
  end
13
13
  end
14
-
14
+
15
15
  context "when I don't have an account" do
16
16
  it "should raise an error" do
17
17
  CaseblocksAPI::Client.stub(:post).and_return({"message" => "You must have an account to do that"})
@@ -19,7 +19,7 @@ describe "CaseblocksApi" do
19
19
  end
20
20
  end
21
21
  end
22
-
22
+
23
23
  describe "when i'm authorised with caseblocks" do
24
24
  before do
25
25
  CaseblocksAPI::Client.stub(:post).and_return({"token" => "some_token"})
@@ -27,13 +27,13 @@ describe "CaseblocksApi" do
27
27
  password = "password1"
28
28
  @caseblocks = CaseblocksAPI::Client.new(username, password, "http://localhost:3000")
29
29
  end
30
-
30
+
31
31
  it "should return me the requested case type" do
32
32
  @caseblocks.stub(:get_casetype_id).and_return(2)
33
33
  case_type = @caseblocks.get_casetype_id("Some Case type")
34
34
  case_type.should eql 2
35
35
  end
36
-
36
+
37
37
  it "should let me create a case" do
38
38
  CaseblocksAPI::Client.stub(:post).and_return({"token" => "some_token"})
39
39
  params = {"title" => "This is a Case!", "due_at" => Time.now + 1000, "owned_by_id" => 1, "owned_by_type" => "CaseBlocks::User"}
@@ -42,5 +42,4 @@ describe "CaseblocksApi" do
42
42
  response.should include("case")
43
43
  end
44
44
  end
45
-
46
45
  end
@@ -0,0 +1,18 @@
1
+ require 'spec_helper'
2
+
3
+
4
+ describe CaseblocksAPI::BucketResults do
5
+
6
+ Given(:client){ FakeHttpParty.new }
7
+ Given(:bucket_name){ "A Bucket" }
8
+ Given(:bucket_result){ CaseblocksAPI::BucketResults.new(client) }
9
+ When(:result){ bucket_result.execute(bucket_name) }
10
+ Then{ expect(result).to eql client.result }
11
+ Then{ expect(client.requested_url).to eql '/case_blocks/buckets/a_bucket/results' }
12
+ Then{ expect(client.params).to eql(query: {page_size: 100})}
13
+
14
+ end
15
+
16
+ def test
17
+ [].each { |a| j}
18
+ end
@@ -0,0 +1,16 @@
1
+ require 'spec_helper'
2
+
3
+
4
+ describe CaseblocksAPI::FindByProperty do
5
+
6
+ Given(:client){ FakeHttpParty.new }
7
+ Given(:property_name){"order_number"}
8
+ Given(:value){ "2000391" }
9
+ Given(:case_type){'tyre_shopper_order'}
10
+ Given(:find_by_property){ CaseblocksAPI::FindByProperty.new(client) }
11
+ When(:result){ find_by_property.execute(case_type, property_name, value) }
12
+ Then{ expect(result).to eql client.result}
13
+ Then{ expect(client.requested_url).to eql '/case_blocks/tyre_shopper_order' }
14
+ Then{ expect(client.params).to eql({query: {search: true, property: property_name, value: value}}) }
15
+
16
+ end
@@ -0,0 +1,14 @@
1
+ require 'spec_helper'
2
+
3
+ describe CaseblocksAPI::BucketResults do
4
+
5
+ Given(:client){ FakeHttpParty.new }
6
+ Given(:update_case){ CaseblocksAPI::UpdateCase.new(client) }
7
+ Given(:updated_params){ {:current_state => 'yagni' } }
8
+ Given(:case_type){'tyre_shopper_orders'}
9
+ Given(:singular_case_type){'tyre_shopper_orders'.singularize }
10
+ Given(:id){ 'a_id' }
11
+ When{ update_case.execute(case_type, id, updated_params) }
12
+ Then{ expect(client.requested_url).to eql "/case_blocks/#{singular_case_type}/#{id}" }
13
+ Then{ expect(client.params).to eql({body: {tyre_shopper_order: updated_params}.to_json }) }
14
+ end
data/spec/spec_helper.rb CHANGED
@@ -1,13 +1,9 @@
1
- $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
2
- $LOAD_PATH.unshift(File.dirname(__FILE__))
3
1
  require 'rspec'
2
+ require 'rspec/given'
4
3
  require 'caseblocks_api'
5
- #require 'webmock/rspec'
6
4
 
7
- # Requires supporting files with custom matchers and macros, etc,
8
- # in ./support/ and its subdirectories.
9
5
  Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f}
10
6
 
11
7
  RSpec.configure do |config|
12
-
8
+
13
9
  end
@@ -0,0 +1,18 @@
1
+ class FakeHttpParty
2
+ attr_reader :requested_url, :params
3
+ def get(url, params={})
4
+ @requested_url = url
5
+ @params = params
6
+ result
7
+ end
8
+
9
+ def put(url, params)
10
+ @requested_url = url
11
+ @params = params
12
+ end
13
+
14
+ def result
15
+ {"title" => "Some special title"}
16
+ end
17
+
18
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: caseblocks_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.2.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-08-03 00:00:00.000000000 Z
12
+ date: 2012-10-09 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: httparty
16
- requirement: &70218513689480 !ruby/object:Gem::Requirement
16
+ requirement: &70165094843440 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,21 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70218513689480
24
+ version_requirements: *70165094843440
25
+ - !ruby/object:Gem::Dependency
26
+ name: activesupport
27
+ requirement: &70165094842580 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: *70165094842580
25
36
  - !ruby/object:Gem::Dependency
26
37
  name: pry
27
- requirement: &70218513688760 !ruby/object:Gem::Requirement
38
+ requirement: &70165094841800 !ruby/object:Gem::Requirement
28
39
  none: false
29
40
  requirements:
30
41
  - - ! '>='
@@ -32,10 +43,21 @@ dependencies:
32
43
  version: '0'
33
44
  type: :development
34
45
  prerelease: false
35
- version_requirements: *70218513688760
46
+ version_requirements: *70165094841800
36
47
  - !ruby/object:Gem::Dependency
37
48
  name: webmock
38
- requirement: &70218513704240 !ruby/object:Gem::Requirement
49
+ requirement: &70165094841040 !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ type: :development
56
+ prerelease: false
57
+ version_requirements: *70165094841040
58
+ - !ruby/object:Gem::Dependency
59
+ name: rspec-given
60
+ requirement: &70165090595620 !ruby/object:Gem::Requirement
39
61
  none: false
40
62
  requirements:
41
63
  - - ! '>='
@@ -43,21 +65,21 @@ dependencies:
43
65
  version: '0'
44
66
  type: :development
45
67
  prerelease: false
46
- version_requirements: *70218513704240
68
+ version_requirements: *70165090595620
47
69
  - !ruby/object:Gem::Dependency
48
70
  name: rspec
49
- requirement: &70218513703480 !ruby/object:Gem::Requirement
71
+ requirement: &70165090594780 !ruby/object:Gem::Requirement
50
72
  none: false
51
73
  requirements:
52
74
  - - ~>
53
75
  - !ruby/object:Gem::Version
54
- version: 2.8.0
76
+ version: '2.11'
55
77
  type: :development
56
78
  prerelease: false
57
- version_requirements: *70218513703480
79
+ version_requirements: *70165090594780
58
80
  - !ruby/object:Gem::Dependency
59
81
  name: rdoc
60
- requirement: &70218513702820 !ruby/object:Gem::Requirement
82
+ requirement: &70165090593800 !ruby/object:Gem::Requirement
61
83
  none: false
62
84
  requirements:
63
85
  - - ~>
@@ -65,10 +87,10 @@ dependencies:
65
87
  version: '3.12'
66
88
  type: :development
67
89
  prerelease: false
68
- version_requirements: *70218513702820
90
+ version_requirements: *70165090593800
69
91
  - !ruby/object:Gem::Dependency
70
92
  name: bundler
71
- requirement: &70218513702060 !ruby/object:Gem::Requirement
93
+ requirement: &70165090593240 !ruby/object:Gem::Requirement
72
94
  none: false
73
95
  requirements:
74
96
  - - ! '>='
@@ -76,10 +98,10 @@ dependencies:
76
98
  version: '0'
77
99
  type: :development
78
100
  prerelease: false
79
- version_requirements: *70218513702060
101
+ version_requirements: *70165090593240
80
102
  - !ruby/object:Gem::Dependency
81
103
  name: jeweler
82
- requirement: &70218513701380 !ruby/object:Gem::Requirement
104
+ requirement: &70165090592480 !ruby/object:Gem::Requirement
83
105
  none: false
84
106
  requirements:
85
107
  - - ~>
@@ -87,21 +109,10 @@ dependencies:
87
109
  version: 1.8.4
88
110
  type: :development
89
111
  prerelease: false
90
- version_requirements: *70218513701380
112
+ version_requirements: *70165090592480
91
113
  - !ruby/object:Gem::Dependency
92
114
  name: guard-rspec
93
- requirement: &70218513700520 !ruby/object:Gem::Requirement
94
- none: false
95
- requirements:
96
- - - ! '>='
97
- - !ruby/object:Gem::Version
98
- version: '0'
99
- type: :development
100
- prerelease: false
101
- version_requirements: *70218513700520
102
- - !ruby/object:Gem::Dependency
103
- name: growl
104
- requirement: &70218513698660 !ruby/object:Gem::Requirement
115
+ requirement: &70165090591760 !ruby/object:Gem::Requirement
105
116
  none: false
106
117
  requirements:
107
118
  - - ! '>='
@@ -109,7 +120,7 @@ dependencies:
109
120
  version: '0'
110
121
  type: :development
111
122
  prerelease: false
112
- version_requirements: *70218513698660
123
+ version_requirements: *70165090591760
113
124
  description:
114
125
  email: development@emergeadapt.com
115
126
  executables: []
@@ -130,8 +141,15 @@ files:
130
141
  - caseblocks_api.gemspec
131
142
  - lib/caseblocks_api.rb
132
143
  - lib/caseblocks_api/authentication_exception.rb
144
+ - lib/caseblocks_api/bucket_results.rb
145
+ - lib/caseblocks_api/find_by_property.rb
146
+ - lib/caseblocks_api/update_case.rb
133
147
  - spec/caseblocks_api_spec.rb
148
+ - spec/lib/caseblocks_api/bucket_results_spec.rb
149
+ - spec/lib/caseblocks_api/find_case_by_property_spec.rb
150
+ - spec/lib/caseblocks_api/update_case_spec.rb
134
151
  - spec/spec_helper.rb
152
+ - spec/support/fake_http_party.rb
135
153
  homepage: http://github.com/EmergeAdapt/caseblocks_api
136
154
  licenses:
137
155
  - MIT
@@ -147,7 +165,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
147
165
  version: '0'
148
166
  segments:
149
167
  - 0
150
- hash: -981333271365330474
168
+ hash: -4358537317869269911
151
169
  required_rubygems_version: !ruby/object:Gem::Requirement
152
170
  none: false
153
171
  requirements: