sunstone 5.0.1.3 → 5.0.1.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.
@@ -1,6 +1,6 @@
1
1
  require 'test_helper'
2
2
 
3
- class Sunstone::Connection::RequestHelpersTest < Minitest::Test
3
+ class Sunstone::Connection::RequestHelpersTest < ActiveSupport::TestCase
4
4
 
5
5
  # Sunstone.get ==============================================================
6
6
 
@@ -1,6 +1,6 @@
1
1
  require 'test_helper'
2
2
 
3
- class Sunstone::Connection::SendRequestTest < Minitest::Test
3
+ class Sunstone::Connection::SendRequestTest < ActiveSupport::TestCase
4
4
 
5
5
  test '#send_request(#<Net::HTTPRequest>) includes the api-key header when present' do
6
6
  connection = Sunstone::Connection.new(url: "http://my_api_key@example.com")
@@ -1,6 +1,6 @@
1
1
  require 'test_helper'
2
2
 
3
- class Sunstone::ConnectionTest < Minitest::Test
3
+ class Sunstone::ConnectionTest < ActiveSupport::TestCase
4
4
 
5
5
  # #ping =====================================================================
6
6
 
data/test/test_helper.rb CHANGED
@@ -17,15 +17,17 @@ require 'webmock/minitest'
17
17
  require 'mocha/mini_test'
18
18
 
19
19
  require 'sunstone'
20
- require File.expand_path('../models.rb', __FILE__)
20
+ require File.expand_path('../schema_mock.rb', __FILE__)
21
21
 
22
22
  Minitest::Reporters.use! Minitest::Reporters::SpecReporter.new
23
23
 
24
+ $debugging = false
25
+
24
26
  # File 'lib/active_support/testing/declarative.rb', somewhere in rails....
25
- class Minitest::Test
27
+ class ActiveSupport::TestCase
28
+ include WebMock::API
26
29
 
27
30
  # include ActiveSupport::Testing::TimeHelpers
28
-
29
31
  def self.test(name, &block)
30
32
  test_name = "test_#{name.gsub(/\s+/,'_')}".to_sym
31
33
  defined = instance_method(test_name) rescue false
@@ -65,7 +67,8 @@ class Minitest::Test
65
67
  def webmock(method, path, query=nil)
66
68
  query = deep_transform_query(query) if query
67
69
 
