verge 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
data/Rakefile CHANGED
@@ -10,14 +10,14 @@ begin
10
10
  gem.email = "adam@wartube.com"
11
11
  gem.homepage = "http://github.com/adamelliot/verge"
12
12
  gem.authors = ["Adam Elliot"]
13
- gem.add_dependency "sinatra"
14
- gem.add_dependency "datamapper"
15
- gem.add_dependency "bcrypt-ruby"
16
- gem.add_dependency "activesupport"
17
- gem.add_development_dependency "rspec"
18
- gem.add_development_dependency "factory_girl"
19
- gem.add_development_dependency "rack-test"
20
- gem.add_development_dependency "do_sqlite3"
13
+ gem.add_dependency "sinatra", ">= 0.9.4"
14
+ gem.add_dependency "datamapper", ">= 0.10.1"
15
+ gem.add_dependency "bcrypt-ruby", ">= 2.1.2"
16
+ gem.add_dependency "activesupport", ">= 2.3.4"
17
+ gem.add_development_dependency "rspec", ">= 1.2.9"
18
+ gem.add_development_dependency "factory_girl", ">= 1.2.3"
19
+ gem.add_development_dependency "rack-test", "0.5.0"
20
+ gem.add_development_dependency "do_sqlite3", "0.10.0"
21
21
  end
22
22
  Jeweler::GemcutterTasks.new
23
23
  rescue LoadError
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.2
1
+ 0.0.3
@@ -59,7 +59,7 @@ module Verge
59
59
  private
60
60
 
61
61
  def extract_site # nodoc #
62
- site = Site.find_by_url(request.referer)
62
+ site = Site.find_by_uri(request.referer)
63
63
  (site.nil? && halt(401, "Not a valid site.")) || site
64
64
  end
65
65
 
@@ -6,7 +6,7 @@ require 'dm-timestamps'
6
6
 
7
7
  require 'activesupport'
8
8
 
9
- DataMapper::setup(:default, ENV['DATABASE_URL'] || "sqlite3:///#{Dir.pwd}/../db.sqlite3")
9
+ DataMapper::setup(:default, ENV['DATABASE_URL'] || "sqlite3:///#{Dir.pwd}/database.sqlite3")
10
10
 
11
11
  module Verge
12
12
  module Server
@@ -105,12 +105,12 @@ module Verge
105
105
  include DataMapper::Resource
106
106
 
107
107
  property :id, Serial, :key => true
108
- property :domain, String, :length => 3..300
108
+ property :host, String, :length => 3..300
109
109
  property :signature, String, :length => 128..128, :default => lambda { Verge::Crypto.token }
110
110
 
111
111
  has n, :signed_tokens
112
112
 
113
- validates_is_unique :domain
113
+ validates_is_unique :host
114
114
  validates_is_unique :signature
115
115
 
116
116
  before :destroy, :destroy_signed_tokens
@@ -127,14 +127,13 @@ module Verge
127
127
  signed_tokens.create(:value => sign(token.user.login, token.value), :token => token)
128
128
  end
129
129
 
130
- # Searchs all the sites for ones that match the protocol and domain
130
+ # Searchs all the sites for ones that match the host
131
131
  # EG:
132
132
  # "http://verge.example.com/some/path?id=1" will match
133
133
  # "verge.example.com"
134
- def self.find_by_url(url)
135
- return nil if url.nil?
136
- domain = url[/^([A-Za-z\d]*(:\/\/)){0,1}([^\/]*)/, 3]
137
- Site.first(:domain => domain)
134
+ def self.find_by_uri(uri)
135
+ return nil if uri.nil?
136
+ Site.first(:host => uri[/^([A-Za-z\d]*\:\/\/){0,1}([^\/]*)/, 2])
138
137
  end
139
138
 
140
139
  private
data/lib/verge.rb CHANGED
@@ -1,5 +1,3 @@
1
- require 'rubygems'
2
-
3
1
  module Verge
4
2
  autoload :Crypto, "verge/crypto"
5
3
 
data/spec/factories.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  Factory.sequence(:login) { |n| "verge-#{n}" }
2
- Factory.sequence(:domain) { |n| "site-#{n}.com" }
2
+ Factory.sequence(:host) { |n| "site-#{n}.com" }
3
3
 
4
4
  Factory.define(:user, :class => Verge::Server::User) do |u|
5
5
  u.login { Factory.next(:login) }
@@ -7,7 +7,7 @@ Factory.define(:user, :class => Verge::Server::User) do |u|
7
7
  end
8
8
 
9
9
  Factory.define(:site, :class => Verge::Server::Site) do |s|
