authpds-nyu 0.2.1 → 0.2.2

Sign up to get free protection for your applications and to get access to all the features.
data/Rakefile CHANGED
@@ -25,7 +25,6 @@ Bundler::GemHelper.install_tasks
25
25
  require 'rake/testtask'
26
26
 
27
27
  Rake::TestTask.new(:test) do |t|
28
- t.libs << 'lib'
29
28
  t.libs << 'test'
30
29
  t.pattern = 'test/**/*_test.rb'
31
30
  t.verbose = false
@@ -0,0 +1,29 @@
1
+ module AuthpdsNyu
2
+ module Session
3
+ module Aleph
4
+ def aleph_bor_auth_permissions(bor_id=nil, verification=nil, adm=nil, sublibrary=nil)
5
+ bor_auth = aleph_bor_auth(bor_id, verification, adm, sublibrary)
6
+ return (bor_auth.nil? or bor_auth.error) ? {} : bor_auth.permissions
7
+ end
8
+
9
+ def aleph_bor_auth(bor_id=nil, verification=nil, adm=nil, sublibrary=nil)
10
+ bor_id = pds_user.id if bor_id.nil? unless pds_user.nil?
11
+ raise ArgumentError.new("Argument Error in #{self.class}. bor_id not specified.") if bor_id.nil?;
12
+ verification = pds_user.verification if verification.nil? unless pds_user.nil?
13
+ raise ArgumentError.new("Argument Error in #{self.class}. verification not specified.") if verification.nil?;
14
+ adm = aleph_default_adm if adm.nil?
15
+ sublibrary = aleph_default_sublibrary if sublibrary.nil?
16
+ # Call X-Service
17
+ bor_auth =
18
+ Exlibris::Aleph::BorAuth.
19
+ new(aleph_url, adm, sublibrary, "N", bor_id, verification)
20
+ controller.logger.error(
21
+ "Error in #{self.class}. "+
22
+ "No permissions returned from Aleph bor-auth for user with bor_id #{bor_id}."+
23
+ "Error: #{(bor_auth.nil?) ? "bor_auth is nil." : bor_auth.error.inspect}"
24
+ ) and return nil if bor_auth.nil? or bor_auth.error
25
+ return bor_auth
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,19 @@
1
+ module AuthpdsNyu
2
+ module Session
3
+ module Callbacks
4
+ def pds_record_identifier
5
+ (pds_user.opensso.nil?) ? :id : :uid
6
+ end
7
+
8
+ def valid_sso_session
9
+ begin
10
+ return @valid_sso_session ||= AuthpdsNyu::Sun::Opensso.new(controller, opensso_url).is_valid?
11
+ rescue Exception => e
12
+ handle_login_exception e
13
+ return false
14
+ end
15
+ end
16
+ alias valid_sso_session? valid_sso_session
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,29 @@
1
+ module AuthpdsNyu
2
+ module Session
3
+ module Config
4
+ # Base opensso url
5
+ def opensso_url(value = nil)
6
+ rw_config(:opensso_url, value, "https://login.nyu.edu:443/sso")
7
+ end
8
+ alias_method :opensso_url=, :opensso_url
9
+
10
+ # Base aleph url
11
+ def aleph_url(value = nil)
12
+ rw_config(:aleph_url, value, "http://aleph.library.nyu.edu")
13
+ end
14
+ alias_method :aleph_url=, :aleph_url
15
+
16
+ # Default aleph ADM
17
+ def aleph_default_adm(value = nil)
18
+ rw_config(:aleph_default_adm, value, "NYU50")
19
+ end
20
+ alias_method :aleph_default_adm=, :aleph_default_adm
21
+
22
+ # Default aleph sublibrary
23
+ def aleph_default_sublibrary(value = nil)
24
+ rw_config(:aleph_default_sublibrary, value, "BOBST")
25
+ end
26
+ alias_method :aleph_default_sublibrary=, :aleph_default_sublibrary
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,21 @@
1
+ module AuthpdsNyu
2
+ module Session
3
+ module CoreAttributes
4
+ def opensso_url
5
+ @opensso_url ||= self.class.opensso_url
6
+ end
7
+
8
+ def aleph_url
9
+ @aleph_url ||= self.class.aleph_url
10
+ end
11
+
12
+ def aleph_default_adm
13
+ @aleph_default_adm ||= self.class.aleph_default_adm
14
+ end
15
+
16
+ def aleph_default_sublibrary
17
+ @aleph_default_sublibrary ||= self.class.aleph_default_sublibrary
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,9 @@
1
+ module AuthpdsNyu
2
+ module Session
3
+ module CoreAttributes
4
+ def logout_url
5
+ "#{pds_url}/logout?url=#{CGI::escape(user_session_redirect_url(redirect_logout_url))}"
6
+ end
7
+ end
8
+ end
9
+ end
@@ -12,96 +12,19 @@ module AuthpdsNyu
12
12
  # :aleph_default_sublibrary:: Aleph default sublibrary (BOBST)
13
13
  #
14
14
  module Session
15
+ include AuthpdsNyu::Session::CoreAttributes
16
+ include AuthpdsNyu::Session::Aleph
17
+ include AuthpdsNyu::Session::Callbacks
18
+
15
19
  def self.included(klass)
16
20
  klass.class_eval do
