toadhopper-sinatra 0.10.1 → 1.0.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.
- data/lib/sinatra/toadhopper.rb +2 -2
- data/test_example.rb +38 -49
- metadata +3 -3
data/lib/sinatra/toadhopper.rb
CHANGED
@@ -4,7 +4,7 @@ require 'toadhopper'
|
|
4
4
|
module Sinatra
|
5
5
|
# The Toadhopper helper methods
|
6
6
|
module ToadHopper
|
7
|
-
VERSION = "0.
|
7
|
+
VERSION = "1.0.0"
|
8
8
|
# Reports the current sinatra error to Hoptoad
|
9
9
|
def post_error_to_hoptoad!
|
10
10
|
unless options.toadhopper && options.toadhopper[:api_key]
|
@@ -17,7 +17,7 @@ module Sinatra
|
|
17
17
|
env['sinatra.error'],
|
18
18
|
{
|
19
19
|
:url => request.url,
|
20
|
-
:
|
20
|
+
:params => request.params,
|
21
21
|
:session => session.to_hash,
|
22
22
|
:environment => ENV.to_hash,
|
23
23
|
:framework_env => options.environment.to_s,
|
data/test_example.rb
CHANGED
@@ -1,12 +1,3 @@
|
|
1
|
-
require 'test/unit'
|
2
|
-
|
3
|
-
require 'rr'
|
4
|
-
class Test::Unit::TestCase
|
5
|
-
include RR::Adapters::TestUnit
|
6
|
-
end
|
7
|
-
|
8
|
-
require 'rack/test'
|
9
|
-
|
10
1
|
toadhopper_dir = "#{File.dirname(__FILE__)}/../toadhopper"
|
11
2
|
raise "#{toadhopper_dir} does not exist" unless File.directory?(toadhopper_dir)
|
12
3
|
$:.unshift "#{toadhopper_dir}/lib"
|
@@ -14,54 +5,52 @@ $:.unshift "#{toadhopper_dir}/lib"
|
|
14
5
|
$:.unshift "#{File.dirname(__FILE__)}/lib"
|
15
6
|
|
16
7
|
require "#{File.dirname(__FILE__)}/example"
|
17
|
-
|
18
8
|
Sinatra::Application.set :environment, :production
|
19
9
|
|
20
|
-
|
21
|
-
|
22
|
-
include Rack::Test::Methods
|
23
|
-
|
24
|
-
def app; Sinatra::Application end
|
10
|
+
require 'exemplor'
|
25
11
|
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
@toadhopper = ::ToadHopper.new("")
|
30
|
-
stub(::ToadHopper).new do |api_key|
|
31
|
-
@api_key = api_key
|
32
|
-
@toadhopper
|
33
|
-
end
|
34
|
-
stub(@toadhopper).post! do |*args|
|
35
|
-
@error, @options, @header = *args
|
36
|
-
end
|
37
|
-
|
38
|
-
post "/register", :name => "Billy", :password => "Bob"
|
39
|
-
end
|
12
|
+
require 'rack/test'
|
13
|
+
require 'rr'
|
40
14
|
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
def
|
45
|
-
|
46
|
-
end
|
47
|
-
def test_reported_error
|
48
|
-
assert_equal RuntimeError, @error.class
|
49
|
-
assert_equal "Kaboom!", @error.message
|
15
|
+
eg.helpers do
|
16
|
+
include Rack::Test::Methods
|
17
|
+
include RR::Adapters::RRMethods
|
18
|
+
def app
|
19
|
+
Sinatra::Application
|
50
20
|
end
|
21
|
+
end
|
51
22
|
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
assert @options[:session] = {:user_id => 42}
|
60
|
-
assert @options[:notifier_name] = "toadhopper-sinatra"
|
23
|
+
eg.setup do
|
24
|
+
RR.reset
|
25
|
+
|
26
|
+
@toadhopper = ::ToadHopper.new("")
|
27
|
+
stub(::ToadHopper).new do |api_key|
|
28
|
+
@api_key = api_key
|
29
|
+
@toadhopper
|
61
30
|
end
|
62
31
|
|
63
|
-
|
64
|
-
|
32
|
+
stub(@toadhopper).post! do |*args|
|
33
|
+
@error, @options, @header = *args
|
65
34
|
end
|
35
|
+
end
|
36
|
+
|
37
|
+
eg "Posting" do
|
38
|
+
post "/register", :name => "Billy", :password => "Bob"
|
66
39
|
|
40
|
+
Check(@api_key).is("apikey")
|
41
|
+
|
42
|
+
Check(@toadhopper.filters).is([/password/])
|
43
|
+
|
44
|
+
Check(@error.class).is(RuntimeError)
|
45
|
+
Check(@error.message).is("Kaboom!")
|
46
|
+
|
47
|
+
Check(@options[:environment]).is(ENV.to_hash)
|
48
|
+
Check(@options[:url]).is("http://example.org/register")
|
49
|
+
Check(@options[:params]).is({"name"=>"Billy", "password"=>"Bob"})
|
50
|
+
Check(@options[:framework_env]).is("production")
|
51
|
+
Check(@options[:project_root]).is(app.root)
|
52
|
+
Check(@options[:session]).is({:user_id => 42})
|
53
|
+
Check(@options[:notifier_name]).is("toadhopper-sinatra")
|
54
|
+
|
55
|
+
Check(@header['X-Hoptoad-Client-Name']).is("toadhopper-sinatra")
|
67
56
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: toadhopper-sinatra
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tim Lucas
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2010-
|
12
|
+
date: 2010-02-23 00:00:00 +11:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -20,7 +20,7 @@ dependencies:
|
|
20
20
|
requirements:
|
21
21
|
- - "="
|
22
22
|
- !ruby/object:Gem::Version
|
23
|
-
version: 0.9.
|
23
|
+
version: 0.9.8
|
24
24
|
version:
|
25
25
|
description: Post Hoptoad notifications from Sinatra
|
26
26
|
email: t.lucas@toolmantim.com
|