10
- s.domain { Factory.next(:domain) }
10
+ s.host { Factory.next(:host) }
11
11
  end
12
12
 
13
13
  Factory.define(:signed_token, :class => Verge::Server::SignedToken) do |s|
data/spec/models_spec.rb CHANGED
@@ -132,11 +132,11 @@ describe Verge::Server::Site do
132
132
  Verge::Server::SignedToken.count.should eql(Verge::Server::Site.count)
133
133
  end
134
134
 
135
- it "returns a site when the domain and protocol match" do
135
+ it "returns a site when the host matches" do
136
136
  site1 = Factory(:site)
137
- site2 = Verge::Server::Site.find_by_url("http://#{site1.domain}/some/other/path?junk=10&true=false")
137
+ site2 = Verge::Server::Site.find_by_uri("http://#{site1.host}/some/other/path?junk=10&true=false")
138
138
  site2.should_not be_nil
139
- site2.domain.should eql(site1.domain)
139
+ site2.host.should eql(site1.host)
140
140
  end
141
141
 
142
142
  it "should create a valid signed token when signing" do
data/spec/spec_helper.rb CHANGED
@@ -1,5 +1,6 @@
1
1
  $LOAD_PATH.unshift(File.dirname(__FILE__))
2
2
  $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
3
+ require 'rubygems'
3
4
  require 'verge'
4
5
  require 'spec'
5
6
  require 'spec/autorun'
data/spec/verge_spec.rb CHANGED
@@ -16,7 +16,7 @@ describe Verge::Server do
16
16
 
17
17
  before :each do
18
18
  @site = Factory(:site)
19
- header("Referer", @site.domain)
19
+ header("Referer", @site.host)
20
20
  end
21
21
 
22
22
  describe "GET to /token.js" do
@@ -103,7 +103,7 @@ describe Verge::Server do
103
103
  @user = Factory(:user)
104
104
  @signed_token = @user.token.signed_tokens.first(:site_id => @site.id)
105
105
 
106
- header("Referer", @site.domain)
106
+ header("Referer", @site.host)
107
107
  end
108
108
 
109
109
  it "fails if no regisered site is found" do
data/verge.gemspec CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{verge}
8
- s.version = "0.0.2"
8
+ s.version = "0.0.3"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Adam Elliot"]
@@ -55,33 +55,33 @@ Gem::Specification.new do |s|
55
55
  s.specification_version = 3
56
56
 
57
57
  if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
58
- s.add_runtime_dependency(%q<sinatra>, [">= 0"])
59
- s.add_runtime_dependency(%q<datamapper>, [">= 0"])
60
- s.add_runtime_dependency(%q<bcrypt-ruby>, [">= 0"])
61
- s.add_runtime_dependency(%q<activesupport>, [">= 0"])
62
- s.add_development_dependency(%q<rspec>, [">= 0"])
63
- s.add_development_dependency(%q<factory_girl>, [">= 0"])
64
- s.add_development_dependency(%q<rack-test>, [">= 0"])
65
- s.add_development_dependency(%q<do_sqlite3>, [">= 0"])
58
+ s.add_runtime_dependency(%q<sinatra>, [">= 0.9.4"])
59
+ s.add_runtime_dependency(%q<datamapper>, [">= 0.10.1"])
60
+ s.add_runtime_dependency(%q<bcrypt-ruby>, [">= 2.1.2"])
61
+ s.add_runtime_dependency(%q<activesupport>, [">= 2.3.4"])
62
+ s.add_development_dependency(%q<rspec>, [">= 1.2.9"])
63
+ s.add_development_dependency(%q<factory_girl>, [">= 1.2.3"])
64
+ s.add_development_dependency(%q<rack-test>, ["= 0.5.0"])
65
+ s.add_development_dependency(%q<do_sqlite3>, ["= 0.10.0"])
66
66
  else
67
- s.add_dependency(%q<sinatra>, [">= 0"])
68
- s.add_dependency(%q<datamapper>, [">= 0"])
69
- s.add_dependency(%q<bcrypt-ruby>, [">= 0"])
70
- s.add_dependency(%q<activesupport>, [">= 0"])
71
- s.add_dependency(%q<rspec>, [">= 0"])
72
- s.add_dependency(%q<factory_girl>, [">= 0"])
73
- s.add_dependency(%q<rack-test>, [">= 0"])
74
- s.add_dependency(%q<do_sqlite3>, [">= 0"])
67
+ s.add_dependency(%q<sinatra>, [">= 0.9.4"])
68
+ s.add_dependency(%q<datamapper>, [">= 0.10.1"])
69
+ s.add_dependency(%q<bcrypt-ruby>, [">= 2.1.2"])
70
+ s.add_dependency(%q<activesupport>, [">= 2.3.4"])
71
+ s.add_dependency(%q<rspec>, [">= 1.2.9"])
72
+ s.add_dependency(%q<factory_girl>, [">= 1.2.3"])
73
+ s.add_dependency(%q<rack-test>, ["= 0.5.0"])
74
+ s.add_dependency(%q<do_sqlite3>, ["= 0.10.0"])
75
75
  end
