authpds 0.1.2 → 0.2.0

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,3 +1,3 @@
1
1
  module Authpds
2
- VERSION = "0.1.2"
2
+ VERSION = "0.2.0"
3
3
  end
data/test/support/user.rb CHANGED
@@ -1,9 +1,9 @@
1
1
  class User < ActiveRecord::Base
2
- serialize :user_attributes
2
+ serialize :user_attributes
3
3
 
4
- acts_as_authentic do |c|
5
- c.validations_scope = :username
6
- c.validate_password_field = false
7
- c.require_password_confirmation = false
8
- end
4
+ acts_as_authentic do |c|
5
+ c.validations_scope = :username
6
+ c.validate_password_field = false
7
+ c.require_password_confirmation = false
8
+ end
9
9
  end
data/test/test_helper.rb CHANGED
@@ -41,7 +41,7 @@ require File.dirname(__FILE__) + '/../lib/authpds'
41
41
  Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
42
42
 
43
43
  class ActiveSupport::TestCase
44
- VALID_PDS_HANDLE_FOR_NYU = '293201211510129623735547952389'
44
+ VALID_PDS_HANDLE_FOR_NYU = '9112012142711297424383587031443'
45
45
  VALID_PDS_HANDLE_FOR_NEWSCHOOL = '272201212284614806184193096120278'
46
46
  VALID_PDS_HANDLE_FOR_COOPER = '272201212284614806184193096120278'
47
47
  INVALID_PDS_HANDLE = "Invalid"
@@ -1,14 +1,14 @@
1
1
  require 'test_helper'
2
2
  class ApplicationControllerTest < ActiveSupport::TestCase
3
-
3
+
4
4
  def setup
5
5
  activate_authlogic
6
6
  controller.session[:session_id] = "FakeSessionID"
7
- InstitutionList.class_variable_set(:@@institutions_yaml_path, nil)
8
- InstitutionList.instance.instance_variable_set(:@institutions, nil)
7
+ Institutions.send(:instance_variable_set, :@loadpaths, nil)
8
+ Institutions.send(:instance_variable_set, :@institutions, nil)
9
9
  controller.instance_variable_set(:@current_primary_institution, nil)
10
10
  end
11
-
11
+
12
12
  test "current_user_session_nil" do
13
13
  assert_nil(controller.current_user_session)
14
14
  end
@@ -39,17 +39,16 @@ class ApplicationControllerTest < ActiveSupport::TestCase
39
39
  test "current_primary_institution_default" do
40
40
  assert_nil(controller.current_primary_institution)
41
41
  controller.request[:session_id] = "FakeSessionID"
42
- InstitutionList.yaml_path= "#{File.dirname(__FILE__)}/../support/config/institutions.yml"
43
- assert_equal(InstitutionList.instance.get("NYUAD"), controller.current_primary_institution)
42
+ Institutions.loadpaths<< "#{File.dirname(__FILE__)}/../support/config"
43
+ assert_equal(Institutions.institutions[:NYUAD], controller.current_primary_institution)
44
44
  end
45
45
 
46
-
47
46
  test "current_primary_institution_user" do
48
47
  assert_nil(controller.current_primary_institution)
49
- InstitutionList.yaml_path= "#{File.dirname(__FILE__)}/../support/config/institutions.yml"
48
+ Institutions.loadpaths<< "#{File.dirname(__FILE__)}/../support/config"
50
49
  controller.cookies[:PDS_HANDLE] = { :value => VALID_PDS_HANDLE_FOR_NYU }
51
50
  assert_equal("N12162279", controller.current_user.username)
52
- assert_equal(InstitutionList.instance.get("NYU"), controller.current_user.primary_institution)
53
- assert_equal(InstitutionList.instance.get("NYU"), controller.current_primary_institution)
51
+ assert_equal(Institutions.institutions[:NYU], controller.current_user.primary_institution)
52
+ assert_equal(Institutions.institutions[:NYU], controller.current_primary_institution)
54
53
  end
55
54
  end
@@ -1,12 +1,12 @@
1
1
  require 'test_helper'
2
2
  class UserSessionsControllerTest < ActiveSupport::TestCase
3
-
3
+
4
4
  def setup
5
5
  activate_authlogic
6
6
  controller.session[:session_id] = "FakeSessionID"
7
7
  controller.cookies[:PDS_HANDLE] = { :value => VALID_PDS_HANDLE_FOR_NYU }
8
8
  end
9
-
9
+
10
10
  test "current_user_session" do
