rubycas-client 2.3.9 → 2.3.10.rc1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,30 @@
1
+ *.swp
2
+ *.gem
3
+
4
+ # simplecov generated
5
+ coverage
6
+
7
+ # rdoc generated
8
+ rdoc
9
+
10
+ # yard generated
11
+ doc
12
+ .yardoc
13
+
14
+ # bundler
15
+ .bundle
16
+
17
+ # jeweler generated
18
+ pkg
19
+
20
+ # rbenv and rvm configs
21
+ .rbenv-version
22
+ .rbenv-vars
23
+ .rvmrc
24
+ .ruby-version
25
+
26
+ tmp
27
+
28
+ .project
29
+
30
+ Gemfile.lock
@@ -1,18 +1,34 @@
1
1
  language: ruby
2
+ gemfile:
3
+ - gemfiles/rails23.gemfile
4
+ - gemfiles/rails30.gemfile
5
+ - gemfiles/rails31.gemfile
6
+ - gemfiles/rails32.gemfile
2
7
  rvm:
3
8
  - 1.8.7
4
9
  - 1.9.2
5
10
  - 1.9.3
11
+ - 2.0.0
6
12
  - ruby-head
7
- - ree
8
13
  - jruby-18mode
9
14
  - jruby-19mode
10
15
  - jruby-head
11
16
  - rbx-18mode
12
17
  - rbx-19mode
13
18
  matrix:
14
- allow_failures:
19
+ exclude:
20
+ - rvm: 1.9.3
21
+ gemfile: gemfiles/rails23.gemfile
22
+ - rvm: 2.0.0
23
+ gemfile: gemfiles/rails23.gemfile
24
+ - rvm: ruby-head
25
+ gemfile: gemfiles/rails23.gemfile
15
26
  - rvm: jruby-19mode
27
+ gemfile: gemfiles/rails23.gemfile
16
28
  - rvm: jruby-head
29
+ gemfile: gemfiles/rails23.gemfile
17
30
  - rvm: rbx-19mode
31
+ gemfile: gemfiles/rails23.gemfile
32
+ allow_failures:
33
+ - rvm: jruby-head
18
34
  - rvm: ruby-head
@@ -0,0 +1,17 @@
1
+ appraise "rails23" do
2
+ gem "activesupport", "~> 2.3.11"
3
+ end
4
+
5
+ appraise "rails30" do
6
+ gem "rails", "~> 3.0.17"
7
+ end
8
+
9
+ appraise "rails31" do
10
+ gem "rails", "~> 3.1.8"
11
+ end
12
+
13
+ appraise "rails32" do
14
+ gem "rails", "~> 3.2.8"
15
+ end
16
+
17
+ # vim: filetype=ruby
data/Gemfile CHANGED
@@ -1,27 +1,13 @@
1
1
  source "http://rubygems.org"
2
2
 
3
- group :development do
4
- gem "json"
5
- gem "rspec"
6
- gem "bundler", ">= 1.0"
7
- gem "jeweler"
8
- gem "actionpack", :require => 'action_pack'
9
- gem "activerecord", :require => 'active_record'
10
- gem "rake"
3
+ gemspec
4
+
5
+ group :tools do
11
6
  gem "simplecov", :require => false
12
7
  gem "guard"
13
8
  gem "guard-rspec"
14
- gem "database_cleaner"
15
-
16
- platforms :ruby do
17
- gem "sqlite3"
18
- end
19
-
20
- platforms :jruby do
21
- gem "jruby-openssl"
22
- gem "activerecord-jdbcsqlite3-adapter"
23
- end
9
+ gem "guard-bundler"
10
+ gem "fuubar"
11
+ gem "rb-fsevent"
12
+ gem "ruby_gntp", :group => :darwin
24
13
  end
25
-
26
- gem "activesupport", :require => "active_support"
27
-
data/Guardfile CHANGED
@@ -1,11 +1,16 @@
1
1
  # A sample Guardfile
2
2
  # More info at https://github.com/guard/guard#readme
3
3
 
4
- guard 'rspec', :version => 2, :cli => '-c -f doc' do
4
+ guard 'bundler' do
5
+ watch('Gemfile')
6
+ # Uncomment next line if Gemfile contain `gemspec' command
7
+ watch(/^.+\.gemspec/)
8
+ end
9
+
10
+ guard 'rspec', :version => 2, :cli => '-c -f Fuubar' do
5
11
  watch(%r{^spec/.+_spec\.rb$})