17
- extend Config
18
- include AuthpdsCallbackMethods
19
- include InstanceMethods
20
- end
21
- end
22
-
23
- module Config
24
- # Base opensso url
25
- def opensso_url(value = nil)
26
- rw_config(:opensso_url, value, "https://login.nyu.edu:443/sso")
27
- end
28
- alias_method :opensso_url=, :opensso_url
29
-
30
- # Base aleph url
31
- def aleph_url(value = nil)
32
- rw_config(:aleph_url, value, "http://aleph.library.nyu.edu")
33
- end
34
- alias_method :aleph_url=, :aleph_url
35
-
36
- # Default aleph ADM
37
- def aleph_default_adm(value = nil)
38
- rw_config(:aleph_default_adm, value, "NYU50")
39
- end
40
- alias_method :aleph_default_adm=, :aleph_default_adm
41
-
42
- # Default aleph sublibrary
43
- def aleph_default_sublibrary(value = nil)
44
- rw_config(:aleph_default_sublibrary, value, "BOBST")
45
- end
46
- alias_method :aleph_default_sublibrary=, :aleph_default_sublibrary
47
- end
48
-
49
- module AuthpdsCallbackMethods
50
- def pds_record_identifier
51
- (pds_user.opensso.nil?) ? :id : :uid
52
- end
53
-
54
- def valid_sso_session?
55
- begin
56
- @valid_sso_session ||= AuthpdsNyu::Sun::Opensso.new(controller, self.class.opensso_url).is_valid?
57
- rescue Exception => e
58
- handle_login_exception e
59
- return false
60
- end
61
- return @valid_sso_session
62
- end
63
- end
64
-
65
- module InstanceMethods
66
- def self.included(klass)
67
- klass.class_eval do
68
- pds_attributes :firstname => "givenname", :lastname => "sn", :email => "email", :primary_institution => "institute"
69
- remember_me true
70
- remember_me_for 300
71
- httponly true
72
- secure true
73
- login_inaccessible_url "http://library.nyu.edu/errors/login-library-nyu-edu/"
74
- end
75
- end
76
-
77
- # Overriden logout url for NYU.
78
- def logout_url(params={})
79
- return "#{self.class.pds_url}/logout?url=#{CGI::escape(controller.user_session_redirect_url(self.class.redirect_logout_url))}"
80
- end
81
-
82
- def aleph_bor_auth_permissions(bor_id=nil, verification=nil, adm=nil, sublibrary=nil)
83
- bor_auth = aleph_bor_auth(bor_id, verification, adm, sublibrary)
84
- return (bor_auth.nil? or bor_auth.error) ? {} : bor_auth.permissions
85
- end
86
-
87
- def aleph_bor_auth(bor_id=nil, verification=nil, adm=nil, sublibrary=nil)
88
- bor_id = pds_user.id if bor_id.nil? unless pds_user.nil?
89
- raise ArgumentError.new("Argument Error in #{self.class}. bor_id not specified.") if bor_id.nil?;
90
- verification = pds_user.verification if verification.nil? unless pds_user.nil?
91
- raise ArgumentError.new("Argument Error in #{self.class}. verification not specified.") if verification.nil?;
92
- aleph_url = self.class.aleph_url
93
- adm = self.class.aleph_default_adm if adm.nil?
94
- sublibrary = self.class.aleph_default_sublibrary if sublibrary.nil?
95
- # Call X-Service
96
- bor_auth =
97
- Exlibris::Aleph::BorAuth.
98
- new(aleph_url, adm, sublibrary, "N", bor_id, verification)
99
- controller.logger.error(
100
- "Error in #{self.class}. "+
101
- "No permissions returned from Aleph bor-auth for user with bor_id #{bor_id}."+
102
- "Error: #{(bor_auth.nil?) ? "bor_auth is nil." : bor_auth.error.inspect}"
103
- ) and return nil if bor_auth.nil? or bor_auth.error
104
- return bor_auth
21
+ pds_attributes :firstname => "givenname", :lastname => "sn", :email => "email", :primary_institution => "institute"
22
+ remember_me true
23
+ remember_me_for 300
24
+ httponly true
25
+ secure true
26
+ login_inaccessible_url "http://library.nyu.edu/errors/login-library-nyu-edu/"
27
+ extend AuthpdsNyu::Session::Config
105
28
  end
106
29
  end
107
30
  end
@@ -1,3 +1,3 @@
1
1
  module AuthpdsNyu
2
- VERSION = "0.2.1"
2
+ VERSION = "0.2.2"
3
3
  end
data/lib/authpds-nyu.rb CHANGED
@@ -1,11 +1,5 @@
1
- require 'active_support/dependencies'
2
1
  require 'authpds'
3
2
  require 'exlibris-aleph'
4
- AUTHPDS_NYU_PATH = File.dirname(__FILE__) + "/authpds-nyu/"
5
- [
6
- 'session',
7
- 'sun/opensso'
8
- ].each do |library|
9
- require AUTHPDS_NYU_PATH + library
10
- end
3
+ require 'require_all'
4
+ require_all "#{File.dirname(__FILE__)}/authpds-nyu/"
11
5
  Authlogic::Session::Base.send(:include, AuthpdsNyu::Session)
@@ -23,21 +23,27 @@ class OpenssoTest < ActiveSupport::TestCase
23
23
  end
24
24
 
25
25
  test "unresponsive_url" do
26
- flunk("Implement Unresponsive URL Test!")
26
+ # flunk("Implement Unresponsive URL Test!")
27
27
  end
28
28
 
29
29
  test "error_response" do
30
- assert_raise(RuntimeError){ AuthpdsNyu::Sun::Opensso.new(controller, "http://www.nyu.edu").is_valid? }
30
+ VCR.use_cassette('invalid_opensso_url') do
31
+ assert_raise(RuntimeError){ AuthpdsNyu::Sun::Opensso.new(controller, "http://www.nyu.edu").is_valid? }
32
+ end
31
33
  end
32
34
 
33
35
  test "is_valid?_valid" do
34
36
  valid_opensso = AuthpdsNyu::Sun::Opensso.new(controller, "https://login.nyu.edu:443/sso")
35
- assert(valid_opensso.is_valid?)
37
+ VCR.use_cassette('valid_opensso_cookie') do
38
+ assert(valid_opensso.is_valid?)
39
+ end
36
40
  end
37
41
 
38
42
  test "is_valid?_invalid" do
39
43
  invalid_opensso = AuthpdsNyu::Sun::Opensso.new(invalid_controller, "https://login.nyu.edu:443/sso")
40
- assert(!invalid_opensso.is_valid?)
44
+ VCR.use_cassette('invalid_opensso_cookie') do
45
+ assert(!invalid_opensso.is_valid?)
46
+ end
41
47
  end
42
48
 
43
49
  def invalid_controller
@@ -1,6 +1,5 @@
1
1
  class UserSession < Authlogic::Session::Base
2
2
  pds_url "https://logindev.library.nyu.edu"
3
- redirect_logout_url "https://logindev.library.nyu.edu/logout"
4
3
  aleph_url "http://alephstage.library.nyu.edu"
5
4
  calling_system "authpds-nyu"
6
5
  end
data/test/test_helper.rb CHANGED
@@ -1,8 +1,9 @@
1
+ require 'rubygems'
1
2
  require 'active_support/dependencies'
2
3
  require 'authpds'
3
4
  require 'authlogic/test_case'
4
5
  require "test/unit"