11
11
  user_session = controller.current_user_session
12
12
  end
@@ -1,7 +1,7 @@
1
1
  require 'test_helper'
2
2
 
3
3
  class PdsTest < ActiveSupport::TestCase
4
-
4
+
5
5
  def setup
6
6
  @pds_url = "https://logindev.library.nyu.edu"
7
7
  @calling_system = "authpds"
@@ -9,18 +9,8 @@ class PdsTest < ActiveSupport::TestCase
9
9
  @valid_pds_handle_for_newschool = VALID_PDS_HANDLE_FOR_NEWSCHOOL
10
10
  @invalid_pds_handle = INVALID_PDS_HANDLE
11
11
  @attribute = "bor_info"
12
- # Ordered in Ruby 1.9 so :uid will overwrite id
13
- @bor_info_attributes = { :id => "id", :uid => "uid",
14
- :opensso => "opensso", :name => "name", :firstname => "givenname",
15
- :lastname => "sn", :commonname => "cn", :email => "email",
16
- :nyuidn => "nyuidn", :verification => "verification", :institute => "institute",
17
- :bor_status => "bor-status", :bor_type => "bor-type",
18
- :college_code => "college_code", :college_name => "college_name",
19
- :dept_name => "dept_name", :dept_code => "dept_code",
20
- :major_code => "major_code", :major => "major", :ill_permission => "ill-permission",
21
- :newschool_ldap => "newschool_ldap" }
22
12
  end
23
-
13
+
24
14
  test "get_attribute_valid" do
25
15
  get_attribute = Authpds::Exlibris::Pds::GetAttribute.new(@pds_url, @calling_system, @valid_pds_handle_for_nyu, "bor_info")
26
16
  assert_equal("N12162279", get_attribute.response.at("//id").inner_text)
@@ -31,23 +21,21 @@ class PdsTest < ActiveSupport::TestCase
31
21
  get_attribute = Authpds::Exlibris::Pds::GetAttribute.new(@pds_url, @calling_system, @valid_pds_handle_for_nyu, "authenticate")
32
22
  assert_equal("N12162279", get_attribute.response.at("//id").inner_text)
33
23
  end
34
-
24
+
35
25
  test "get_attribute_invalid" do
36
26
  get_attribute = Authpds::Exlibris::Pds::GetAttribute.new(@pds_url, @calling_system, @invalid_pds_handle, "bor_info")
37
27
  assert_equal("Error User does not exist", get_attribute.error)
38
28
  end
39
-
29
+
40
30
  test "bor_info_valid_nyu" do
41
31
  nyu = Authpds::Exlibris::Pds::BorInfo.new(@pds_url, @calling_system, @valid_pds_handle_for_nyu)
42
32
  assert_equal("N12162279", nyu.id)
43
- assert_equal("std5", nyu.uid)
44
33
  assert_equal("N12162279", nyu.nyuidn)
45
34
  assert_equal("51", nyu.bor_status)
46
35
  assert_equal("CB", nyu.bor_type)
47
- assert_equal("true", nyu.opensso)
48
- assert_equal("Scot Thomas", nyu.name)
49
- assert_equal("Scot Thomas", nyu.givenname)
50
- assert_equal("Dalton", nyu.sn)
36
+ assert_equal("SCOT THOMAS", nyu.name)
37
+ assert_equal("SCOT THOMAS", nyu.givenname)
38
+ assert_equal("DALTON", nyu.sn)
51
39
  assert_equal("Y", nyu.ill_permission)
52
40
  assert_equal("GA", nyu.college_code)
53
41
  assert_equal("CSCI", nyu.dept_code)
@@ -57,7 +45,6 @@ class PdsTest < ActiveSupport::TestCase
57
45
  test "bor_info_valid_newschool" do
58
46
  newschool = Authpds::Exlibris::Pds::BorInfo.new(@pds_url, @calling_system, @valid_pds_handle_for_newschool)
59
47
  assert_equal("N00206454", newschool.id)
60
- assert_equal("314519567249252", newschool.uid)
61
48
  assert_equal("N00206454", newschool.nyuidn)
62
49
  assert_equal("31", newschool.bor_status)
63
50
  assert_equal("0", newschool.bor_type)
@@ -67,7 +54,7 @@ class PdsTest < ActiveSupport::TestCase
67
54
  assert_equal("Jones", newschool.sn)
68
55
  assert_equal("Y", newschool.ill_permission)
69
56
  end