6
12
  watch(%r{^lib/(.+)\.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" }
7
13
  watch('spec/spec_helper.rb') { "spec" }
8
14
  watch(%r{^spec/support/(.+)\.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" }
9
15
  watch(%r{^spec/support/(.+)\.rb$}) { "spec" }
10
16
  end
11
-
@@ -1,5 +1,20 @@
1
1
  = RubyCAS-Client Changelog
2
2
 
3
+ == Version 2.3.10.rc1 :: 2013-03-18
4
+
5
+ * Bug Fixes
6
+ * Fixed bug where ActiveRecordTicketStore failed to add the service
7
+ ticket to the sessions table
8
+ * Fixed compatibility of login_to_service with rubycas-server 1.1.x (@bradseefeld)
9
+ * Fix an issue that prevented inspection of faked extra attributes on the filter (@yurikoval)
10
+ * Fix travis builds running incorrectly (@tpicket66)
11
+ * Remove dependency on rubycas-client-rails when Rails 3.x is being used (@KrisSiegel)
12
+ * Fix an issue where the Ticket Store might break under Rails 3.x
13
+ * Fix loading the ActiveRecordTicketStore by symbol
14
+
15
+ * Other
16
+ * Vastly expand combinations of ruby and rails versions that are considered supported. - see .travis.yml
17
+
3
18
  == Version 2.3.9 :: 2012-06-20
4
19
 
5
20
  * Other
@@ -1,3 +1,6 @@
1
+ {<img src="https://secure.travis-ci.org/rubycas/rubycas-client.png" alt="Build Status" />}[http://travis-ci.org/rubycas/rubycas-client]
2
+ {<img src="https://codeclimate.com/badge.png" />}[https://codeclimate.com/github/rubycas/rubycas-client]
3
+
1
4
  = RubyCAS-Client
2
5
 
3
6
  Authors:: Matt Zukowski <matt AT roughest DOT net> and Matt Campbell <matt AT soupmatt DOT com>; inspired by code by Ola Bini <ola.bini AT ki DOT se> and Matt Walker <mwalker AT tamu DOT edu>
@@ -8,7 +11,6 @@ License:: MIT License
8
11
  Websites:: http://github.com/rubycas/rubycas-client
9
12
  http://github.com/rubycas/rubycas-client/wiki
10
13
  http://rubydoc.info/github/rubycas/rubycas-client/master/frames
11
- Build Status:: {<img src="http://travis-ci.org/rubycas/rubycas-client.png" />}[http://travis-ci.org/rubycas/rubycas-client]
12
14
 
13
15
  === RubyCAS-Client is a Ruby client library for Yale's Central Authentication Service (CAS) protocol.
14
16
 
data/Rakefile CHANGED
@@ -1,46 +1,18 @@
1
- # encoding: utf-8
2
-
3
- require 'rubygems'
4
- require 'bundler'
5
- begin
6
- Bundler.setup(:default, :development)
7
- rescue Bundler::BundlerError => e
8
- $stderr.puts e.message
9
- $stderr.puts "Run `bundle install` to install missing gems"
10
- exit e.status_code
11
- end
1
+ #!/usr/bin/env rake
2
+ require 'bundler/setup'
12
3
  require 'rake'
4
+ require 'bundler/gem_tasks'
13
5
 
14
- require 'jeweler'
15
- Jeweler::Tasks.new do |gem|
16
- gem.name = "rubycas-client"
17
- gem.homepage = "http://github.com/rubycas/rubycas-client"
18
- gem.license = "MIT"
19
- gem.summary = "Client library for the Central Authentication Service (CAS) protocol."
20
- gem.authors = ["Matt Zukowski", "Matt Walker", "Matt Campbell"]
21
- gem.rdoc_options = ['--main', 'README.rdoc']
22
- gem.files.exclude '.rvmrc', '.infinity_test', '.rbenv-version', '.rbenv-gemsets'
23
- # dependencies defined in Gemfile
24
- end
25
- Jeweler::RubygemsDotOrgTasks.new
6
+ require 'appraisal'
26
7
 
27
- begin
28
- require 'rspec/core/rake_task'
29
- desc 'Run RSpecs to confirm that all functionality is working as expected'
30
- RSpec::Core::RakeTask.new('spec') do |t|
31
- t.pattern = 'spec/**/*_spec.rb'
32
- end
33
- task :default => :spec
34
- rescue LoadError
35
- puts "Hiding spec tasks because RSpec is not available"
36
- end
8
+ require 'rspec/core/rake_task'
9
+ RSpec::Core::RakeTask.new
37
10
 
38
- require 'rake/rdoctask'
39
- Rake::RDocTask.new do |rdoc|
40
- version = File.exist?('VERSION') ? File.read('VERSION') : ""
11
+ task :default => [:spec]
41
12
 
42
- rdoc.rdoc_dir = 'rdoc'
43
- rdoc.title = "rubycas-client #{version}"
44
- rdoc.rdoc_files.include('README*')
45
- rdoc.rdoc_files.include('lib/**/*.rb')
13
+ namespace :spec do
14
+ desc 'run the specs and features against every gemset.'
15
+ task :all do
16
+ system("bundle exec rake -s appraisal spec ;")
17
+ end
46
18
  end
@@ -0,0 +1 @@
1
+ *.lock
@@ -0,0 +1,7 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "http://rubygems.org"
4
+
5
+ gem "activesupport", "~> 2.3.11"
6
+
7
+ gemspec :path=>"../"
@@ -0,0 +1,7 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "http://rubygems.org"
4
+
5
+ gem "rails", "~> 3.0.17"
6
+
7
+ gemspec :path=>"../"
@@ -0,0 +1,7 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "http://rubygems.org"
4
+
5
+ gem "rails", "~> 3.1.8"
6
+
7
+ gemspec :path=>"../"
@@ -0,0 +1,7 @@
1
+ # This file was generated by Appraisal
2
+
3
+ source "http://rubygems.org"
4
+
5
+ gem "rails", "~> 3.2.8"
6
+
7
+ gemspec :path=>"../"
@@ -44,7 +44,8 @@ module CASClient
44
44
  when :local_dir_ticket_store, nil
45
45
  CASClient::Tickets::Storage::LocalDirTicketStore
46
46
  when :active_record_ticket_store
47
- ::ACTIVE_RECORD_TICKET_STORE
47
+ require 'casclient/tickets/storage/active_record_ticket_store'
48
+ CASClient::Tickets::Storage::ActiveRecordTicketStore
48
49
  else
49
50
  conf[:ticket_store]
50
51
  end
@@ -1,3 +1,4 @@
1
+ require 'action_controller'
1
2
  # Rails controller that responds to proxy generating ticket callbacks from the CAS server and allows
2
3
  # for retrieval of those PGTs.
3
4
  class CasProxyCallbackController < ActionController::Base
@@ -23,7 +24,7 @@ class CasProxyCallbackController < ActionController::Base
23
24
 
24
25
  # TODO: pstore contents should probably be encrypted...
25
26
 
26
- if Rails::VERSION::MAJOR > 2
27
+ if defined?(RubyCAS::Filter)
27
28
  casclient = RubyCAS::Filter.client
28
29
  else
29
30
  casclient = CASClient::Frameworks::Rails::Filter.client
@@ -2,7 +2,7 @@ module CASClient
2
2
  module Frameworks
3
3
  module Rails
4
4
  class Filter
5
- cattr_reader :config, :log, :client, :fake_user, :fake_extra_attribues
5
+ cattr_reader :config, :log, :client, :fake_user, :fake_extra_attributes
6
6
 
7
7
  # These are initialized when you call configure.
8
8
  @@config = nil
@@ -297,7 +297,7 @@ module CASClient
297
297
 
298
298
  log.debug "Intercepted single-sign-out request for CAS session #{si.inspect}."
299
299
 
300
- @@client.ticket_store.process_single_sign_out(si)
300
+ @@client.ticket_store.process_single_sign_out(si)
301
301
 
302
302
  # Return true to indicate that a single-sign-out request was detected
303
303
  # and that further processing of the request is unnecessary.
@@ -190,8 +190,15 @@ module CASClient
190
190
  if location =~ /ticket=([^&]+)/
191
191
  @ticket = $~[1]
192
192
  end
193
-
194
- if not ((http_response.kind_of?(Net::HTTPSuccess) || http_response.kind_of?(Net::HTTPFound)) && @ticket.present?)
193
+
194
+ # Legacy check. CAS Server used to return a 200 (Success) or a 302 (Found) on successful authentication.
195
+ # This behavior should be deprecated at some point in the future.
196
+ legacy_valid_ticket = (http_response.kind_of?(Net::HTTPSuccess) || http_response.kind_of?(Net::HTTPFound)) && @ticket.present?
197
+
198
+ # If using rubycas-server 1.1.0+
199
+ valid_ticket = http_response.kind_of?(Net::HTTPSeeOther) && @ticket.present?
200
+
201
+ if !legacy_valid_ticket && !valid_ticket
195
202
  @failure = true
196
203
  # Try to extract the error message -- this only works with RubyCAS-Server.
197
204
  # For other servers we just return the entire response body (i.e. the whole error page).
@@ -29,7 +29,7 @@ module CASClient
29
29
  session_id = read_service_session_lookup(st)
30
30
  unless session_id.nil?
31
31
  # This feels a bit hackish, but there isn't really a better way to go about it that I am aware of yet
32
- session = ActiveRecord::SessionStore.session_class.find_by_session_id(session_id)
32
+ session = ActiveRecord::SessionStore.session_class.find(:first, :conditions => {:session_id => session_id})
33
33
  else
34
34
  log.warn("Couldn't destroy session service ticket #{st} because no corresponding session id could be found.")
35
35
  end
@@ -4,7 +4,8 @@ module CASClient
4
4
 
5
5
  # A Ticket Store that keeps it's ticket in database tables using ActiveRecord.
6
6
  #
7
- # Services Tickets are stored in an extra column add to the ActiveRecord sessions table.
7
+ # Services Tickets are stored in an extra column added to the ActiveRecord sessions table.
8
+ # You will need to add the service_ticket column your ActiveRecord sessions table.
8
9
  # Proxy Granting Tickets and their IOUs are stored in the cas_pgtious table.
9
10
  #
10
11
  # This ticket store takes the following config parameters
@@ -16,6 +17,7 @@ module CASClient
16
17
  if config[:pgtious_table_name]
17
18
  CasPgtiou.set_table_name = config[:pgtious_table_name]
18
19
  end
20
+ ActiveRecord::SessionStore.session_class = ServiceTicketAwareSession
19
21
  end
20
22
 
21
23
  def store_service_session_lookup(st, controller)
@@ -62,7 +64,17 @@ module CASClient
62
64
 
63
65
  end
64
66
 
65
- ::ACTIVE_RECORD_TICKET_STORE = ActiveRecordTicketStore
67
+ ACTIVE_RECORD_TICKET_STORE = ActiveRecordTicketStore
68
+
69
+ class ServiceTicketAwareSession < ActiveRecord::SessionStore::Session
70
+ before_save :save_service_ticket
71
+
72
+ def save_service_ticket
73
+ if data[:service_ticket]
74
+ self.service_ticket = data[:service_ticket]
75
+ end
76
+ end
77
+ end
66
78
 
67
79
  class CasPgtiou < ActiveRecord::Base
68
80
  #t.string :pgt_iou, :null => false
@@ -0,0 +1,3 @@
1
+ module CasClient
2
+ VERSION = "2.3.10.rc1"
3
+ end
@@ -1,143 +1,38 @@
1
- # Generated by jeweler
2
- # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
1
  # -*- encoding: utf-8 -*-
2
+ $LOAD_PATH << File.expand_path("../lib", __FILE__)
3
+ require 'rubycas-client/version'
5
4
 
6
- Gem::Specification.new do |s|
7
- s.name = "rubycas-client"
8
- s.version = "2.3.9"
9
-
10
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["Matt Zukowski", "Matt Walker", "Matt Campbell"]
12
- s.date = "2012-06-20"
13
- s.extra_rdoc_files = [
5
+ Gem::Specification.new do |gem|
6
+ gem.authors = ["Matt Campbell", "Matt Zukowski", "Matt Walker", "Matt Campbell"]
7
+ gem.email = ["matt@soupmatt.com"]
8
+ gem.summary = %q{Client library for the Central Authentication Service (CAS) protocol.}
9
+ gem.description = %q{Client library for the Central Authentication Service (CAS) protocol.}
10
+ gem.homepage = "https://github.com/rubycas/rubycas-client"
11
+ gem.extra_rdoc_files = [
14
12
  "LICENSE.txt",
15
13
  "README.rdoc"
16
14
  ]
17
- s.files = [
18
- ".rspec",
19
- ".simplecov",
20
- ".travis.yml",
21
- "CHANGELOG.txt",
22
- "Gemfile",
23
- "Gemfile.lock",
24
- "Guardfile",
25
- "History.txt",
26
- "LICENSE.txt",
27
- "README.rdoc",
28
- "Rakefile",
29
- "TODO.md",
30
- "VERSION",
31
- "examples/rails/README",
32
- "examples/rails/app/controllers/advanced_example_controller.rb",
33
- "examples/rails/app/controllers/application.rb",
34
- "examples/rails/app/controllers/simple_example_controller.rb",
35
- "examples/rails/app/views/advanced_example/index.html.erb",
36
- "examples/rails/app/views/advanced_example/my_account.html.erb",
37
- "examples/rails/app/views/simple_example/index.html.erb",
38
- "examples/rails/config/boot.rb",
39
- "examples/rails/config/environment.rb",
40
- "examples/rails/config/environments/development.rb",
41
- "examples/rails/config/environments/production.rb",
42
- "examples/rails/config/environments/test.rb",
43
- "examples/rails/config/initializers/inflections.rb",
44
- "examples/rails/config/initializers/mime_types.rb",
45
- "examples/rails/config/initializers/new_rails_defaults.rb",
46
- "examples/rails/config/routes.rb",
47
- "examples/rails/log/development.log",
48
- "examples/rails/log/production.log",
49
- "examples/rails/log/server.log",
50
- "examples/rails/log/test.log",
51
- "examples/rails/script/about",
52
- "examples/rails/script/console",
53
- "examples/rails/script/server",
54
- "lib/casclient.rb",
55
- "lib/casclient/client.rb",
56
- "lib/casclient/frameworks/rails/cas_proxy_callback_controller.rb",
57
- "lib/casclient/frameworks/rails/filter.rb",
58
- "lib/casclient/responses.rb",
59
- "lib/casclient/tickets.rb",
60
- "lib/casclient/tickets/storage.rb",
61
- "lib/casclient/tickets/storage/active_record_ticket_store.rb",
62
- "lib/rubycas-client.rb",
63
- "rails_generators/active_record_ticket_store/USAGE",
64
- "rails_generators/active_record_ticket_store/active_record_ticket_store_generator.rb",
65
- "rails_generators/active_record_ticket_store/templates/README",
66
- "rails_generators/active_record_ticket_store/templates/migration.rb",
67
- "rubycas-client.gemspec",
68
- "spec/.gitignore",
69
- "spec/casclient/client_spec.rb",
70
- "spec/casclient/frameworks/rails/filter_spec.rb",
71
- "spec/casclient/tickets/storage/active_record_ticket_store_spec.rb",
72
- "spec/casclient/tickets/storage_spec.rb",
73
- "spec/casclient/validation_response_spec.rb",
74
- "spec/database.yml",
75
- "spec/spec_helper.rb",
76
- "spec/support/action_controller_helpers.rb",
77
- "spec/support/active_record_helpers.rb",
78
- "spec/support/local_hash_ticket_store.rb",
79
- "spec/support/local_hash_ticket_store_spec.rb",
80
- "spec/support/shared_examples_for_ticket_stores.rb"
81
- ]
82
- s.homepage = "http://github.com/rubycas/rubycas-client"
83
- s.licenses = ["MIT"]
84
- s.rdoc_options = ["--main", "README.rdoc"]
85
- s.require_paths = ["lib"]
86
- s.rubygems_version = "1.8.23"
87
- s.summary = "Client library for the Central Authentication Service (CAS) protocol."
15
+ gem.licenses = ["MIT"]
16
+ gem.rdoc_options = ["--main", "README.rdoc"]
17
+ gem.version = CasClient::VERSION
88
18
 
89
- if s.respond_to? :specification_version then
90
- s.specification_version = 3
19
+ gem.files = `git ls-files`.split($\)
20
+ gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
21
+ gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
22
+ gem.name = "rubycas-client"
23
+ gem.require_paths = ["lib"]
91
24
 
92
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
93
- s.add_runtime_dependency(%q<activesupport>, [">= 0"])
94
- s.add_development_dependency(%q<json>, [">= 0"])
95
- s.add_development_dependency(%q<rspec>, [">= 0"])
96
- s.add_development_dependency(%q<bundler>, [">= 1.0"])
97
- s.add_development_dependency(%q<jeweler>, [">= 0"])
98
- s.add_development_dependency(%q<actionpack>, [">= 0"])
99
- s.add_development_dependency(%q<activerecord>, [">= 0"])
100
- s.add_development_dependency(%q<rake>, [">= 0"])
101
- s.add_development_dependency(%q<simplecov>, [">= 0"])
102
- s.add_development_dependency(%q<guard>, [">= 0"])
103
- s.add_development_dependency(%q<guard-rspec>, [">= 0"])
104
- s.add_development_dependency(%q<database_cleaner>, [">= 0"])
105
- s.add_development_dependency(%q<sqlite3>, [">= 0"])
106
- s.add_development_dependency(%q<jruby-openssl>, [">= 0"])
107
- s.add_development_dependency(%q<activerecord-jdbcsqlite3-adapter>, [">= 0"])
108
- else
109
- s.add_dependency(%q<activesupport>, [">= 0"])
110
- s.add_dependency(%q<json>, [">= 0"])
111
- s.add_dependency(%q<rspec>, [">= 0"])
112
- s.add_dependency(%q<bundler>, [">= 1.0"])
113
- s.add_dependency(%q<jeweler>, [">= 0"])
114
- s.add_dependency(%q<actionpack>, [">= 0"])
115
- s.add_dependency(%q<activerecord>, [">= 0"])
116
- s.add_dependency(%q<rake>, [">= 0"])
117
- s.add_dependency(%q<simplecov>, [">= 0"])
118
- s.add_dependency(%q<guard>, [">= 0"])
119
- s.add_dependency(%q<guard-rspec>, [">= 0"])
120
- s.add_dependency(%q<database_cleaner>, [">= 0"])
121
- s.add_dependency(%q<sqlite3>, [">= 0"])
122
- s.add_dependency(%q<jruby-openssl>, [">= 0"])
123
- s.add_dependency(%q<activerecord-jdbcsqlite3-adapter>, [">= 0"])
124
- end
25
+ gem.add_dependency("activesupport")
26
+ gem.add_development_dependency("rake")
27
+ gem.add_development_dependency("database_cleaner")
28
+ gem.add_development_dependency("json")
29
+ gem.add_development_dependency("rspec")
30
+ gem.add_development_dependency("appraisal")
31
+ gem.add_development_dependency("rails")
32
+ gem.add_development_dependency("simplecov")
33
+ if defined?(JRUBY_VERSION)
34
+ gem.add_development_dependency("activerecord-jdbcsqlite3-adapter")
125
35
  else
126
- s.add_dependency(%q<activesupport>, [">= 0"])
127
- s.add_dependency(%q<json>, [">= 0"])
128
- s.add_dependency(%q<rspec>, [">= 0"])
129
- s.add_dependency(%q<bundler>, [">= 1.0"])
130
- s.add_dependency(%q<jeweler>, [">= 0"])
131
- s.add_dependency(%q<actionpack>, [">= 0"])
132
- s.add_dependency(%q<activerecord>, [">= 0"])
133
- s.add_dependency(%q<rake>, [">= 0"])
134
- s.add_dependency(%q<simplecov>, [">= 0"])
135
- s.add_dependency(%q<guard>, [">= 0"])
136
- s.add_dependency(%q<guard-rspec>, [">= 0"])
137
- s.add_dependency(%q<database_cleaner>, [">= 0"])
138
- s.add_dependency(%q<sqlite3>, [">= 0"])
139
- s.add_dependency(%q<jruby-openssl>, [">= 0"])
140
- s.add_dependency(%q<activerecord-jdbcsqlite3-adapter>, [">= 0"])
36
+ gem.add_development_dependency("sqlite3")
141
37
  end
142
38
  end
143
-
@@ -1,6 +1,6 @@
1
1
  require 'bundler'
2
2
  Bundler.setup(:default, :development)
3
- require 'simplecov' unless ENV['TRAVIS']
3
+ require 'simplecov' unless ENV['TRAVIS'] || defined?(JRUBY_VERSION)
4
4
  Bundler.require
5
5
 
6
6
  require 'rubycas-client'
@@ -18,6 +18,11 @@ RSpec.configure do |config|
18
18
  config.mock_framework = :rspec
19
19
  config.include ActionControllerHelpers
20
20
 
21
+ config.treat_symbols_as_metadata_keys_with_true_values = true
22
+ config.filter_run_including :focus
23
+ config.run_all_when_everything_filtered = true
24
+ config.fail_fast = false
25
+
21
26
  config.before(:suite) do
22
27
  ActiveRecordHelpers.setup_active_record
23
28
  DatabaseCleaner.strategy = :transaction
@@ -23,8 +23,10 @@ module ActionControllerHelpers
23
23
  end
24
24
 
25
25
  def mock_post_request
26
- mock_request = ActionController::Request.new({})
26
+ mock_request = double("request")
27
27
  mock_request.stub(:post?) {true}
28
+ mock_request.stub(:session_options) { Hash.new }
29
+ mock_request.stub(:headers) { Hash.new }
28
30
  mock_request
29
31
  end
30
32
  end
@@ -50,7 +50,7 @@ shared_examples "a ticket store interacting with sessions" do
50
50
  end
51
51
  context "the session" do
52
52
  it "should be destroyed" do
53
- ActiveRecord::SessionStore.session_class.find_by_session_id(session.session_id).should be_nil
53
+ ActiveRecord::SessionStore.session_class.find(:first, :conditions => {:session_id => session.session_id}).should be_nil
54
54
  end
55
55
  end
56
56
  it "should destroy session for the given service ticket" do
metadata CHANGED
@@ -1,17 +1,18 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubycas-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.9
5
- prerelease:
4
+ version: 2.3.10.rc1
5
+ prerelease: 7
6
6
  platform: ruby
7
7
  authors:
8
+ - Matt Campbell
8
9
  - Matt Zukowski
9
10
  - Matt Walker
10
11
  - Matt Campbell
11
12
  autorequire:
12
13
  bindir: bin
13
14
  cert_chain: []
14
- date: 2012-06-20 00:00:00.000000000 Z
15
+ date: 2013-03-18 00:00:00.000000000 Z
15
16
  dependencies:
16
17
  - !ruby/object:Gem::Dependency
17
18
  name: activesupport
@@ -30,7 +31,7 @@ dependencies:
30
31
  - !ruby/object:Gem::Version
31
32
  version: '0'
32
33
  - !ruby/object:Gem::Dependency
33
- name: json
34
+ name: rake
34
35
  requirement: !ruby/object:Gem::Requirement
35
36
  none: false
36
37
  requirements:
@@ -46,7 +47,7 @@ dependencies:
46
47
  - !ruby/object:Gem::Version
47
48
  version: '0'
48
49
  - !ruby/object:Gem::Dependency
49
- name: rspec
50
+ name: database_cleaner
50
51
  requirement: !ruby/object:Gem::Requirement
51
52
  none: false
52
53
  requirements:
@@ -62,23 +63,7 @@ dependencies:
62
63
  - !ruby/object:Gem::Version
63
64
  version: '0'
64
65
  - !ruby/object:Gem::Dependency
65
- name: bundler
66
- requirement: !ruby/object:Gem::Requirement
67
- none: false
68
- requirements:
69
- - - ! '>='
70
- - !ruby/object:Gem::Version
71
- version: '1.0'
72
- type: :development
73
- prerelease: false
74
- version_requirements: !ruby/object:Gem::Requirement
75
- none: false
76
- requirements:
77
- - - ! '>='
78
- - !ruby/object:Gem::Version
79
- version: '1.0'
80
- - !ruby/object:Gem::Dependency
81
- name: jeweler
66
+ name: json
82
67
  requirement: !ruby/object:Gem::Requirement
83
68
  none: false
84
69
  requirements:
@@ -94,7 +79,7 @@ dependencies:
94
79
  - !ruby/object:Gem::Version
95
80
  version: '0'
96
81
  - !ruby/object:Gem::Dependency
97
- name: actionpack
82
+ name: rspec
98
83
  requirement: !ruby/object:Gem::Requirement
99
84
  none: false
100
85
  requirements:
@@ -110,7 +95,7 @@ dependencies:
110
95
  - !ruby/object:Gem::Version
111
96
  version: '0'
112
97
  - !ruby/object:Gem::Dependency
113
- name: activerecord
98
+ name: appraisal
114
99
  requirement: !ruby/object:Gem::Requirement
115
100
  none: false
116
101
  requirements:
@@ -126,7 +111,7 @@ dependencies:
126
111
  - !ruby/object:Gem::Version
127
112
  version: '0'
128
113
  - !ruby/object:Gem::Dependency
129
- name: rake
114
+ name: rails
130
115
  requirement: !ruby/object:Gem::Requirement
131
116
  none: false
132
117
  requirements:
@@ -157,54 +142,6 @@ dependencies:
157
142
  - - ! '>='
158
143
  - !ruby/object:Gem::Version
159
144
  version: '0'
160
- - !ruby/object:Gem::Dependency
161
- name: guard
162
- requirement: !ruby/object:Gem::Requirement
163
- none: false
164
- requirements:
165
- - - ! '>='
166
- - !ruby/object:Gem::Version
167
- version: '0'
168
- type: :development
169
- prerelease: false
170
- version_requirements: !ruby/object:Gem::Requirement
171
- none: false
172
- requirements:
173
- - - ! '>='
174
- - !ruby/object:Gem::Version
175
- version: '0'
176
- - !ruby/object:Gem::Dependency
177
- name: guard-rspec
178
- requirement: !ruby/object:Gem::Requirement
179
- none: false
180
- requirements:
181
- - - ! '>='
182
- - !ruby/object:Gem::Version
183
- version: '0'
184
- type: :development
185
- prerelease: false
186
- version_requirements: !ruby/object:Gem::Requirement
187
- none: false
188
- requirements:
189
- - - ! '>='
190
- - !ruby/object:Gem::Version
191
- version: '0'
192
- - !ruby/object:Gem::Dependency
193
- name: database_cleaner
194
- requirement: !ruby/object:Gem::Requirement
195
- none: false
196
- requirements:
197
- - - ! '>='
198
- - !ruby/object:Gem::Version
199
- version: '0'
200
- type: :development
201
- prerelease: false
202
- version_requirements: !ruby/object:Gem::Requirement
203
- none: false
204
- requirements:
205
- - - ! '>='
206
- - !ruby/object:Gem::Version
207
- version: '0'
208
145
  - !ruby/object:Gem::Dependency
209
146
  name: sqlite3
210
147
  requirement: !ruby/object:Gem::Requirement
@@ -221,52 +158,22 @@ dependencies:
221
158
  - - ! '>='
222
159
  - !ruby/object:Gem::Version
223
160
  version: '0'
224
- - !ruby/object:Gem::Dependency
225
- name: jruby-openssl
226
- requirement: !ruby/object:Gem::Requirement
227
- none: false
228
- requirements:
229
- - - ! '>='
230
- - !ruby/object:Gem::Version
231
- version: '0'
232
- type: :development
233
- prerelease: false
234
- version_requirements: !ruby/object:Gem::Requirement
235
- none: false
236
- requirements:
237
- - - ! '>='
238
- - !ruby/object:Gem::Version
239
- version: '0'
240
- - !ruby/object:Gem::Dependency
241
- name: activerecord-jdbcsqlite3-adapter
242
- requirement: !ruby/object:Gem::Requirement
243
- none: false
244
- requirements:
245
- - - ! '>='
246
- - !ruby/object:Gem::Version
247
- version: '0'
248
- type: :development
249
- prerelease: false
250
- version_requirements: !ruby/object:Gem::Requirement
251
- none: false
252
- requirements:
253
- - - ! '>='
254
- - !ruby/object:Gem::Version
255
- version: '0'
256
- description:
257
- email:
161
+ description: Client library for the Central Authentication Service (CAS) protocol.
162
+ email:
163
+ - matt@soupmatt.com
258
164
  executables: []
259
165
  extensions: []
260
166
  extra_rdoc_files:
261
167
  - LICENSE.txt
262
168
  - README.rdoc
263
169
  files:
170
+ - .gitignore
264
171
  - .rspec
265
172
  - .simplecov
266
173
  - .travis.yml
174
+ - Appraisals
267
175
  - CHANGELOG.txt
268
176
  - Gemfile
269
- - Gemfile.lock
270
177
  - Guardfile
271
178
  - History.txt
272
179
  - LICENSE.txt
@@ -297,6 +204,11 @@ files:
297
204
  - examples/rails/script/about
298
205
  - examples/rails/script/console
299
206
  - examples/rails/script/server
207
+ - gemfiles/.gitignore
208
+ - gemfiles/rails23.gemfile
209
+ - gemfiles/rails30.gemfile
210
+ - gemfiles/rails31.gemfile
211
+ - gemfiles/rails32.gemfile
300
212
  - lib/casclient.rb
301
213
  - lib/casclient/client.rb
302
214
  - lib/casclient/frameworks/rails/cas_proxy_callback_controller.rb
@@ -306,6 +218,7 @@ files:
306
218
  - lib/casclient/tickets/storage.rb
307
219
  - lib/casclient/tickets/storage/active_record_ticket_store.rb
308
220
  - lib/rubycas-client.rb
221
+ - lib/rubycas-client/version.rb
309
222
  - rails_generators/active_record_ticket_store/USAGE
310
223
  - rails_generators/active_record_ticket_store/active_record_ticket_store_generator.rb
311
224
  - rails_generators/active_record_ticket_store/templates/README
@@ -324,7 +237,7 @@ files:
324
237
  - spec/support/local_hash_ticket_store.rb
325
238
  - spec/support/local_hash_ticket_store_spec.rb
326
239
  - spec/support/shared_examples_for_ticket_stores.rb
327
- homepage: http://github.com/rubycas/rubycas-client
240
+ homepage: https://github.com/rubycas/rubycas-client
328
241
  licenses:
329
242
  - MIT
330
243
  post_install_message:
@@ -341,17 +254,30 @@ required_ruby_version: !ruby/object:Gem::Requirement
341
254
  version: '0'
342
255
  segments:
343
256
  - 0
344
- hash: -3808997340937767041
257
+ hash: 417856599320960902
345
258
  required_rubygems_version: !ruby/object:Gem::Requirement
346
259
  none: false
347
260
  requirements:
348
- - - ! '>='
261
+ - - ! '>'
349
262
  - !ruby/object:Gem::Version
350
- version: '0'
263
+ version: 1.3.1
351
264
  requirements: []
352
265
  rubyforge_project:
353
266
  rubygems_version: 1.8.23
354
267
  signing_key:
355
268
  specification_version: 3
356
269
  summary: Client library for the Central Authentication Service (CAS) protocol.
357
- test_files: []
270
+ test_files:
271
+ - spec/.gitignore
272
+ - spec/casclient/client_spec.rb
273
+ - spec/casclient/frameworks/rails/filter_spec.rb
274
+ - spec/casclient/tickets/storage/active_record_ticket_store_spec.rb
275
+ - spec/casclient/tickets/storage_spec.rb
276
+ - spec/casclient/validation_response_spec.rb
277
+ - spec/database.yml
278
+ - spec/spec_helper.rb
279
+ - spec/support/action_controller_helpers.rb
280
+ - spec/support/active_record_helpers.rb
281
+ - spec/support/local_hash_ticket_store.rb
282
+ - spec/support/local_hash_ticket_store_spec.rb
283
+ - spec/support/shared_examples_for_ticket_stores.rb
@@ -1,74 +0,0 @@
1
- GEM
2
- remote: http://rubygems.org/
3
- specs:
4
- actionpack (2.3.11)
5
- activesupport (= 2.3.11)
6
- rack (~> 1.1.0)
7
- activerecord (2.3.11)
8
- activesupport (= 2.3.11)
9
- activerecord-jdbc-adapter (1.2.2)
10
- activerecord-jdbcsqlite3-adapter (1.2.2)
11
- activerecord-jdbc-adapter (~> 1.2.2)
12
- jdbc-sqlite3 (~> 3.7.2)
13
- activesupport (2.3.11)
14
- bouncy-castle-java (1.5.0146.1)
15
- database_cleaner (0.7.1)
16
- diff-lcs (1.1.3)
17
- ffi (1.0.11)
18
- ffi (1.0.11-java)
19
- git (1.2.5)
20
- guard (1.0.0)
21
- ffi (>= 0.5.0)
22
- thor (~> 0.14.6)
23
- guard-rspec (0.6.0)
24
- guard (>= 0.10.0)
25
- jdbc-sqlite3 (3.7.2)
26
- jeweler (1.8.3)
27
- bundler (~> 1.0)
28
- git (>= 1.2.5)
29
- rake
30
- rdoc
31
- jruby-openssl (0.7.5)
32
- bouncy-castle-java (>= 1.5.0146.1)
33
- json (1.6.5)
34
- json (1.6.5-java)
35
- multi_json (1.0.4)
36
- rack (1.1.2)
37
- rake (0.9.2.2)
38
- rdoc (3.12)
39
- json (~> 1.4)
40
- rspec (2.8.0)
41
- rspec-core (~> 2.8.0)
42
- rspec-expectations (~> 2.8.0)
43
- rspec-mocks (~> 2.8.0)
44
- rspec-core (2.8.0)
45
- rspec-expectations (2.8.0)
46
- diff-lcs (~> 1.1.2)
47
- rspec-mocks (2.8.0)
48
- simplecov (0.5.4)
49
- multi_json (~> 1.0.3)
50
- simplecov-html (~> 0.5.3)
51
- simplecov-html (0.5.3)
52
- sqlite3 (1.3.5)
53
- thor (0.14.6)
54
-
55
- PLATFORMS
56
- java
57
- ruby
58
-
59
- DEPENDENCIES
60
- actionpack
61
- activerecord
62
- activerecord-jdbcsqlite3-adapter
63
- activesupport
64
- bundler (>= 1.0)
65
- database_cleaner
66
- guard
67
- guard-rspec
68
- jeweler
69
- jruby-openssl
70
- json
71
- rake
72
- rspec
73
- simplecov
74
- sqlite3