startupstats 0.0.3 → 0.0.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.
- data/Gemfile +1 -1
- data/lib/startupstats/formd/filings.rb +1 -0
- data/lib/startupstats/formd/models/company.rb +14 -0
- data/lib/startupstats/formd/models/filing.rb +6 -2
- data/lib/startupstats/version.rb +1 -1
- data/spec/factories.rb +2 -7
- data/spec/formd/company_spec.rb +17 -0
- data/spec/formd/filing_spec.rb +16 -0
- data/spec/formd/filings_spec.rb +28 -12
- data/spec/spec_helper.rb +1 -1
- metadata +6 -1
data/Gemfile
CHANGED
@@ -0,0 +1,14 @@
|
|
1
|
+
module StartupStats
|
2
|
+
module Formd
|
3
|
+
class Company
|
4
|
+
attr_accessor :id, :sec_id, :name, :entity_type, :inc_state, :address_street1, :address_street2,
|
5
|
+
:address_city, :address_spc, :address_zip, :phone
|
6
|
+
|
7
|
+
def initialize response = {}
|
8
|
+
response.each do |k, v|
|
9
|
+
instance_variable_set("@#{k}",v) unless v.nil?
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -1,13 +1,17 @@
|
|
1
|
+
require 'startupstats/formd/models/company'
|
1
2
|
module StartupStats
|
2
3
|
module Formd
|
3
4
|
class Filing
|
4
|
-
attr_accessor :filing_url_html , :filing_url_xml , :filing_id, :filing_type
|
5
|
+
attr_accessor :id, :filing_url_html , :filing_url_xml , :filing_id, :filing_type
|
5
6
|
attr_accessor :company_id, :filing_num, :filing_date, :industry_group, :long_offering, :business_combo, :processed,
|
6
7
|
:min_investment, :offering_amount, :offering_sold, :num_investors, :sales_commission, :finders_fee, :use_of_proceeds, :security_type
|
7
8
|
attr_accessor :company #this will store all details
|
8
9
|
def initialize response = {}
|
9
10
|
response.each do |k, v|
|
10
|
-
instance_variable_set("@#{k}",v) unless v.nil?
|
11
|
+
instance_variable_set("@#{k}",v) unless v.nil? || k == :company
|
12
|
+
if k == :company
|
13
|
+
instance_variable_set("@#{k}", StartupStats::Formd::Company.new(v) )
|
14
|
+
end
|
11
15
|
end
|
12
16
|
end
|
13
17
|
|
data/lib/startupstats/version.rb
CHANGED
data/spec/factories.rb
CHANGED
@@ -1,8 +1,6 @@
|
|
1
|
-
module StartupStats
|
2
|
-
module Formd
|
3
1
|
FactoryGirl.define do
|
4
2
|
|
5
|
-
factory :filing do
|
3
|
+
factory :filing , class: StartupStats::Formd::Filing do
|
6
4
|
filing_url_html "http://www.sec.gov/Archives/edgar/data/1525533/000152553312000003/xslFormDX01/primary_doc.xml"
|
7
5
|
filing_url_xml "http://www.sec.gov/Archives/edgar/data/1525533/000152553312000003/primary_doc.xml"
|
8
6
|
filing_id "000152553312000003"
|
@@ -42,7 +40,7 @@ FactoryGirl.define do
|
|
42
40
|
end
|
43
41
|
|
44
42
|
|
45
|
-
factory :company do
|
43
|
+
factory :company , class: StartupStats::Formd::Company do
|
46
44
|
# based on this: http://www.sec.gov/Archives/edgar/data/1562176/000156217612000001/xslFormDX01/primary_doc.xml
|
47
45
|
sec_id "0001562176"
|
48
46
|
name "Interesante, Inc."
|
@@ -99,7 +97,4 @@ FactoryGirl.define do
|
|
99
97
|
factory :security do
|
100
98
|
name "Equity"
|
101
99
|
end
|
102
|
-
end
|
103
|
-
|
104
|
-
end
|
105
100
|
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
describe StartupStats::Formd::Company do
|
3
|
+
before {
|
4
|
+
@company = build_stubbed(:company)
|
5
|
+
}
|
6
|
+
subject { @company }
|
7
|
+
|
8
|
+
it { should respond_to(:name) }
|
9
|
+
it { should respond_to(:entity_type) }
|
10
|
+
it { should respond_to(:inc_state) }
|
11
|
+
it { should respond_to(:address_street1) }
|
12
|
+
it { should respond_to(:address_street2) }
|
13
|
+
it { should respond_to(:address_city) }
|
14
|
+
it { should respond_to(:address_spc) }
|
15
|
+
it { should respond_to(:address_zip) }
|
16
|
+
it { should respond_to(:phone) }
|
17
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
describe StartupStats::Formd::Filing do
|
3
|
+
before {
|
4
|
+
@filing = build_stubbed(:filing_complete)
|
5
|
+
}
|
6
|
+
subject { @filing }
|
7
|
+
|
8
|
+
it { should respond_to(:filing_url_html) }
|
9
|
+
it { should respond_to(:filing_url_xml) }
|
10
|
+
it { should respond_to(:filing_id) }
|
11
|
+
it { should respond_to(:filing_type) }
|
12
|
+
it { should respond_to( :filing_id ) }
|
13
|
+
it { should respond_to( :offering_amount ) }
|
14
|
+
it { should respond_to( :offering_sold ) }
|
15
|
+
it { should respond_to( :industry_group ) }
|
16
|
+
end
|
data/spec/formd/filings_spec.rb
CHANGED
@@ -2,18 +2,34 @@ require 'spec_helper'
|
|
2
2
|
require 'vcr'
|
3
3
|
describe StartupStats::Formd::Filings do
|
4
4
|
use_vcr_cassette 'filings' , :record => :new_episodes
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
5
|
+
context "without valid authentication" do
|
6
|
+
let(:client){ StartupStats::Formd::Client.new({
|
7
|
+
:access_token => "" ,
|
8
|
+
:access_token_key => "access_token" ,
|
9
|
+
:endpoint => ENV['FORMD_ENDPOINT'] ,
|
10
|
+
}) }
|
10
11
|
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
12
|
+
it "should raise an error" do
|
13
|
+
expect{
|
14
|
+
client.filings( start = 0 , limit = 5 , industry = nil )
|
15
|
+
}.to raise_error(StartupStats::Error::Unauthorized)
|
16
|
+
end
|
17
|
+
end
|
18
|
+
context "with valid authentication" do
|
19
|
+
let(:client){ StartupStats::Formd::Client.new( {
|
20
|
+
:access_token => ENV['FORMD_TOKEN'] ,
|
21
|
+
:access_token_key => "access_token" ,
|
22
|
+
:endpoint => ENV['FORMD_ENDPOINT'] ,
|
23
|
+
} ) }
|
24
|
+
|
25
|
+
it "gets filings in batch" do
|
26
|
+
#VCR.use_cassette('filings' , :record => :new_episodes ) do
|
27
|
+
filings = client.filings( start = 0 , limit = 5 , industry = nil )
|
28
|
+
expect(filings).to be_an Array
|
29
|
+
filings.size.should == 5
|
30
|
+
expect(filings.first).to be_a StartupStats::Formd::Filing
|
31
|
+
expect(filings.first.company).to be_a StartupStats::Formd::Company
|
32
|
+
#end
|
33
|
+
end
|
18
34
|
end
|
19
35
|
end
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: startupstats
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -153,6 +153,7 @@ files:
|
|
153
153
|
- lib/startupstats/error/unauthorized.rb
|
154
154
|
- lib/startupstats/formd/client.rb
|
155
155
|
- lib/startupstats/formd/filings.rb
|
156
|
+
- lib/startupstats/formd/models/company.rb
|
156
157
|
- lib/startupstats/formd/models/filing.rb
|
157
158
|
- lib/startupstats/requestable.rb
|
158
159
|
- lib/startupstats/response/parse_json.rb
|
@@ -160,6 +161,8 @@ files:
|
|
160
161
|
- lib/startupstats/version.rb
|
161
162
|
- spec/factories.rb
|
162
163
|
- spec/formd/client_spec.rb
|
164
|
+
- spec/formd/company_spec.rb
|
165
|
+
- spec/formd/filing_spec.rb
|
163
166
|
- spec/formd/filings_spec.rb
|
164
167
|
- spec/formd/formd_spec.rb
|
165
168
|
- spec/spec_helper.rb
|
@@ -194,6 +197,8 @@ summary: A Ruby interface to the network of StartupStats APIs.
|
|
194
197
|
test_files:
|
195
198
|
- spec/factories.rb
|
196
199
|
- spec/formd/client_spec.rb
|
200
|
+
- spec/formd/company_spec.rb
|
201
|
+
- spec/formd/filing_spec.rb
|
197
202
|
- spec/formd/filings_spec.rb
|
198
203
|
- spec/formd/formd_spec.rb
|
199
204
|
- spec/spec_helper.rb
|