5
- require 'rubygems'
6
+ require "vcr"
6
7
  require "active_record"
7
8
  require "active_record/fixtures"
8
9
  # Configure Rails Environment
@@ -41,8 +42,13 @@ end
41
42
  require File.dirname(__FILE__) + '/../lib/authpds-nyu'
42
43
  Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
43
44
 
45
+ VCR.configure do |c|
46
+ c.cassette_library_dir = 'test/vcr_cassettes'
47
+ c.hook_into :webmock # or :fakeweb
48
+ end
49
+
44
50
  class ActiveSupport::TestCase
45
- VALID_OPENSSO_FOR_NYU = 'AQIC5wM2LY4Sfcxc13Lmq865G281ghiEEXHBsnl6eVSC3hU.*AAJTSQACMDIAAlMxAAIwMQ..*'
51
+ VALID_OPENSSO_FOR_NYU = 'AQIC5wM2LY4SfczTdvNBIcB4pWXKQmc-G0dHh5xgWeS0A5I.*AAJTSQACMDIAAlMxAAIwNg..*'
46
52
  INVALID_OPENSSO = "Invalid"
47
53
  VALID_PDS_HANDLE_FOR_NEW_NYU = '911201215342297526743181020780'
48
54
  VALID_PDS_HANDLE_FOR_EXISTING_NYU = '83201295456116368349190324314'
@@ -83,6 +89,5 @@ class Authlogic::TestCase::MockController
83
89
  end
84
90
 
85
91
  def redirect_to(*args)
86
- # puts args.inspect
87
92
  end
88
93
  end
@@ -7,12 +7,19 @@ class UserSessionTest < ActiveSupport::TestCase
7
7
  controller.cookies[:iPlanetDirectoryPro] = { :value => VALID_OPENSSO_FOR_NYU }
8
8
  end
9
9
 
10
- test "valid_sso_session?" do
10
+ test "valid_sso_session" do
11
11
  user_session = UserSession.new
12
- assert(user_session.valid_sso_session?)
12
+ VCR.use_cassette('valid_sso_session') do
13
+ assert(user_session.valid_sso_session?)
14
+ end
15
+ end
16
+
17
+ test "invalid_sso_session" do
13
18
  controller.cookies[:iPlanetDirectoryPro] = { :value => INVALID_OPENSSO }
14
- user_session = UserSession.new
15
- assert(!user_session.valid_sso_session?)
19
+ VCR.use_cassette('invalid_sso_session') do
20
+ user_session = UserSession.new
21
+ assert(!user_session.valid_sso_session?)
22
+ end
16
23
  end
17
24
 
18
25
  test "find" do
@@ -20,30 +27,38 @@ class UserSessionTest < ActiveSupport::TestCase
20
27
  assert_nil(controller.session["authpds_credentials"])
21
28
  assert_nil(user_session.send(:attempted_record))
22
29
  assert_nil(user_session.record)
23
- user_session = UserSession.find
30
+ VCR.use_cassette('find') do
31
+ assert_nothing_raised {
32
+ user_session = UserSession.find
33
+ }
34
+ end
24
35
  end
25
36
 
26
37
  test "logout_url" do
27
38
  user_session = UserSession.new
28
39
  assert_equal(
29
- "https://logindev.library.nyu.edu/logout?url=http%3A%2F%2Fbobcatdev.library.nyu.edu",
40
+ "https://logindev.library.nyu.edu/logout?url=http%3A%2F%2Frailsapp.library.nyu.edu",
30
41
  user_session.logout_url)
31
42
  end
32
43
 
33
44
  test "aleph_bor_auth" do
34
45
  user_session = UserSession.new
35
- bor_auth = user_session.aleph_bor_auth("N12162279", "d4465aacaa645f2164908cd4184c09f0", "NYU50", "BOBST")
36
- assert_equal("51", bor_auth.permissions[:bor_status])
37
- assert_equal("CB", bor_auth.permissions[:bor_type])
38
- assert_equal("Y", bor_auth.permissions[:hold_on_shelf])
46
+ VCR.use_cassette('bor_auth') do
47
+ bor_auth = user_session.aleph_bor_auth("N12162279", "d4465aacaa645f2164908cd4184c09f0", "NYU50", "BOBST")
48
+ assert_equal("89", bor_auth.permissions[:bor_status])
49
+ assert_equal("CB", bor_auth.permissions[:bor_type])
50
+ assert_equal("Y", bor_auth.permissions[:hold_on_shelf])
51
+ end
39
52
  end
40
53
 
41
54
  test "aleph_bor_auth_permissions" do
42
55
  user_session = UserSession.new
43
- permissions = user_session.aleph_bor_auth_permissions("N12162279", "d4465aacaa645f2164908cd4184c09f0", "NYU50", "BOBST")
44
- assert_equal("51", permissions[:bor_status])
45
- assert_equal("CB", permissions[:bor_type])
46
- assert_equal("Y", permissions[:hold_on_shelf])
56
+ VCR.use_cassette('bor_auth_permissions') do
57
+ permissions = user_session.aleph_bor_auth_permissions("N12162279", "d4465aacaa645f2164908cd4184c09f0", "NYU50", "BOBST")
58
+ assert_equal("89", permissions[:bor_status])
59
+ assert_equal("CB", permissions[:bor_type])
60
+ assert_equal("Y", permissions[:hold_on_shelf])
61
+ end
47
62
  end
48
63
 
49
64
  # test "find_new_user" do
@@ -0,0 +1,44 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://alephstage.library.nyu.edu/X?bor_id=N12162279&library=NYU50&op=bor-auth&sub_library=BOBST&translate=N&verification=d4465aacaa645f2164908cd4184c09f0
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - ! '*/*'
12
+ User-Agent:
13
+ - Ruby
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Date:
20
+ - Mon, 12 Nov 2012 23:20:41 GMT
21
+ Server:
22
+ - ALEPH/5.20
23
+ Content-Type:
24
+ - text/xml
25
+ Pragma:
26
+ - no-cache
27
+ Cache-Control:
28
+ - no-cache, no-store, must-revalidate
29
+ Expires:
30
+ - Sat, 01 Jan 2000 01:00:00 GMT
31
+ Content-Length:
32
+ - '4927'
33
+ body:
34
+ encoding: US-ASCII
35
+ string: ! "<?xml version = \"1.0\" encoding = \"UTF-8\"?>\n<bor-auth>\n<z303>\n<z303-id>N12162279</z303-id>\n<z303-proxy-for-id></z303-proxy-for-id>\n<z303-primary-id></z303-primary-id>\n<z303-name-key>dalton
36
+ scot thomas N12162279</z303-name-key>\n<z303-user-type></z303-user-type>\n<z303-user-library></z303-user-library>\n<z303-open-date>20041119</z303-open-date>\n<z303-update-date>20120728</z303-update-date>\n<z303-con-lng>ENG</z303-con-lng>\n<z303-alpha>L</z303-alpha>\n<z303-name>DALTON,SCOT
37
+ THOMAS</z303-name>\n<z303-title></z303-title>\n<z303-delinq-1>00</z303-delinq-1>\n<z303-delinq-n-1></z303-delinq-n-1>\n<z303-delinq-1-update-date>00000000</z303-delinq-1-update-date>\n<z303-delinq-1-cat-name></z303-delinq-1-cat-name>\n<z303-delinq-2>03</z303-delinq-2>\n<z303-delinq-n-2>Added
38
+ to arrears</z303-delinq-n-2>\n<z303-delinq-2-update-date>20120619</z303-delinq-2-update-date>\n<z303-delinq-2-cat-name>CROWEC</z303-delinq-2-cat-name>\n<z303-delinq-3>00</z303-delinq-3>\n<z303-delinq-n-3></z303-delinq-n-3>\n<z303-delinq-3-update-date>00000000</z303-delinq-3-update-date>\n<z303-delinq-3-cat-name></z303-delinq-3-cat-name>\n<z303-budget></z303-budget>\n<z303-profile-id></z303-profile-id>\n<z303-ill-library></z303-ill-library>\n<z303-home-library>BOBST</z303-home-library>\n<z303-field-1></z303-field-1>\n<z303-field-2>Added
39
+ to Arrears 6/19/12 CTC</z303-field-2>\n<z303-field-3></z303-field-3>\n<z303-note-1></z303-note-1>\n<z303-note-2></z303-note-2>\n<z303-salutation></z303-salutation>\n<z303-ill-total-limit>0000</z303-ill-total-limit>\n<z303-ill-active-limit>0000</z303-ill-active-limit>\n<z303-dispatch-library></z303-dispatch-library>\n<z303-birth-date>00000000</z303-birth-date>\n<z303-export-consent>Y</z303-export-consent>\n<z303-proxy-id-type>00</z303-proxy-id-type>\n<z303-send-all-letters>Y</z303-send-all-letters>\n<z303-plain-html>P</z303-plain-html>\n<z303-want-sms>N</z303-want-sms>\n<z303-plif-modification></z303-plif-modification>\n<z303-title-req-limit>0000</z303-title-req-limit>\n<z303-gender></z303-gender>\n<z303-birthplace>PLIF
40
+ LOADED</z303-birthplace>\n</z303>\n<z304>\n<z304-id>N12162279</z304-id>\n<z304-sequence>01</z304-sequence>\n<z304-address-0>DALTON,SCOT
41
+ THOMAS</z304-address-0>\n<z304-address-1>274 PROSPECT PARK WEST, #2L</z304-address-1>\n<z304-address-2>BROOKLYN</z304-address-2>\n<z304-address-3>NY</z304-address-3>\n<z304-address-4>NY</z304-address-4>\n<z304-zip>11215</z304-zip>\n<z304-email-address></z304-email-address>\n<z304-telephone></z304-telephone>\n<z304-date-from>20120728</z304-date-from>\n<z304-date-to>20200101</z304-date-to>\n<z304-address-type>02</z304-address-type>\n<z304-telephone-2></z304-telephone-2>\n<z304-telephone-3></z304-telephone-3>\n<z304-telephone-4></z304-telephone-4>\n<z304-sms-number></z304-sms-number>\n<z304-update-date>20120728</z304-update-date>\n<z304-cat-name>CONV</z304-cat-name>\n</z304>\n<z305>\n<z305-id>N12162279</z305-id>\n<z305-sub-library>BOBST</z305-sub-library>\n<z305-open-date>20041119</z305-open-date>\n<z305-update-date>20120905</z305-update-date>\n<z305-bor-type>CB</z305-bor-type>\n<z305-bor-status>89</z305-bor-status>\n<z305-registration-date>00000000</z305-registration-date>\n<z305-expiry-date>20130831</z305-expiry-date>\n<z305-note></z305-note>\n<z305-loan-permission>Y</z305-loan-permission>\n<z305-photo-permission>Y</z305-photo-permission>\n<z305-over-permission>Y</z305-over-permission>\n<z305-multi-hold>N</z305-multi-hold>\n<z305-loan-check>Y</z305-loan-check>\n<z305-hold-permission>Y</z305-hold-permission>\n<z305-renew-permission>Y</z305-renew-permission>\n<z305-rr-permission>N</z305-rr-permission>\n<z305-ignore-late-return>N</z305-ignore-late-return>\n<z305-last-activity-date>20111205</z305-last-activity-date>\n<z305-photo-charge>F</z305-photo-charge>\n<z305-no-loan>0000</z305-no-loan>\n<z305-no-hold>0000</z305-no-hold>\n<z305-no-photo>0000</z305-no-photo>\n<z305-no-cash>0000</z305-no-cash>\n<z305-cash-limit>5.00</z305-cash-limit>\n<z305-credit-debit></z305-credit-debit>\n<z305-sum>0.00</z305-sum>\n<z305-delinq-1>00</z305-delinq-1>\n<z305-delinq-n-1></z305-delinq-n-1>\n<z305-delinq-1-update-date>00000000</z305-delinq-1-update-date>\n<z305-delinq-1-cat-name></z305-delinq-1-cat-name>\n<z305-delinq-2>00</z305-delinq-2>\n<z305-delinq-n-2></z305-delinq-n-2>\n<z305-delinq-2-update-date>00000000</z305-delinq-2-update-date>\n<z305-delinq-2-cat-name></z305-delinq-2-cat-name>\n<z305-delinq-3>00</z305-delinq-3>\n<z305-delinq-n-3></z305-delinq-n-3>\n<z305-delinq-3-update-date>00000000</z305-delinq-3-update-date>\n<z305-delinq-3-cat-name></z305-delinq-3-cat-name>\n<z305-field-1></z305-field-1>\n<z305-field-2></z305-field-2>\n<z305-field-3></z305-field-3>\n<z305-hold-on-shelf>Y</z305-hold-on-shelf>\n<z305-end-block-date>00000000</z305-end-block-date>\n<z305-booking-permission>N</z305-booking-permission>\n<z305-booking-ignore-hours>N</z305-booking-ignore-hours>\n<z305-rush-cat-request>N</z305-rush-cat-request>\n</z305>\n<session-id>73X21MA2SDBYSCIGEXN55EU92I127UBRAXNNMY3CMN75Q46SA1</session-id>\n</bor-auth>\n "
42
+ http_version:
43
+ recorded_at: Mon, 12 Nov 2012 23:20:41 GMT
44
+ recorded_with: VCR 2.3.0
@@ -0,0 +1,44 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://alephstage.library.nyu.edu/X?bor_id=N12162279&library=NYU50&op=bor-auth&sub_library=BOBST&translate=N&verification=d4465aacaa645f2164908cd4184c09f0
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - ! '*/*'
12
+ User-Agent:
13
+ - Ruby
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Date:
20
+ - Mon, 12 Nov 2012 23:20:41 GMT
21
+ Server:
22
+ - ALEPH/5.20
23
+ Content-Type:
24
+ - text/xml
25
+ Pragma:
26
+ - no-cache
27
+ Cache-Control:
28
+ - no-cache, no-store, must-revalidate
29
+ Expires:
30
+ - Sat, 01 Jan 2000 01:00:00 GMT
31
+ Content-Length:
32
+ - '4927'
33
+ body:
34
+ encoding: US-ASCII
35
+ string: ! "<?xml version = \"1.0\" encoding = \"UTF-8\"?>\n<bor-auth>\n<z303>\n<z303-id>N12162279</z303-id>\n<z303-proxy-for-id></z303-proxy-for-id>\n<z303-primary-id></z303-primary-id>\n<z303-name-key>dalton
36
+ scot thomas N12162279</z303-name-key>\n<z303-user-type></z303-user-type>\n<z303-user-library></z303-user-library>\n<z303-open-date>20041119</z303-open-date>\n<z303-update-date>20120728</z303-update-date>\n<z303-con-lng>ENG</z303-con-lng>\n<z303-alpha>L</z303-alpha>\n<z303-name>DALTON,SCOT
37
+ THOMAS</z303-name>\n<z303-title></z303-title>\n<z303-delinq-1>00</z303-delinq-1>\n<z303-delinq-n-1></z303-delinq-n-1>\n<z303-delinq-1-update-date>00000000</z303-delinq-1-update-date>\n<z303-delinq-1-cat-name></z303-delinq-1-cat-name>\n<z303-delinq-2>03</z303-delinq-2>\n<z303-delinq-n-2>Added
38
+ to arrears</z303-delinq-n-2>\n<z303-delinq-2-update-date>20120619</z303-delinq-2-update-date>\n<z303-delinq-2-cat-name>CROWEC</z303-delinq-2-cat-name>\n<z303-delinq-3>00</z303-delinq-3>\n<z303-delinq-n-3></z303-delinq-n-3>\n<z303-delinq-3-update-date>00000000</z303-delinq-3-update-date>\n<z303-delinq-3-cat-name></z303-delinq-3-cat-name>\n<z303-budget></z303-budget>\n<z303-profile-id></z303-profile-id>\n<z303-ill-library></z303-ill-library>\n<z303-home-library>BOBST</z303-home-library>\n<z303-field-1></z303-field-1>\n<z303-field-2>Added
39
+ to Arrears 6/19/12 CTC</z303-field-2>\n<z303-field-3></z303-field-3>\n<z303-note-1></z303-note-1>\n<z303-note-2></z303-note-2>\n<z303-salutation></z303-salutation>\n<z303-ill-total-limit>0000</z303-ill-total-limit>\n<z303-ill-active-limit>0000</z303-ill-active-limit>\n<z303-dispatch-library></z303-dispatch-library>\n<z303-birth-date>00000000</z303-birth-date>\n<z303-export-consent>Y</z303-export-consent>\n<z303-proxy-id-type>00</z303-proxy-id-type>\n<z303-send-all-letters>Y</z303-send-all-letters>\n<z303-plain-html>P</z303-plain-html>\n<z303-want-sms>N</z303-want-sms>\n<z303-plif-modification></z303-plif-modification>\n<z303-title-req-limit>0000</z303-title-req-limit>\n<z303-gender></z303-gender>\n<z303-birthplace>PLIF
40
+ LOADED</z303-birthplace>\n</z303>\n<z304>\n<z304-id>N12162279</z304-id>\n<z304-sequence>01</z304-sequence>\n<z304-address-0>DALTON,SCOT
41
+ THOMAS</z304-address-0>\n<z304-address-1>274 PROSPECT PARK WEST, #2L</z304-address-1>\n<z304-address-2>BROOKLYN</z304-address-2>\n<z304-address-3>NY</z304-address-3>\n<z304-address-4>NY</z304-address-4>\n<z304-zip>11215</z304-zip>\n<z304-email-address></z304-email-address>\n<z304-telephone></z304-telephone>\n<z304-date-from>20120728</z304-date-from>\n<z304-date-to>20200101</z304-date-to>\n<z304-address-type>02</z304-address-type>\n<z304-telephone-2></z304-telephone-2>\n<z304-telephone-3></z304-telephone-3>\n<z304-telephone-4></z304-telephone-4>\n<z304-sms-number></z304-sms-number>\n<z304-update-date>20120728</z304-update-date>\n<z304-cat-name>CONV</z304-cat-name>\n</z304>\n<z305>\n<z305-id>N12162279</z305-id>\n<z305-sub-library>BOBST</z305-sub-library>\n<z305-open-date>20041119</z305-open-date>\n<z305-update-date>20120905</z305-update-date>\n<z305-bor-type>CB</z305-bor-type>\n<z305-bor-status>89</z305-bor-status>\n<z305-registration-date>00000000</z305-registration-date>\n<z305-expiry-date>20130831</z305-expiry-date>\n<z305-note></z305-note>\n<z305-loan-permission>Y</z305-loan-permission>\n<z305-photo-permission>Y</z305-photo-permission>\n<z305-over-permission>Y</z305-over-permission>\n<z305-multi-hold>N</z305-multi-hold>\n<z305-loan-check>Y</z305-loan-check>\n<z305-hold-permission>Y</z305-hold-permission>\n<z305-renew-permission>Y</z305-renew-permission>\n<z305-rr-permission>N</z305-rr-permission>\n<z305-ignore-late-return>N</z305-ignore-late-return>\n<z305-last-activity-date>20111205</z305-last-activity-date>\n<z305-photo-charge>F</z305-photo-charge>\n<z305-no-loan>0000</z305-no-loan>\n<z305-no-hold>0000</z305-no-hold>\n<z305-no-photo>0000</z305-no-photo>\n<z305-no-cash>0000</z305-no-cash>\n<z305-cash-limit>5.00</z305-cash-limit>\n<z305-credit-debit></z305-credit-debit>\n<z305-sum>0.00</z305-sum>\n<z305-delinq-1>00</z305-delinq-1>\n<z305-delinq-n-1></z305-delinq-n-1>\n<z305-delinq-1-update-date>00000000</z305-delinq-1-update-date>\n<z305-delinq-1-cat-name></z305-delinq-1-cat-name>\n<z305-delinq-2>00</z305-delinq-2>\n<z305-delinq-n-2></z305-delinq-n-2>\n<z305-delinq-2-update-date>00000000</z305-delinq-2-update-date>\n<z305-delinq-2-cat-name></z305-delinq-2-cat-name>\n<z305-delinq-3>00</z305-delinq-3>\n<z305-delinq-n-3></z305-delinq-n-3>\n<z305-delinq-3-update-date>00000000</z305-delinq-3-update-date>\n<z305-delinq-3-cat-name></z305-delinq-3-cat-name>\n<z305-field-1></z305-field-1>\n<z305-field-2></z305-field-2>\n<z305-field-3></z305-field-3>\n<z305-hold-on-shelf>Y</z305-hold-on-shelf>\n<z305-end-block-date>00000000</z305-end-block-date>\n<z305-booking-permission>N</z305-booking-permission>\n<z305-booking-ignore-hours>N</z305-booking-ignore-hours>\n<z305-rush-cat-request>N</z305-rush-cat-request>\n</z305>\n<session-id>LCTU1VKKYBXAH4MRAYPEC44M2H55URXPYF23RDGA71PIEA7MCR</session-id>\n</bor-auth>\n "
42
+ http_version:
43
+ recorded_at: Mon, 12 Nov 2012 23:20:41 GMT
44
+ recorded_with: VCR 2.3.0
@@ -0,0 +1,68 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://login.nyu.edu/sso/identity/getCookieNameForToken
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - ! '*/*'
12
+ User-Agent:
13
+ - Ruby
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Server:
20
+ - Apache-Coyote/1.1
21
+ Content-Type:
22
+ - text/plain;charset=UTF-8
23
+ Content-Length:
24
+ - '27'
25
+ Date:
26
+ - Mon, 12 Nov 2012 23:20:41 GMT
27
+ body:
28
+ encoding: US-ASCII
29
+ string: ! 'string=iPlanetDirectoryPro
30
+
31
+ '
32
+ http_version:
33
+ recorded_at: Mon, 12 Nov 2012 23:20:41 GMT
34
+ - request:
35
+ method: get
36
+ uri: https://login.nyu.edu/sso/identity/isTokenValid
37
+ body:
38
+ encoding: US-ASCII
39
+ string: ''
40
+ headers:
41
+ Accept:
42
+ - ! '*/*'
43
+ User-Agent:
44
+ - Ruby
45
+ Cookie:
46
+ - iPlanetDirectoryPro=AQIC5wM2LY4SfczTdvNBIcB4pWXKQmc-G0dHh5xgWeS0A5I.*AAJTSQACMDIAAlMxAAIwNg..*;
47
+ path=
48
+ response:
49
+ status:
50
+ code: 200
51
+ message: OK
52
+ headers:
53
+ Server:
54
+ - Apache-Coyote/1.1
55
+ Content-Type:
56
+ - text/plain;charset=UTF-8
57
+ Content-Length:
58
+ - '13'
59
+ Date:
60
+ - Mon, 12 Nov 2012 23:20:40 GMT
61
+ body:
62
+ encoding: US-ASCII
63
+ string: ! 'boolean=true
64
+
65
+ '
66
+ http_version:
67
+ recorded_at: Mon, 12 Nov 2012 23:20:41 GMT
68
+ recorded_with: VCR 2.3.0
@@ -0,0 +1,67 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://login.nyu.edu/sso/identity/getCookieNameForToken
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - ! '*/*'
12
+ User-Agent:
13
+ - Ruby
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Server:
20
+ - Apache-Coyote/1.1
21
+ Content-Type:
22
+ - text/plain;charset=UTF-8
23
+ Content-Length:
24
+ - '27'
25
+ Date:
26
+ - Mon, 12 Nov 2012 23:20:40 GMT
27
+ body:
28
+ encoding: US-ASCII
29
+ string: ! 'string=iPlanetDirectoryPro
30
+
31
+ '
32
+ http_version:
33
+ recorded_at: Mon, 12 Nov 2012 23:20:41 GMT
34
+ - request:
35
+ method: get
36
+ uri: https://login.nyu.edu/sso/identity/isTokenValid
37
+ body:
38
+ encoding: US-ASCII
39
+ string: ''
40
+ headers:
41
+ Accept:
42
+ - ! '*/*'
43
+ User-Agent:
44
+ - Ruby
45
+ Cookie:
46
+ - iPlanetDirectoryPro=Invalid; path=
47
+ response:
48
+ status:
49
+ code: 200
50
+ message: OK
51
+ headers:
52
+ Server:
53
+ - Apache-Coyote/1.1
54
+ Content-Type:
55
+ - text/plain;charset=UTF-8
56
+ Content-Length:
57
+ - '14'
58
+ Date:
59
+ - Mon, 12 Nov 2012 23:20:41 GMT
60
+ body:
61
+ encoding: US-ASCII
62
+ string: ! 'boolean=false
63
+
64
+ '
65
+ http_version:
66
+ recorded_at: Mon, 12 Nov 2012 23:20:41 GMT
67
+ recorded_with: VCR 2.3.0
@@ -0,0 +1,37 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://www.nyu.edu/identity/getCookieNameForToken
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - ! '*/*'
12
+ User-Agent:
13
+ - Ruby
14
+ response:
15
+ status:
16
+ code: 404
17
+ message: Not Found
18
+ headers:
19
+ Date:
20
+ - Mon, 12 Nov 2012 23:20:40 GMT
21
+ Server:
22
+ - Apache/2.2.15 (Red Hat) DAV/2 mod_ssl/2.2.15 OpenSSL/1.0.0-fips Communique/4.0.11
23
+ Content-Length:
24
+ - '93'
25
+ Www:
26
+ - www3
27
+ Content-Type:
28
+ - text/html;charset=UTF-8
29
+ Set-Cookie:
30
+ - BIGipServerWWW-HTTP=1378527424.20480.0000; path=/
31
+ body:
32
+ encoding: US-ASCII
33
+ string: ! "<html><head><title>\n404\n \nNot Found\n</title></head><body><h1>\nNot
34
+ Found\n</h1>\n</body></html>\n"
35
+ http_version:
36
+ recorded_at: Mon, 12 Nov 2012 23:20:40 GMT
37
+ recorded_with: VCR 2.3.0
@@ -0,0 +1,67 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://login.nyu.edu/sso/identity/getCookieNameForToken
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - ! '*/*'
12
+ User-Agent:
13
+ - Ruby
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Server:
20
+ - Apache-Coyote/1.1
21
+ Content-Type:
22
+ - text/plain;charset=UTF-8
23
+ Content-Length:
24
+ - '27'
25
+ Date:
26
+ - Mon, 12 Nov 2012 23:20:41 GMT
27
+ body:
28
+ encoding: US-ASCII
29
+ string: ! 'string=iPlanetDirectoryPro
30
+
31
+ '
32
+ http_version:
33
+ recorded_at: Mon, 12 Nov 2012 23:20:41 GMT
34
+ - request:
35
+ method: get
36
+ uri: https://login.nyu.edu/sso/identity/isTokenValid
37
+ body:
38
+ encoding: US-ASCII
39
+ string: ''
40
+ headers:
41
+ Accept:
42
+ - ! '*/*'
43
+ User-Agent:
44
+ - Ruby
45
+ Cookie:
46
+ - iPlanetDirectoryPro=Invalid; path=
47
+ response:
48
+ status:
49
+ code: 200
50
+ message: OK
51
+ headers:
52
+ Server:
53
+ - Apache-Coyote/1.1
54
+ Content-Type:
55
+ - text/plain;charset=UTF-8
56
+ Content-Length:
57
+ - '14'
58
+ Date:
59
+ - Mon, 12 Nov 2012 23:20:40 GMT
60
+ body:
61
+ encoding: US-ASCII
62
+ string: ! 'boolean=false
63
+
64
+ '
65
+ http_version:
66
+ recorded_at: Mon, 12 Nov 2012 23:20:41 GMT
67
+ recorded_with: VCR 2.3.0
@@ -0,0 +1,68 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://login.nyu.edu/sso/identity/getCookieNameForToken
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - ! '*/*'
12
+ User-Agent:
13
+ - Ruby
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Server:
20
+ - Apache-Coyote/1.1
21
+ Content-Type:
22
+ - text/plain;charset=UTF-8
23
+ Content-Length:
24
+ - '27'
25
+ Date:
26
+ - Mon, 12 Nov 2012 23:20:41 GMT
27
+ body:
28
+ encoding: US-ASCII
29
+ string: ! 'string=iPlanetDirectoryPro
30
+
31
+ '
32
+ http_version:
33
+ recorded_at: Mon, 12 Nov 2012 23:20:41 GMT
34
+ - request:
35
+ method: get
36
+ uri: https://login.nyu.edu/sso/identity/isTokenValid
37
+ body:
38
+ encoding: US-ASCII
39
+ string: ''
40
+ headers:
41
+ Accept:
42
+ - ! '*/*'
43
+ User-Agent:
44
+ - Ruby
45
+ Cookie:
46
+ - iPlanetDirectoryPro=AQIC5wM2LY4SfczTdvNBIcB4pWXKQmc-G0dHh5xgWeS0A5I.*AAJTSQACMDIAAlMxAAIwNg..*;
47
+ path=
48
+ response:
49
+ status:
50
+ code: 200
51
+ message: OK
52
+ headers:
53
+ Server:
54
+ - Apache-Coyote/1.1
55
+ Content-Type:
56
+ - text/plain;charset=UTF-8
57
+ Content-Length:
58
+ - '13'
59
+ Date:
60
+ - Mon, 12 Nov 2012 23:20:40 GMT
61
+ body:
62
+ encoding: US-ASCII
63
+ string: ! 'boolean=true
64
+
65
+ '
66
+ http_version:
67
+ recorded_at: Mon, 12 Nov 2012 23:20:41 GMT
68
+ recorded_with: VCR 2.3.0
@@ -0,0 +1,68 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://login.nyu.edu/sso/identity/getCookieNameForToken
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - ! '*/*'
12
+ User-Agent:
13
+ - Ruby
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Server:
20
+ - Apache-Coyote/1.1
21
+ Content-Type:
22
+ - text/plain;charset=UTF-8
23
+ Content-Length:
24
+ - '27'
25
+ Date:
26
+ - Mon, 12 Nov 2012 23:20:40 GMT
27
+ body:
28
+ encoding: US-ASCII
29
+ string: ! 'string=iPlanetDirectoryPro
30
+
31
+ '
32
+ http_version:
33
+ recorded_at: Mon, 12 Nov 2012 23:20:41 GMT
34
+ - request:
35
+ method: get
36
+ uri: https://login.nyu.edu/sso/identity/isTokenValid
37
+ body:
38
+ encoding: US-ASCII
39
+ string: ''
40
+ headers:
41
+ Accept:
42
+ - ! '*/*'
43
+ User-Agent:
44
+ - Ruby
45
+ Cookie:
46
+ - iPlanetDirectoryPro=AQIC5wM2LY4SfczTdvNBIcB4pWXKQmc-G0dHh5xgWeS0A5I.*AAJTSQACMDIAAlMxAAIwNg..*;
47
+ path=
48
+ response:
49
+ status:
50
+ code: 200
51
+ message: OK
52
+ headers:
53
+ Server:
54
+ - Apache-Coyote/1.1
55
+ Content-Type:
56
+ - text/plain;charset=UTF-8
57
+ Content-Length:
58
+ - '13'
59
+ Date:
60
+ - Mon, 12 Nov 2012 23:20:41 GMT
61
+ body:
62
+ encoding: US-ASCII
63
+ string: ! 'boolean=true
64
+
65
+ '
66
+ http_version:
67
+ recorded_at: Mon, 12 Nov 2012 23:20:41 GMT
68
+ recorded_with: VCR 2.3.0
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: authpds-nyu
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.2.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,8 +9,24 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-11-10 00:00:00.000000000 Z
12
+ date: 2012-11-12 00:00:00.000000000 Z
13
13
  dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: require_all
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ~>
20
+ - !ruby/object:Gem::Version
21
+ version: 1.2.1
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ version: 1.2.1
14
30
  - !ruby/object:Gem::Dependency
