dm-parse 0.3.5 → 0.3.6

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/VERSION CHANGED
@@ -1 +1 @@
1
- 0.3.5
1
+ 0.3.6
data/dm-parse.gemspec CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "dm-parse"
8
- s.version = "0.3.5"
8
+ s.version = "0.3.6"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Zhi-Qiang Lei"]
data/lib/is/parse.rb CHANGED
@@ -18,9 +18,23 @@ module DataMapper
18
18
  property :email, Property::String, format: :email_address
19
19
 
20
20
  class << self
21
+ # Authenticate a user
22
+ #
23
+ # @param [String] username
24
+ # username
25
+ #
26
+ # @param [String] password
27
+ # password
28
+ #
29
+ # @return [Resource, nil]
30
+ # the user resource, or nil if authentication failed
31
+ #
32
+ # @api semipublic
21
33
  def authenticate(username, password)
22
34
  result = repository.adapter.sign_in(username, password)
23
35
  get(result["objectId"])
36
+ rescue ::Parse::ParseError
37
+ nil
24
38
  end
25
39
 
26
40
  def request_password_reset(email)
@@ -135,6 +135,12 @@ describe User do
135
135
  subject { model.authenticate username, password }
136
136
 
137
137
  it { should eq(user) }
138
+
139
+ context "when adapter raise error" do
140
+ before { DataMapper::Adapters::ParseAdapter.any_instance.stub(:sign_in).and_raise(Parse::ParseError) }
141
+
142
+ it { should be_nil }
143
+ end
138
144
  end
139
145
  end
140
146
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dm-parse
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.5
4
+ version: 0.3.6
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -242,7 +242,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
242
242
  version: '0'
243
243
  segments:
244
244
  - 0
245
- hash: -383439337753840824
245
+ hash: 4240417428092590610
246
246
  required_rubygems_version: !ruby/object:Gem::Requirement
247
247
  none: false
248
248
  requirements: