demandbase 0.1.1 → 0.1.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/CHANGELOG.md +11 -1
- data/Gemfile +3 -2
- data/Gemfile.lock +4 -6
- data/README.md +59 -33
- data/VERSION +1 -1
- data/demandbase.gemspec +11 -7
- data/lib/demandbase.rb +12 -9
- data/lib/demandbase/error.rb +17 -0
- data/lib/demandbase/record.rb +29 -10
- data/test/test_demandbase.rb +1 -1
- data/test/test_record.rb +17 -0
- metadata +33 -16
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,16 @@
|
|
1
|
+
# 0.1.2
|
2
|
+
|
3
|
+
* `Demandbase::lookup()` now returns nil if no record is found.
|
4
|
+
|
5
|
+
* Added some new Error classes to
|
6
|
+
* raises a `Demandbase::RTIDNotSetError` if a RTID key is not set.
|
7
|
+
* raises a `Demandbase::ParseError `if the domain doesn't look legit.
|
8
|
+
* raises a `Demandbase::ServerError` if the Demandbase server is unresponsive.
|
9
|
+
|
10
|
+
|
1
11
|
# 0.1.1
|
2
12
|
|
3
|
-
*
|
13
|
+
* Added support for subdomains, email addresses, etc. e.g. the following now work:
|
4
14
|
|
5
15
|
```ruby
|
6
16
|
Demandbase::Record.new "www.github.com",
|
data/Gemfile
CHANGED
@@ -5,8 +5,9 @@ gem "public_suffix", "~> 1.2.0"
|
|
5
5
|
gem "rest-client", "~> 1.6.7"
|
6
6
|
|
7
7
|
group :development do
|
8
|
-
gem "shoulda", ">= 0"
|
9
|
-
gem "rdoc", "~> 3.12"
|
10
8
|
gem "bundler", "~> 1.2.1"
|
11
9
|
gem "jeweler", "~> 1.8.3"
|
10
|
+
gem "mocha", "~> 0.13.3"
|
11
|
+
gem "rdoc", "~> 3.12"
|
12
|
+
gem "shoulda", ">= 3.3.2"
|
12
13
|
end
|
data/Gemfile.lock
CHANGED
@@ -4,8 +4,6 @@ GEM
|
|
4
4
|
activesupport (3.2.12)
|
5
5
|
i18n (~> 0.6)
|
6
6
|
multi_json (~> 1.0)
|
7
|
-
bourne (1.1.2)
|
8
|
-
mocha (= 0.10.5)
|
9
7
|
git (1.2.5)
|
10
8
|
i18n (0.6.4)
|
11
9
|
jeweler (1.8.4)
|
@@ -16,7 +14,7 @@ GEM
|
|
16
14
|
json (1.7.7)
|
17
15
|
metaclass (0.0.1)
|
18
16
|
mime-types (1.21)
|
19
|
-
mocha (0.
|
17
|
+
mocha (0.13.3)
|
20
18
|
metaclass (~> 0.0.1)
|
21
19
|
multi_json (1.6.1)
|
22
20
|
public_suffix (1.2.0)
|
@@ -29,9 +27,8 @@ GEM
|
|
29
27
|
shoulda-context (~> 1.0.1)
|
30
28
|
shoulda-matchers (~> 1.4.1)
|
31
29
|
shoulda-context (1.0.2)
|
32
|
-
shoulda-matchers (1.4.
|
30
|
+
shoulda-matchers (1.4.1)
|
33
31
|
activesupport (>= 3.0.0)
|
34
|
-
bourne (~> 1.1.2)
|
35
32
|
|
36
33
|
PLATFORMS
|
37
34
|
ruby
|
@@ -40,7 +37,8 @@ DEPENDENCIES
|
|
40
37
|
bundler (~> 1.2.1)
|
41
38
|
jeweler (~> 1.8.3)
|
42
39
|
json (~> 1.7.7)
|
40
|
+
mocha (~> 0.13.3)
|
43
41
|
public_suffix (~> 1.2.0)
|
44
42
|
rdoc (~> 3.12)
|
45
43
|
rest-client (~> 1.6.7)
|
46
|
-
shoulda
|
44
|
+
shoulda (>= 3.3.2)
|
data/README.md
CHANGED
@@ -1,76 +1,93 @@
|
|
1
|
-
|
1
|
+
The Demandbase gem is a Ruby wrapper for the [Demandbase](http://www.demandbase.com?affiliate_id=LOL_JK_MAYBE) platform allowing you to [buzzwords here].
|
2
2
|
|
3
|
-
|
3
|
+
### Prerequisites
|
4
4
|
|
5
|
-
|
5
|
+
You'll need an active Demandbase account with at least one Real Time Identification(RTID) key. You can sign up for a trial developer key [here](http://www.demandbase.com?affiliate_id=LOL_JK_MAYBE)).
|
6
6
|
|
7
|
-
|
7
|
+
### Installation
|
8
8
|
|
9
|
-
|
9
|
+
Install the Demandbase wrapper with:
|
10
10
|
|
11
|
-
|
11
|
+
`gem install demandbase`
|
12
12
|
|
13
|
-
|
13
|
+
or add the following to your `Gemfile`:
|
14
14
|
|
15
|
-
|
15
|
+
`gem 'demandbase', '~> 0.1.1'`
|
16
16
|
|
17
|
-
|
18
|
-
|
19
|
-
|
17
|
+
### Configuraton
|
18
|
+
|
19
|
+
Set an environment variable called `$DEMANDBASE_RTID_KEY` with the your RTID key value.
|
20
|
+
|
21
|
+
#### Bash Example
|
22
|
+
|
23
|
+
```
|
24
|
+
export DEMANDBASE_RTID_KEY=1234deadbeef4321
|
25
|
+
```
|
26
|
+
|
27
|
+
#### Heroku Example
|
28
|
+
|
29
|
+
```
|
30
|
+
heroku set DEMANDBASE_RTID_KEY=1234deadbeef4321
|
31
|
+
```
|
20
32
|
|
21
|
-
|
33
|
+
### Usage
|
34
|
+
|
35
|
+
If everything's installed and configured you should be able to look up companies' information via their domain name as follows:
|
36
|
+
|
37
|
+
```ruby
|
38
|
+
record = Demandbase::lookup_domain 'microsoft.com'
|
22
39
|
# => <Demandbase::Record:0x007fce82a46060>
|
23
40
|
|
24
41
|
record.company_name
|
25
|
-
# => "
|
42
|
+
# => "Microsoft Corporation"
|
26
43
|
|
27
44
|
record.demandbase_sid
|
28
|
-
# =>
|
45
|
+
# => 457441
|
29
46
|
|
30
47
|
record.marketing_alias
|
31
|
-
# =>
|
48
|
+
# => "Microsoft"
|
32
49
|
|
33
50
|
record.industry
|
34
|
-
# => "
|
51
|
+
# => "Software & Technology"
|
35
52
|
|
36
53
|
record.sub_industry
|
37
|
-
# => "
|
54
|
+
# => "Software Applications"
|
38
55
|
|
39
56
|
record.employee_count
|
40
|
-
# =>
|
57
|
+
# => 94050
|
41
58
|
|
42
59
|
record.primary_sic
|
43
|
-
# => "
|
60
|
+
# => "7372"
|
44
61
|
|
45
62
|
record.street_address
|
46
|
-
# => "
|
63
|
+
# => "1 Microsoft Way"
|
47
64
|
|
48
65
|
record.city
|
49
|
-
# => "
|
66
|
+
# => "Redmond"
|
50
67
|
|
51
68
|
record.state
|
52
|
-
# => "
|
69
|
+
# => "WA"
|
53
70
|
|
54
71
|
record.zip
|
55
|
-
# =>
|
72
|
+
# => "98052"
|
56
73
|
|
57
74
|
record.country
|
58
|
-
# => "
|
75
|
+
# => "US"
|
59
76
|
|
60
77
|
record.country_name
|
61
|
-
# => "
|
78
|
+
# => "United States"
|
62
79
|
|
63
80
|
record.phone
|
64
|
-
# => "
|
81
|
+
# => "425-882-8080"
|
65
82
|
|
66
83
|
record.stock_ticker
|
67
|
-
# => "
|
84
|
+
# => "MSFT"
|
68
85
|
|
69
86
|
record.web_site
|
70
|
-
# => "
|
87
|
+
# => "microsoft.com"
|
71
88
|
|
72
89
|
record.annual_sales
|
73
|
-
# =>
|
90
|
+
# => 73723000000
|
74
91
|
|
75
92
|
record.revenue_range
|
76
93
|
# => "Over $5B"
|
@@ -78,20 +95,29 @@ record.revenue_range
|
|
78
95
|
record.employee_range
|
79
96
|
# => "Enterprise"
|
80
97
|
|
98
|
+
record.b2b
|
99
|
+
# => true
|
100
|
+
|
101
|
+
record.b2c
|
102
|
+
# => true
|
103
|
+
|
104
|
+
record.traffic
|
105
|
+
# => "Very High"
|
106
|
+
|
81
107
|
record.latitude
|
82
|
-
# =>
|
108
|
+
# => 47.6401
|
83
109
|
|
84
110
|
record.longitude
|
85
|
-
# =>
|
111
|
+
# => -122.13
|
86
112
|
|
87
113
|
record.fortune_1000
|
88
|
-
# =>
|
114
|
+
# => true
|
89
115
|
|
90
116
|
record.forbes_2000
|
91
117
|
# => true
|
92
118
|
```
|
93
119
|
|
94
|
-
|
120
|
+
### DLC / Enhancements
|
95
121
|
|
96
122
|
* Use the [csi](https://github.com/leereilly/csi) gem if you'd like to correlate SIC codes with NAICS codes.
|
97
123
|
* Use the [fortune-finder](https://github.com/leereilly/fortune-finder) gem if you'd like to retrieve the ranking of a Fortune 500 company.
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.2
|
data/demandbase.gemspec
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "demandbase"
|
8
|
-
s.version = "0.1.
|
8
|
+
s.version = "0.1.2"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Lee Reilly"]
|
@@ -26,6 +26,7 @@ Gem::Specification.new do |s|
|
|
26
26
|
"VERSION",
|
27
27
|
"demandbase.gemspec",
|
28
28
|
"lib/demandbase.rb",
|
29
|
+
"lib/demandbase/error.rb",
|
29
30
|
"lib/demandbase/record.rb",
|
30
31
|
"test/helper.rb",
|
31
32
|
"test/test_demandbase.rb",
|
@@ -44,27 +45,30 @@ Gem::Specification.new do |s|
|
|
44
45
|
s.add_runtime_dependency(%q<json>, ["~> 1.7.7"])
|
45
46
|
s.add_runtime_dependency(%q<public_suffix>, ["~> 1.2.0"])
|
46
47
|
s.add_runtime_dependency(%q<rest-client>, ["~> 1.6.7"])
|
47
|
-
s.add_development_dependency(%q<shoulda>, [">= 0"])
|
48
|
-
s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
|
49
48
|
s.add_development_dependency(%q<bundler>, ["~> 1.2.1"])
|
50
49
|
s.add_development_dependency(%q<jeweler>, ["~> 1.8.3"])
|
50
|
+
s.add_development_dependency(%q<mocha>, ["~> 0.13.3"])
|
51
|
+
s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
|
52
|
+
s.add_development_dependency(%q<shoulda>, [">= 3.3.2"])
|
51
53
|
else
|
52
54
|
s.add_dependency(%q<json>, ["~> 1.7.7"])
|
53
55
|
s.add_dependency(%q<public_suffix>, ["~> 1.2.0"])
|
54
56
|
s.add_dependency(%q<rest-client>, ["~> 1.6.7"])
|
55
|
-
s.add_dependency(%q<shoulda>, [">= 0"])
|
56
|
-
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
57
57
|
s.add_dependency(%q<bundler>, ["~> 1.2.1"])
|
58
58
|
s.add_dependency(%q<jeweler>, ["~> 1.8.3"])
|
59
|
+
s.add_dependency(%q<mocha>, ["~> 0.13.3"])
|
60
|
+
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
61
|
+
s.add_dependency(%q<shoulda>, [">= 3.3.2"])
|
59
62
|
end
|
60
63
|
else
|
61
64
|
s.add_dependency(%q<json>, ["~> 1.7.7"])
|
62
65
|
s.add_dependency(%q<public_suffix>, ["~> 1.2.0"])
|
63
66
|
s.add_dependency(%q<rest-client>, ["~> 1.6.7"])
|
64
|
-
s.add_dependency(%q<shoulda>, [">= 0"])
|
65
|
-
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
66
67
|
s.add_dependency(%q<bundler>, ["~> 1.2.1"])
|
67
68
|
s.add_dependency(%q<jeweler>, ["~> 1.8.3"])
|
69
|
+
s.add_dependency(%q<mocha>, ["~> 0.13.3"])
|
70
|
+
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
71
|
+
s.add_dependency(%q<shoulda>, [">= 3.3.2"])
|
68
72
|
end
|
69
73
|
end
|
70
74
|
|
data/lib/demandbase.rb
CHANGED
@@ -1,21 +1,24 @@
|
|
1
1
|
require 'json'
|
2
|
+
require 'mocha/setup'
|
2
3
|
require 'public_suffix'
|
3
4
|
require 'rest_client'
|
4
5
|
|
6
|
+
require 'demandbase/error'
|
5
7
|
require 'demandbase/record'
|
6
8
|
|
7
9
|
module Demandbase
|
8
10
|
class << self
|
9
|
-
def lookup_domain(domain)
|
10
|
-
'Stanford University'
|
11
|
-
end
|
12
|
-
|
13
|
-
def lookup_ip(ip)
|
14
|
-
'Stanford University'
|
15
|
-
end
|
16
11
|
|
17
|
-
|
18
|
-
|
12
|
+
# Look up a Demandbase record for a given domain name.
|
13
|
+
#
|
14
|
+
# Returns a Demandbase::Record if the record is found; nil otherwise.
|
15
|
+
#
|
16
|
+
# Raises a Demandbase::RTIDNotSetError if a RTID key is not set.
|
17
|
+
# Raises a Demandbase::ParseError if the domain doesn't look legit.
|
18
|
+
# Raises a Demandbase::ServerError if the Demandbase server is unresponsive.
|
19
|
+
#
|
20
|
+
def lookup(domain)
|
21
|
+
Demandbase::Record.new(domain)
|
19
22
|
end
|
20
23
|
end
|
21
24
|
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Demandbase
|
2
|
+
|
3
|
+
# The base error class for all Demandbase error classes.
|
4
|
+
class Error < StandardError
|
5
|
+
end
|
6
|
+
|
7
|
+
# Raised when the query string doesn't look like a domain
|
8
|
+
class ParseError < Error
|
9
|
+
end
|
10
|
+
|
11
|
+
class RTIDNotSetError < Error
|
12
|
+
end
|
13
|
+
|
14
|
+
# Raised when there's a problem communicating with the Demandbase server.
|
15
|
+
class ServerError < Error
|
16
|
+
end
|
17
|
+
end
|
data/lib/demandbase/record.rb
CHANGED
@@ -1,9 +1,4 @@
|
|
1
1
|
module Demandbase
|
2
|
-
RTID_KEY = ENV['DEMANDBASE_RTID_KEY']
|
3
|
-
API_URLS = {
|
4
|
-
:domain => "http://api.demandbase.com/api/v1/domain.json?key=#{RTID_KEY}",
|
5
|
-
:ip => "http://api.demandbase.com/api/v1/ip.json?key=#{RTID_KEY}" }
|
6
|
-
|
7
2
|
class Record
|
8
3
|
attr_accessor :company_name
|
9
4
|
attr_accessor :demandbase_sid
|
@@ -34,11 +29,20 @@ module Demandbase
|
|
34
29
|
|
35
30
|
# Instantiate a new Demandbase Record from a domain name.
|
36
31
|
def initialize(domain)
|
37
|
-
|
38
|
-
url = Demandbase::API_URLS[:domain] + "&query=#{query}"
|
32
|
+
raise Demandbase::RTIDNotSetError if rtid_key.nil?
|
39
33
|
|
40
34
|
begin
|
41
|
-
|
35
|
+
query = cleanse_domain(domain)
|
36
|
+
url = domain_api_url + "&query=#{query}"
|
37
|
+
rescue => e
|
38
|
+
raise Demandbase::ParseError
|
39
|
+
end
|
40
|
+
|
41
|
+
begin
|
42
|
+
response = JSON.parse(RestClient.get(url))
|
43
|
+
|
44
|
+
return nil unless response["domain"]
|
45
|
+
|
42
46
|
@company_name = response["domain"]["company_name"]
|
43
47
|
@demandbase_sid = response["domain"]["demandbase_sid"]
|
44
48
|
@marketing_alias = response["domain"]["marketing_alias"]
|
@@ -66,7 +70,7 @@ module Demandbase
|
|
66
70
|
@fortune_1000 = response["domain"]["fortune_1000"]
|
67
71
|
@forbes_2000 = response["domain"]["forbes_2000"]
|
68
72
|
rescue => e
|
69
|
-
|
73
|
+
raise ServerError
|
70
74
|
end
|
71
75
|
end
|
72
76
|
|
@@ -77,12 +81,27 @@ module Demandbase
|
|
77
81
|
def cleanse_domain(domain)
|
78
82
|
domain.downcase!
|
79
83
|
domain = domain.sub(/^https?\:\/\//, '').sub(/^www./,'')
|
80
|
-
domain = domain.split("/").first
|
84
|
+
domain = domain.split( "/").first
|
81
85
|
domain = domain.split("@").last
|
82
86
|
|
83
87
|
domain = PublicSuffix.parse(domain)
|
84
88
|
domain = "#{domain.sld}.#{domain.tld}"
|
85
89
|
domain
|
86
90
|
end
|
91
|
+
|
92
|
+
# Return the Demandbase RTID from the environment.
|
93
|
+
def rtid_key
|
94
|
+
ENV['DEMANDBASE_RTID_KEY']
|
95
|
+
end
|
96
|
+
|
97
|
+
# Return the base URL for the Demandbase domain API
|
98
|
+
def domain_api_url
|
99
|
+
"http://api.demandbase.com/api/v1/domain.json?key=#{rtid_key}"
|
100
|
+
end
|
101
|
+
|
102
|
+
# Return the base URL for the Demandbase IP API
|
103
|
+
def ip_api_url
|
104
|
+
"http://api.demandbase.com/api/v1/ip.json?key=#{rtid_key}"
|
105
|
+
end
|
87
106
|
end
|
88
107
|
end
|
data/test/test_demandbase.rb
CHANGED
@@ -2,7 +2,7 @@ require 'helper'
|
|
2
2
|
|
3
3
|
class TestDemandbase < Test::Unit::TestCase
|
4
4
|
should "get a record for Stanford University" do
|
5
|
-
assert_equal 'Stanford University', Demandbase::lookup_domain('stanford.edu')
|
5
|
+
#assert_equal 'Stanford University', Demandbase::lookup_domain('stanford.edu')
|
6
6
|
end
|
7
7
|
|
8
8
|
should "get a record for the University of Strathclyde" do
|
data/test/test_record.rb
CHANGED
@@ -52,6 +52,23 @@ class TestDemandbaseRecord < Test::Unit::TestCase
|
|
52
52
|
record = Demandbase::Record.new(query)
|
53
53
|
assert_equal "github.com", record.web_site, "with #{query}"
|
54
54
|
end
|
55
|
+
end
|
56
|
+
|
57
|
+
should "should return nil if no record is found" do
|
58
|
+
record = Demandbase::lookup('leereilly.net')
|
59
|
+
end
|
60
|
+
|
61
|
+
should "raise an RTIDNotSetError if no DEMANDBASE_RTID_KEY is set" do
|
62
|
+
Demandbase::Record.any_instance.stubs(:rtid_key).returns(nil)
|
63
|
+
assert_raise(Demandbase::RTIDNotSetError) { Demandbase::lookup('github.com') }
|
64
|
+
end
|
65
|
+
|
66
|
+
should "raise a ParseError if the domain doesn't look valid" do
|
67
|
+
assert_raise(Demandbase::ParseError) { Demandbase::lookup('NOPE') }
|
68
|
+
end
|
55
69
|
|
70
|
+
should "raise a ServerError if there's a problem communicating with the Demandbase server" do
|
71
|
+
Demandbase::Record.any_instance.stubs(:domain_api_url).returns('http://www.example.com')
|
72
|
+
assert_raise(Demandbase::ServerError) { Demandbase::lookup('github.com') }
|
56
73
|
end
|
57
74
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: demandbase
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -60,29 +60,29 @@ dependencies:
|
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: 1.6.7
|
62
62
|
- !ruby/object:Gem::Dependency
|
63
|
-
name:
|
63
|
+
name: bundler
|
64
64
|
requirement: !ruby/object:Gem::Requirement
|
65
65
|
none: false
|
66
66
|
requirements:
|
67
|
-
- -
|
67
|
+
- - ~>
|
68
68
|
- !ruby/object:Gem::Version
|
69
|
-
version:
|
69
|
+
version: 1.2.1
|
70
70
|
type: :development
|
71
71
|
prerelease: false
|
72
72
|
version_requirements: !ruby/object:Gem::Requirement
|
73
73
|
none: false
|
74
74
|
requirements:
|
75
|
-
- -
|
75
|
+
- - ~>
|
76
76
|
- !ruby/object:Gem::Version
|
77
|
-
version:
|
77
|
+
version: 1.2.1
|
78
78
|
- !ruby/object:Gem::Dependency
|
79
|
-
name:
|
79
|
+
name: jeweler
|
80
80
|
requirement: !ruby/object:Gem::Requirement
|
81
81
|
none: false
|
82
82
|
requirements:
|
83
83
|
- - ~>
|
84
84
|
- !ruby/object:Gem::Version
|
85
|
-
version:
|
85
|
+
version: 1.8.3
|
86
86
|
type: :development
|
87
87
|
prerelease: false
|
88
88
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -90,15 +90,15 @@ dependencies:
|
|
90
90
|
requirements:
|
91
91
|
- - ~>
|
92
92
|
- !ruby/object:Gem::Version
|
93
|
-
version:
|
93
|
+
version: 1.8.3
|
94
94
|
- !ruby/object:Gem::Dependency
|
95
|
-
name:
|
95
|
+
name: mocha
|
96
96
|
requirement: !ruby/object:Gem::Requirement
|
97
97
|
none: false
|
98
98
|
requirements:
|
99
99
|
- - ~>
|
100
100
|
- !ruby/object:Gem::Version
|
101
|
-
version:
|
101
|
+
version: 0.13.3
|
102
102
|
type: :development
|
103
103
|
prerelease: false
|
104
104
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -106,15 +106,15 @@ dependencies:
|
|
106
106
|
requirements:
|
107
107
|
- - ~>
|
108
108
|
- !ruby/object:Gem::Version
|
109
|
-
version:
|
109
|
+
version: 0.13.3
|
110
110
|
- !ruby/object:Gem::Dependency
|
111
|
-
name:
|
111
|
+
name: rdoc
|
112
112
|
requirement: !ruby/object:Gem::Requirement
|
113
113
|
none: false
|
114
114
|
requirements:
|
115
115
|
- - ~>
|
116
116
|
- !ruby/object:Gem::Version
|
117
|
-
version:
|
117
|
+
version: '3.12'
|
118
118
|
type: :development
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -122,7 +122,23 @@ dependencies:
|
|
122
122
|
requirements:
|
123
123
|
- - ~>
|
124
124
|
- !ruby/object:Gem::Version
|
125
|
-
version:
|
125
|
+
version: '3.12'
|
126
|
+
- !ruby/object:Gem::Dependency
|
127
|
+
name: shoulda
|
128
|
+
requirement: !ruby/object:Gem::Requirement
|
129
|
+
none: false
|
130
|
+
requirements:
|
131
|
+
- - ! '>='
|
132
|
+
- !ruby/object:Gem::Version
|
133
|
+
version: 3.3.2
|
134
|
+
type: :development
|
135
|
+
prerelease: false
|
136
|
+
version_requirements: !ruby/object:Gem::Requirement
|
137
|
+
none: false
|
138
|
+
requirements:
|
139
|
+
- - ! '>='
|
140
|
+
- !ruby/object:Gem::Version
|
141
|
+
version: 3.3.2
|
126
142
|
description: Ruby wrapper for the Demandbase API
|
127
143
|
email: lee@leereilly.net
|
128
144
|
executables: []
|
@@ -140,6 +156,7 @@ files:
|
|
140
156
|
- VERSION
|
141
157
|
- demandbase.gemspec
|
142
158
|
- lib/demandbase.rb
|
159
|
+
- lib/demandbase/error.rb
|
143
160
|
- lib/demandbase/record.rb
|
144
161
|
- test/helper.rb
|
145
162
|
- test/test_demandbase.rb
|
@@ -159,7 +176,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
159
176
|
version: '0'
|
160
177
|
segments:
|
161
178
|
- 0
|
162
|
-
hash:
|
179
|
+
hash: -1402719259970849807
|
163
180
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
164
181
|
none: false
|
165
182
|
requirements:
|