15
31
  name: rails
16
32
  requirement: !ruby/object:Gem::Requirement
@@ -50,7 +66,7 @@ dependencies:
50
66
  requirements:
51
67
  - - ~>
52
68
  - !ruby/object:Gem::Version
53
- version: 0.1.4
69
+ version: 0.1.0
54
70
  type: :runtime
55
71
  prerelease: false
56
72
  version_requirements: !ruby/object:Gem::Requirement
@@ -58,23 +74,55 @@ dependencies:
58
74
  requirements:
59
75
  - - ~>
60
76
  - !ruby/object:Gem::Version
61
- version: 0.1.4
77
+ version: 0.1.0
62
78
  - !ruby/object:Gem::Dependency
63
- name: sqlite3
79
+ name: rake
64
80
  requirement: !ruby/object:Gem::Requirement
65
81
  none: false
66
82
  requirements:
67
- - - ! '>='
83
+ - - ~>
68
84
  - !ruby/object:Gem::Version
69
- version: '0'
85
+ version: 0.9.2.2
70
86
  type: :development
71
87
  prerelease: false
72
88
  version_requirements: !ruby/object:Gem::Requirement
73
89
  none: false
74
90
  requirements:
75
- - - ! '>='
91
+ - - ~>
92
+ - !ruby/object:Gem::Version
93
+ version: 0.9.2.2
94
+ - !ruby/object:Gem::Dependency
95
+ name: vcr
96
+ requirement: !ruby/object:Gem::Requirement
97
+ none: false
98
+ requirements:
99
+ - - ~>
100
+ - !ruby/object:Gem::Version
101
+ version: 2.3.0
102
+ type: :development
103
+ prerelease: false
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ~>
108
+ - !ruby/object:Gem::Version
109
+ version: 2.3.0
110
+ - !ruby/object:Gem::Dependency
111
+ name: webmock
112
+ requirement: !ruby/object:Gem::Requirement
113
+ none: false
114
+ requirements:
115
+ - - ~>
116
+ - !ruby/object:Gem::Version
117
+ version: 1.9.0
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ~>
76
124
  - !ruby/object:Gem::Version