76
76
  else
77
- s.add_dependency(%q<sinatra>, [">= 0"])
78
- s.add_dependency(%q<datamapper>, [">= 0"])
79
- s.add_dependency(%q<bcrypt-ruby>, [">= 0"])
80
- s.add_dependency(%q<activesupport>, [">= 0"])
81
- s.add_dependency(%q<rspec>, [">= 0"])
82
- s.add_dependency(%q<factory_girl>, [">= 0"])
83
- s.add_dependency(%q<rack-test>, [">= 0"])
84
- s.add_dependency(%q<do_sqlite3>, [">= 0"])
77
+ s.add_dependency(%q<sinatra>, [">= 0.9.4"])
78
+ s.add_dependency(%q<datamapper>, [">= 0.10.1"])
79
+ s.add_dependency(%q<bcrypt-ruby>, [">= 2.1.2"])
80
+ s.add_dependency(%q<activesupport>, [">= 2.3.4"])
81
+ s.add_dependency(%q<rspec>, [">= 1.2.9"])
82
+ s.add_dependency(%q<factory_girl>, [">= 1.2.3"])
83
+ s.add_dependency(%q<rack-test>, ["= 0.5.0"])
84
+ s.add_dependency(%q<do_sqlite3>, ["= 0.10.0"])
85
85
  end
86
86
  end
87
87
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: verge
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adam Elliot
@@ -20,7 +20,7 @@ dependencies:
20
20
  requirements:
21
21
  - - ">="
22
22
  - !ruby/object:Gem::Version
23
- version: "0"
23
+ version: 0.9.4
24
24
  version:
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: datamapper
@@ -30,7 +30,7 @@ dependencies:
30
30
  requirements:
31
31
  - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: "0"
33
+ version: 0.10.1
34
34
  version:
35
35
  - !ruby/object:Gem::Dependency
36
36
  name: bcrypt-ruby
@@ -40,7 +40,7 @@ dependencies:
40
40
  requirements:
41
41
  - - ">="
42
42
  - !ruby/object:Gem::Version
43
- version: "0"
43
+ version: 2.1.2
44
44
  version:
45
45
  - !ruby/object:Gem::Dependency
46
46
  name: activesupport
@@ -50,7 +50,7 @@ dependencies:
50
50
  requirements:
51
51
  - - ">="
52
52
  - !ruby/object:Gem::Version
53
- version: "0"
53
+ version: 2.3.4
54
54
  version:
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rspec
@@ -60,7 +60,7 @@ dependencies:
60
60
  requirements:
61
61
  - - ">="
62
62
  - !ruby/object:Gem::Version
63
- version: "0"
63
+ version: 1.2.9
64
64
  version:
65
65
  - !ruby/object:Gem::Dependency
66
66
  name: factory_girl
@@ -70,7 +70,7 @@ dependencies:
70
70
  requirements:
71
71
  - - ">="
72
72
  - !ruby/object:Gem::Version
73
- version: "0"
73
+ version: 1.2.3
74
74
  version:
75
75
  - !ruby/object:Gem::Dependency
76
76
  name: rack-test
@@ -78,9 +78,9 @@ dependencies:
78
78
  version_requirement:
79
79
  version_requirements: !ruby/object:Gem::Requirement
80
80
  requirements:
81
- - - ">="
81
+ - - "="
82
82
  - !ruby/object:Gem::Version
83
- version: "0"
83
+ version: 0.5.0
84
84
  version:
85
85
  - !ruby/object:Gem::Dependency
86
86
  name: do_sqlite3
@@ -88,9 +88,9 @@ dependencies:
88
88
  version_requirement:
89
89
  version_requirements: !ruby/object:Gem::Requirement
90
90
  requirements:
91
- - - ">="
91
+ - - "="
92
92
  - !ruby/object:Gem::Version
93
- version: "0"
93
+ version: 0.10.0
94
94
  version:
95
95
  description: Simple system that grants trusted sites tokens if users have successfully authenticated. So they are free to interact with each other securely.
96
96
  email: adam@wartube.com