68
- stub_request(method, /^#{ExampleRecord.connection.instance_variable_get(:@connection).url}/).with do |req|
70
+ stub_request(method, /^#{ActiveRecord::Base.connection.instance_variable_get(:@connection).url}/).with do |req|
71
+ # puts "REQ\t#{unpack(req.uri.query.sub(/=true$/, ''))}" if req&.uri&.path == path && req.uri.query
69
72
  if query
70
73
  req&.uri&.path == path && req.uri.query && unpack(req.uri.query.sub(/=true$/, '')) == query
71
74
  else
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sunstone
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.0.1.3
4
+ version: 5.0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jon Bracy
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-01-22 00:00:00.000000000 Z
11
+ date: 2017-04-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -38,20 +38,6 @@ dependencies:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
- - !ruby/object:Gem::Dependency
42
- name: sdoc
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - ">="
46
- - !ruby/object:Gem::Version
47
- version: '0'
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - ">="
53
- - !ruby/object:Gem::Version
54
- version: '0'
55
41
  - !ruby/object:Gem::Dependency
56
42
  name: bundler
57
43
  requirement: !ruby/object:Gem::Requirement
@@ -151,7 +137,7 @@ dependencies:
151
137
  - !ruby/object:Gem::Version
152
138
  version: '0'
153
139
  - !ruby/object:Gem::Dependency
154
- name: sdoc-templates-42floors
140
+ name: rgeo
155
141
  requirement: !ruby/object:Gem::Requirement
156
142
  requirements:
157
143
  - - ">="
@@ -165,7 +151,7 @@ dependencies:
165
151
  - !ruby/object:Gem::Version
166
152
  version: '0'
167
153
  - !ruby/object:Gem::Dependency
168
- name: rgeo
154
+ name: simplecov
169
155
  requirement: !ruby/object:Gem::Requirement
170
156
  requirements:
171
157
  - - ">="
@@ -179,7 +165,7 @@ dependencies:
179
165
  - !ruby/object:Gem::Version
180
166
  version: '0'
181
167
  - !ruby/object:Gem::Dependency
182
- name: simplecov
168
+ name: byebug
183
169
  requirement: !ruby/object:Gem::Requirement
184
170
  requirements:
185
171
  - - ">="
@@ -193,19 +179,19 @@ dependencies:
193
179
  - !ruby/object:Gem::Version
194
180
  version: '0'
195
181
  - !ruby/object:Gem::Dependency
196
- name: byebug
182
+ name: activesupport
197
183
  requirement: !ruby/object:Gem::Requirement
198
184
  requirements:
199
- - - ">="
185
+ - - "~>"
200
186
  - !ruby/object:Gem::Version
201
- version: '0'
187
+ version: 5.0.1
202
188
  type: :development
203
189
  prerelease: false
204
190
  version_requirements: !ruby/object:Gem::Requirement
205
191
  requirements:
206
- - - ">="
192
+ - - "~>"
207
193
  - !ruby/object:Gem::Version
208
- version: '0'
194
+ version: 5.0.1
209
195
  - !ruby/object:Gem::Dependency
210
196
  name: msgpack
211
197
  requirement: !ruby/object:Gem::Requirement
@@ -277,6 +263,7 @@ files:
277
263
  - README.md
278
264
  - Rakefile.rb
279
265
  - TODO.md
266
+ - ext/active_record/associations.rb
280
267
  - ext/active_record/associations/association.rb
281
268
  - ext/active_record/associations/collection_association.rb
282
269
  - ext/active_record/attribute_methods.rb
@@ -318,8 +305,13 @@ files:
318
305
  - test/active_record/eager_loading_test.rb
319
306
  - test/active_record/persistance_test.rb
320
307
  - test/active_record/preload_test.rb
308
+ - test/active_record/query/all_test.rb
309
+ - test/active_record/query/count_test.rb
310
+ - test/active_record/query/distinct_test.rb
311
+ - test/active_record/query/find_test.rb
312
+ - test/active_record/query/where_test.rb
321
313
  - test/active_record/query_test.rb
322
- - test/models.rb
314
+ - test/schema_mock.rb
323
315
  - test/sunstone/connection/configuration_test.rb
324
316
  - test/sunstone/connection/cookie_store_test.rb
325
317
  - test/sunstone/connection/request_helper_test.rb
@@ -355,8 +347,13 @@ test_files:
355
347
  - test/active_record/eager_loading_test.rb
356
348
  - test/active_record/persistance_test.rb
357
349
  - test/active_record/preload_test.rb
350
+ - test/active_record/query/all_test.rb
351
+ - test/active_record/query/count_test.rb
352
+ - test/active_record/query/distinct_test.rb
353
+ - test/active_record/query/find_test.rb
354
+ - test/active_record/query/where_test.rb
358
355
  - test/active_record/query_test.rb
359
- - test/models.rb
356
+ - test/schema_mock.rb
360
357
  - test/sunstone/connection/configuration_test.rb
361
358
  - test/sunstone/connection/cookie_store_test.rb
362
359
  - test/sunstone/connection/request_helper_test.rb
data/test/models.rb DELETED
@@ -1,115 +0,0 @@
1
- WebMock::StubRegistry.instance.global_stubs.push(
2
- WebMock::RequestStub.new(:get, "http://example.com/ping").to_return(
3
- body: "pong",
4
- headers: { 'StandardAPI-Version' => '5.0.0.5' }
5
- ),
6
-
7
- WebMock::RequestStub.new(:get, "http://example.com/tables").to_return(
8
- body: %w(ships fleets sailors).to_json,
9
- headers: { 'StandardAPI-Version' => '5.0.0.5' }
10
- ),
11
-
12
- WebMock::RequestStub.new(:get, "http://example.com/ships/schema").to_return(
13
- body: {
14
- columns: {
15
- id: {type: 'integer', primary_key: true, null: false, array: false},
16
- fleet_id: {type: 'integer', primary_key: false, null: true, array: false},
17
- name: {type: 'string', primary_key: false, null: true, array: false}
18
- },
19
- limit: 100
20
- }.to_json,
21
- headers: { 'StandardAPI-Version' => '5.0.0.5' }
22
- ),
23
-
24
- WebMock::RequestStub.new(:get, "http://example.com/fleets/schema").to_return(
25
- body: {
26
- columns: {
27
- id: {type: 'integer', primary_key: true, null: false, array: false},
28
- name: {type: 'string', primary_key: false, null: true, array: false}
29
- },
30
- limit: nil
31
- }.to_json,
32
- headers: { 'StandardAPI-Version' => '5.0.0.5' }
33
- ),
34
-
35
- WebMock::RequestStub.new(:get, "http://example.com/sailors/schema").to_return(
36
- body: {
37
- columns: {
38
- id: {type: 'integer', primary_key: true, null: false, array: false},
39
- name: {type: 'string', primary_key: false, null: true, array: false}
40
- },
41
- limit: 100
42
- }.to_json,
43
- headers: { 'StandardAPI-Version' => '5.0.0.5' }
44
- ),
45
-
46
- WebMock::RequestStub.new(:get, "http://example.com/sailors_ships/schema").to_return(
47
- body: {
48
- columns: {
49
- sailor_id: {type: 'integer', primary_key: false, null: false, array: false},
50
- ship_id: {type: 'integer', primary_key: false, null: true, array: false}
51
- },
52
- limit: 100
53
- }.to_json,
54
- headers: { 'StandardAPI-Version' => '5.0.0.5' }
55
- ),
56
-
57
- WebMock::RequestStub.new(:get, "http://example.com/countries/schema").to_return(
58
- body: {
59
- columns: {
60
- id: {type: 'integer', primary_key: true, null: false, array: false},
61
- name: {type: 'string', primary_key: false, null: true, array: false}
62
- },
63
- limit: 100
64
- }.to_json,
65
- headers: { 'StandardAPI-Version' => '5.0.0.5' }
66
- ),
67
-
68
- WebMock::RequestStub.new(:get, "http://example.com/ownerships/schema").to_return(
69
- body: {
70
- columns: {
71
- country_id: {type: 'integer', primary_key: false, null: false, array: false},
72
- asset_type: {type: 'string', primary_key: false, null: false, array: false},
73
- asset_id: {type: 'integer', primary_key: false, null: true, array: false}
74
- },
75
- limit: 100
76
- }.to_json,
77
- headers: { 'StandardAPI-Version' => '5.0.0.5' }
78
- )
79
- )
80
-
81
- class ExampleRecord < ActiveRecord::Base
82
- self.abstract_class = true
83
- end
84
-
85
- ExampleRecord.establish_connection(
86
- adapter: 'sunstone',
87
- url: 'http://example.com'
88
- )
89
-
90
- class Fleet < ExampleRecord
91
- has_many :ships
92
- end
93
-
94
- class Ship < ExampleRecord
95
- belongs_to :fleet
96
-
97
- has_and_belongs_to_many :sailors
98
-
99
- has_many :ownerships, as: :asset
100
- has_many :nations, through: :ownerships, source: :country, inverse_of: :ships
101
- end
102
-
103
- class Sailor < ExampleRecord
104
- has_and_belongs_to_many :ships
105
- end
106
-
107
- class Country < ExampleRecord
108
- has_many :ownerships
109
- has_many :fleets, through: :ownerships
110
- end
111
-
112
- class Ownership < ExampleRecord
113
- belongs_to :country
114
- belongs_to :asset, polymorphic: true
115
- end