70
-
57
+
71
58
  test "bor_info_invalid" do
72
59
  get_attribute = Authpds::Exlibris::Pds::BorInfo.new(@pds_url, @calling_system, @invalid_pds_handle)
73
60
  assert_equal("Error User does not exist", get_attribute.error)
@@ -1,70 +1,68 @@
1
1
  require 'test_helper'
2
2
  class UserSessionTest < ActiveSupport::TestCase
3
-
3
+
4
4
  def setup
5
5
  activate_authlogic
6
6
  controller.session[:session_id] = "FakeSessionID"
7
7
  controller.cookies[:PDS_HANDLE] = { :value => VALID_PDS_HANDLE_FOR_NYU }
8
8
  end
9
-
9
+
10
10
  test "login_url" do
11
11
  user_session = UserSession.new
12
12
  assert_equal(
13
- "https://logindev.library.nyu.edu/pds?func=load-login&institute=&calling_system=authpds&url=http%3A%2F%2Frailsapp.library.nyu.edu%2Fvalidate%3Freturn_url%3D",
13
+ "https://logindev.library.nyu.edu/pds?func=load-login&institute=&calling_system=authpds&url=http%3A%2F%2Frailsapp.library.nyu.edu%2Fvalidate%3Freturn_url%3D",
14
14
  user_session.login_url)
15
15
  end
16
-
16
+
17
17
  test "logout_url" do
18
18
  user_session = UserSession.new
19
19
  assert_equal(
20
- "https://logindev.library.nyu.edu/pds?func=logout&url=http%3A%2F%2Fbobcatdev.library.nyu.edu",
20
+ "https://logindev.library.nyu.edu/pds?func=logout&url=http%3A%2F%2Fbobcatdev.library.nyu.edu",
21
21
  user_session.logout_url)
22
22
  end
23
-
23
+
24
24
  test "sso_url" do
25
25
  user_session = UserSession.new
26
26
  assert_equal(
27
- "https://logindev.library.nyu.edu/pds?func=sso&institute=&calling_system=authpds&url=http%3A%2F%2Frailsapp.library.nyu.edu%2Fvalidate%3Freturn_url%3D",
27
+ "https://logindev.library.nyu.edu/pds?func=sso&institute=&calling_system=authpds&url=http%3A%2F%2Frailsapp.library.nyu.edu%2Fvalidate%3Freturn_url%3D",
28
28
  user_session.sso_url)
29
29
  end
30
-
30
+
31
31
  test "validate_url" do
32
32
  user_session = UserSession.new
33
33
  assert_equal(
34
- "http://railsapp.library.nyu.edu/validate?return_url=http://railsapp.library.nyu.edu",
34
+ "http://railsapp.library.nyu.edu/validate?return_url=http://railsapp.library.nyu.edu",
35
35
  user_session.send(:validate_url, :return_url => "http://railsapp.library.nyu.edu"))
