the86-client 0.0.1 → 0.0.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/lib/the86-client.rb CHANGED
@@ -6,6 +6,7 @@
6
6
 
7
7
  resource
8
8
  resource_collection
9
+ access_token
9
10
  user
10
11
  site
11
12
  post
@@ -0,0 +1,16 @@
1
+ module The86
2
+ module Client
3
+ class AccessToken < Resource
4
+
5
+ attribute :id, Integer
6
+ attribute :token, String
7
+ attribute :created_at, DateTime
8
+ attribute :updated_at, DateTime
9
+
10
+ belongs_to :user
11
+
12
+ path "access_tokens"
13
+
14
+ end
15
+ end
16
+ end
@@ -5,12 +5,21 @@ module The86
5
5
  module Client
6
6
  class Connection
7
7
 
8
+ class << self
9
+ # Parameters for Faraday's connection.adapter method, e.g:
10
+ # [:rack, SomeApp]
11
+ attr_writer :faraday_adapter
12
+ def faraday_adapter
13
+ @faraday_adapter || Faraday.default_adapter
14
+ end
15
+ end
16
+
8
17
  def initialize
9
18
  @faraday = Faraday.new(url) do |conn|
10
19
  conn.request :json
11
20
  conn.response :json
12
21
  conn.basic_auth(*Client.credentials)
13
- conn.adapter Faraday.default_adapter
22
+ conn.adapter *self.class.faraday_adapter
14
23
  end
15
24
  end
16
25
 
@@ -91,7 +91,9 @@ module The86
91
91
  end
92
92
 
93
93
  def ==(other)
94
- attributes == other.attributes &&
94
+ other.respond_to?(:attributes) &&
95
+ other.respond_to?(:parent) &&
96
+ attributes == other.attributes &&
95
97
  parent == other.parent
96
98
  end
97
99
 
@@ -7,6 +7,8 @@ module The86
7
7
  attribute :created_at, DateTime
8
8
  attribute :updated_at, DateTime
9
9
 
10
+ has_many :access_tokens, ->{ AccessToken }
11
+
10
12
  path "users"
11
13
 
12
14
  end
@@ -1,5 +1,5 @@
1
1
  module The86
2
2
  module Client
3
- VERSION = "0.0.1"
3
+ VERSION = "0.0.2"
4
4
  end
5
5
  end
@@ -27,6 +27,10 @@ module The86::Client
27
27
  resource.new(code: "A", parent: parent_resource.new(id: 1)).
28
28
  wont_equal resource.new(code: "A", parent: parent_resource.new(id: 2))
29
29
  end
30
+
31
+ it "is inequal to another type of object" do
32
+ resource.new(id: 1, code: "A").wont_equal false
33
+ end
30
34
  end
31
35
  end
32
36
  end
data/spec/user_spec.rb ADDED
@@ -0,0 +1,18 @@
1
+ require_relative "spec_helper"
2
+
3
+ module The86::Client
4
+ describe User do
5
+
6
+ it "stores name" do
7
+ User.new(name: "John").name.must_equal "John"
8
+ end
9
+
10
+ it "can store access tokens passed into constructor" do
11
+ u = User.new(access_tokens: [{token: "one"}, {token: "two"}])
12
+ u.access_tokens.first.must_be_instance_of AccessToken
13
+ u.access_tokens.first.token.must_equal "one"
14
+ u.access_tokens[1].token.must_equal "two"
15
+ end
16
+
17
+ end
18
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: the86-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-07-26 00:00:00.000000000 Z
12
+ date: 2012-07-30 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: faraday
@@ -201,6 +201,7 @@ files:
201
201
  - README.md
202
202
  - Rakefile
203
203
  - lib/the86-client.rb
204
+ - lib/the86-client/access_token.rb
204
205
  - lib/the86-client/active_model.rb
205
206
  - lib/the86-client/connection.rb
206
207
  - lib/the86-client/conversation.rb
@@ -219,6 +220,7 @@ files:
219
220
  - spec/resource_spec.rb
220
221
  - spec/spec_helper.rb
221
222
  - spec/support/webmock.rb
223
+ - spec/user_spec.rb
222
224
  - spec/users_spec.rb
223
225
  - the86-client.gemspec
224
226
  homepage: https://github.com/sitepoint/the86-client
@@ -253,4 +255,5 @@ test_files:
253
255
  - spec/resource_spec.rb
254
256
  - spec/spec_helper.rb
255
257
  - spec/support/webmock.rb
258
+ - spec/user_spec.rb
256
259
  - spec/users_spec.rb