77
- version: '0'
125
+ version: 1.9.0
78
126
  description: NYU libraries SSO client.
79
127
  email:
80
128
  - scotdalton@gmail.com
@@ -82,6 +130,11 @@ executables: []
82
130
  extensions: []
83
131
  extra_rdoc_files: []
84
132
  files:
133
+ - lib/authpds-nyu/session/aleph.rb
134
+ - lib/authpds-nyu/session/callbacks.rb
135
+ - lib/authpds-nyu/session/config.rb
136
+ - lib/authpds-nyu/session/core_attributes.rb
137
+ - lib/authpds-nyu/session/url_handling.rb
85
138
  - lib/authpds-nyu/session.rb
86
139
  - lib/authpds-nyu/sun/opensso.rb
87
140
  - lib/authpds-nyu/version.rb
@@ -92,11 +145,19 @@ files:
92
145
  - README.rdoc
93
146
  - test/authpds-nyu_test.rb
94
147
  - test/fixtures/users.yml
148
+ - test/opensso_test.rb
95
149
  - test/support/user.rb
96
150
  - test/support/user_session.rb
97
151
  - test/test_helper.rb
98
- - test/unit/opensso_test.rb
99
- - test/unit/user_session_test.rb
152
+ - test/user_session_test.rb
153
+ - test/vcr_cassettes/bor_auth.yml
154
+ - test/vcr_cassettes/bor_auth_permissions.yml
155
+ - test/vcr_cassettes/find.yml
156
+ - test/vcr_cassettes/invalid_opensso_cookie.yml
157
+ - test/vcr_cassettes/invalid_opensso_url.yml
158
+ - test/vcr_cassettes/invalid_sso_session.yml
159
+ - test/vcr_cassettes/valid_opensso_cookie.yml
160
+ - test/vcr_cassettes/valid_sso_session.yml
100
161
  homepage: http://github.com/scotdalton/authpds-nyu