36
36
  assert_equal(
37
- "http://railsapp.library.nyu.edu/validate?return_url=http://railsapp.library.nyu.edu&authpds_custom_param1=custom_param1",
38
- user_session.send(:validate_url, :controller => "test_controller",
37
+ "http://railsapp.library.nyu.edu/validate?return_url=http://railsapp.library.nyu.edu&authpds_custom_param1=custom_param1",
38
+ user_session.send(:validate_url, :controller => "test_controller",
39
39
  :action => "test_action", :return_url => "http://railsapp.library.nyu.edu",
40
40
  :custom_param1 => "custom_param1"))
41
41
  end
42
-
42
+
43
43
  test "pds_handle" do
44
44
  user_session = UserSession.new
45
45
  assert_equal(VALID_PDS_HANDLE_FOR_NYU, user_session.send(:pds_handle))
46
46
  end
47
-
47
+
48
48
  test "pds_user" do
49
49
  user_session = UserSession.new
50
50
  pds_user = user_session.pds_user
51
51
  assert_instance_of(Authpds::Exlibris::Pds::BorInfo, pds_user)
52
52
  assert_equal("N12162279", pds_user.id)
53
- assert_equal("std5", pds_user.uid)
54
53
  assert_equal("N12162279", pds_user.nyuidn)
55
54
  assert_equal("51", pds_user.bor_status)
56
55
  assert_equal("CB", pds_user.bor_type)
57
- assert_equal("true", pds_user.opensso)
58
- assert_equal("Scot Thomas", pds_user.name)
59
- assert_equal("Scot Thomas", pds_user.givenname)
60
- assert_equal("Dalton", pds_user.sn)
56
+ assert_equal("SCOT THOMAS", pds_user.name)
57
+ assert_equal("SCOT THOMAS", pds_user.givenname)
58
+ assert_equal("DALTON", pds_user.sn)
61
59
  assert_equal("Y", pds_user.ill_permission)
62
60
  assert_equal("GA", pds_user.college_code)
63
61
  assert_equal("CSCI", pds_user.dept_code)
64
62
  assert_equal("Information Systems", pds_user.major)
65
63
  assert_equal("NYU", pds_user.institute)
66
64
  end
67
-
65
+
68
66
  test "persist_session" do
69
67
  user_session = UserSession.new
70
68
  assert_nil(controller.session["authpds_credentials"])
@@ -77,7 +75,7 @@ class UserSessionTest < ActiveSupport::TestCase
77
75
  assert_nil(user_session.record)
78
76
  assert_equal("N12162279", user_session.send(:attempted_record).username)
79
77
  end
80
-
78
+
81
79
  test "find" do
82
80
  user_session = UserSession.new
83
81
  assert_nil(controller.session["authpds_credentials"])
@@ -92,12 +90,12 @@ class UserSessionTest < ActiveSupport::TestCase
92
90
  assert_equal(controller.session["authpds_credentials"], user_session.record.persistence_token)
93
91
  assert_equal("N12162279", user_session.record.username)
94
92
  end
95
-
93
+
96
94
  test "expiration_date" do
97
95
  user_session = UserSession.new
98
96
  assert_in_delta(-0.00001, 1.day.ago.to_f, user_session.expiration_date.to_f)
99
97
  end
100
-
98
+
101
99
  test "get_record" do
102
100
  user_session = UserSession.new
103
101
  record = user_session.send(:get_record, "std5")
@@ -1,12 +1,11 @@
1
1
  require 'test_helper'
2
2
  class UserSessionTest < ActiveSupport::TestCase
3
-
4
3
  def setup
5
4
  activate_authlogic
6
5
  controller.session[:session_id] = "FakeSessionID"
7
6
  controller.cookies[:PDS_HANDLE] = { :value => VALID_PDS_HANDLE_FOR_NYU }
8
- InstitutionList.class_variable_set(:@@institutions_yaml_path, nil)
9
- InstitutionList.instance.instance_variable_set(:@institutions, nil)
7
+ Institutions.send(:instance_variable_set, :@loadpaths, nil)
8
+ Institutions.send(:instance_variable_set, :@institutions, nil)
10
9
  end
11
10
 
12
11
  test "username=" do
@@ -20,8 +19,6 @@ class UserSessionTest < ActiveSupport::TestCase
20
19
  assert_not_equal(token1, token2)
21
20
  end
22
21
 
23
-
24
-
25
22
  test "user_attributes" do
26
23
  user = User.new
27
24
  user.user_attributes= {:test_attribute1 => "value1", :test_attribute2 => "value2"}
@@ -38,30 +35,39 @@ class UserSessionTest < ActiveSupport::TestCase
38
35
  assert_equal("value3.1", user.user_attributes[:test_attribute3])
39
36
  assert_equal("value4.1", user.user_attributes[:test_attribute4])
40
37
  end
41
-
38
+
42
39
  test "primary_institution" do
40
+ Institutions.loadpaths<< "#{File.dirname(__FILE__)}/../support/config"
41
+ user = User.new
42
+ assert_nothing_raised ArgumentError do
43
+ user.primary_institution= "NYU"
44
+ end
45
+ assert_equal(Institutions.institutions[:NYU], user.primary_institution)
46
+ end
47
+
48
+ test "primary_institution no institutions" do
43
49
  user = User.new
44
50
  assert_nothing_raised ArgumentError do
45
51
  user.primary_institution= "NYU"
46
52
  end
47
53
  assert_equal(nil, user.primary_institution)
48
- InstitutionList.yaml_path= "#{File.dirname(__FILE__)}/../support/config/institutions.yml"
49
- assert_equal(InstitutionList.instance.get("NYU"), user.primary_institution)
50
54
  end
51
-
55
+
52
56
  test "institutions" do
57
+ Institutions.loadpaths<< "#{File.dirname(__FILE__)}/../support/config"
53
58
  user = User.new
54
59
  assert_raise ArgumentError do
55
60
  user.institutions= "NYU"
56
61
  end
57
- assert_raise ArgumentError do
58
- user.institutions= ["NYU"]
59
- end
60
- assert_nil(user.institutions)
61
- InstitutionList.yaml_path= "#{File.dirname(__FILE__)}/../support/config/institutions.yml"
62
62
  user.institutions= ["NYU"]
63
63
  assert_not_nil(user.institutions)
64
- assert_equal([InstitutionList.instance.get("NYU")], user.institutions)
64
+ assert_equal([Institutions.institutions[:NYU]], user.institutions)
65
+ end
66
+
67
+ test "institutions not set" do
68
+ user = User.new
69
+ user.institutions= ["NYU"]
70
+ assert_nil(user.institutions)
65
71
  end
66
72
 
67
73
  test "expired?" do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: authpds
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.2.0
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-09-24 00:00:00.000000000 Z
12
+ date: 2012-11-10 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
@@ -32,19 +32,35 @@ dependencies:
32
32
  requirement: !ruby/object:Gem::Requirement
33
33
  none: false
34
34
  requirements:
35
- - - ! '>='
35
+ - - ~>
36
36
  - !ruby/object:Gem::Version
37
- version: '0'
37
+ version: 3.1.3
38
38
  type: :runtime
39
39
  prerelease: false
40
40
  version_requirements: !ruby/object:Gem::Requirement
41
41
  none: false
42
42
  requirements:
43
- - - ! '>='
43
+ - - ~>
44
44
  - !ruby/object:Gem::Version
45
- version: '0'
45
+ version: 3.1.3
46
46
  - !ruby/object:Gem::Dependency
47
47
  name: nokogiri
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ~>
52
+ - !ruby/object:Gem::Version
53
+ version: 1.5.5
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: 1.5.5
62
+ - !ruby/object:Gem::Dependency
63
+ name: institutions
48
64
  requirement: !ruby/object:Gem::Requirement
49
65
  none: false
50
66
  requirements:
@@ -87,8 +103,6 @@ files:
87
103
  - lib/authpds/controllers/authpds_controller.rb
88
104
  - lib/authpds/controllers/authpds_sessions_controller.rb
89
105
  - lib/authpds/exlibris/pds.rb
90
- - lib/authpds/institution.rb
91
- - lib/authpds/institution_list.rb
92
106
  - lib/authpds/session.rb
93
107
  - lib/authpds/version.rb
94
108
  - lib/authpds.rb
@@ -99,14 +113,11 @@ files:
99
113
  - test/authpds_test.rb
100
114
  - test/fixtures/users.yml
101
115
  - test/support/config/institutions.yml
102
- - test/support/config/institutions2.yml
103
116
  - test/support/user.rb
104
117
  - test/support/user_session.rb
105
118
  - test/test_helper.rb
106
119
  - test/unit/authpds_controller_test.rb
107
120
  - test/unit/authpds_user_sessions_controller_test.rb
108
- - test/unit/institution_list_test.rb
109
- - test/unit/institution_test.rb
110
121
  - test/unit/pds_test.rb
111
122
  - test/unit/user_session_test.rb
112
123
  - test/unit/user_test.rb
@@ -122,12 +133,18 @@ required_ruby_version: !ruby/object:Gem::Requirement
122
133
  - - ! '>='
123
134
  - !ruby/object:Gem::Version
124
135
  version: '0'
136
+ segments:
137
+ - 0
138
+ hash: -3555265848561160058
125
139
  required_rubygems_version: !ruby/object:Gem::Requirement
126
140
  none: false
127
141
  requirements:
128
142
  - - ! '>='
129
143
  - !ruby/object:Gem::Version
130
144
  version: '0'
145
+ segments:
146
+ - 0
147
+ hash: -3555265848561160058
131
148
  requirements: []
132
149
  rubyforge_project:
133
150
  rubygems_version: 1.8.24
@@ -139,14 +156,11 @@ test_files:
139
156
  - test/authpds_test.rb
140
157
  - test/fixtures/users.yml
141
158
  - test/support/config/institutions.yml
142
- - test/support/config/institutions2.yml
143
159
  - test/support/user.rb
144
160
  - test/support/user_session.rb
145
161
  - test/test_helper.rb
146
162
  - test/unit/authpds_controller_test.rb
147
163
  - test/unit/authpds_user_sessions_controller_test.rb
148
- - test/unit/institution_list_test.rb
149
- - test/unit/institution_test.rb
150
164
  - test/unit/pds_test.rb
151
165
  - test/unit/user_session_test.rb
152
166
  - test/unit/user_test.rb