101
162
  licenses: []
102
163
  post_install_message:
@@ -111,7 +172,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
111
172
  version: '0'
112
173
  segments:
113
174
  - 0
114
- hash: -1072363984571731423
175
+ hash: -4245034746630320250
115
176
  required_rubygems_version: !ruby/object:Gem::Requirement
116
177
  none: false
117
178
  requirements:
@@ -120,7 +181,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
120
181
  version: '0'
121
182
  segments:
122
183
  - 0
123
- hash: -1072363984571731423
184
+ hash: -4245034746630320250
124
185
  requirements: []
125
186
  rubyforge_project:
126
187
  rubygems_version: 1.8.24
@@ -130,8 +191,16 @@ summary: NYU libraries SSO client.
130
191
  test_files:
131
192
  - test/authpds-nyu_test.rb
132
193
  - test/fixtures/users.yml
194
+ - test/opensso_test.rb
133
195
  - test/support/user.rb
134
196
  - test/support/user_session.rb
135
197
  - test/test_helper.rb
136
- - test/unit/opensso_test.rb
137
- - test/unit/user_session_test.rb
198
+ - test/user_session_test.rb
199
+ - test/vcr_cassettes/bor_auth.yml
200
+ - test/vcr_cassettes/bor_auth_permissions.yml
201
+ - test/vcr_cassettes/find.yml
202
+ - test/vcr_cassettes/invalid_opensso_cookie.yml
203
+ - test/vcr_cassettes/invalid_opensso_url.yml
204
+ - test/vcr_cassettes/invalid_sso_session.yml
205
+ - test/vcr_cassettes/valid_opensso_cookie.yml
206
+ - test/vcr_cassettes/valid_sso_session.yml