deas 0.14.1 → 0.15.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/deas/template.rb +4 -0
- data/lib/deas/test_runner.rb +11 -1
- data/lib/deas/version.rb +1 -1
- data/test/support/fake_sinatra_call.rb +2 -1
- data/test/unit/template_tests.rb +7 -1
- data/test/unit/view_handler_tests.rb +3 -3
- metadata +5 -5
data/lib/deas/template.rb
CHANGED
data/lib/deas/test_runner.rb
CHANGED
@@ -29,7 +29,17 @@ module Deas
|
|
29
29
|
# Helpers
|
30
30
|
|
31
31
|
def halt(*args)
|
32
|
-
throw(:halt, args)
|
32
|
+
throw(:halt, HaltArgs.new(args))
|
33
|
+
end
|
34
|
+
|
35
|
+
class HaltArgs < Struct.new(:body, :headers, :status)
|
36
|
+
def initialize(args)
|
37
|
+
super(*[
|
38
|
+
!args.last.kind_of?(::Hash) && !args.last.kind_of?(::Integer) ? args.pop : nil,
|
39
|
+
args.last.kind_of?(::Hash) ? args.pop : nil,
|
40
|
+
args.first.kind_of?(::Integer) ? args.first : nil
|
41
|
+
])
|
42
|
+
end
|
33
43
|
end
|
34
44
|
|
35
45
|
def redirect(path, *halt_args)
|
data/lib/deas/version.rb
CHANGED
@@ -6,13 +6,14 @@ class FakeSinatraCall
|
|
6
6
|
# Mimic's the context that is accessible in a Sinatra' route. Should provide
|
7
7
|
# any methods needed to replace using an actual Sinatra app.
|
8
8
|
|
9
|
-
attr_accessor :request, :response, :params, :settings, :session
|
9
|
+
attr_accessor :request, :response, :params, :settings, :session, :logger
|
10
10
|
|
11
11
|
def initialize(settings={})
|
12
12
|
@request = FakeRequest.new('GET','/something', {}, OpenStruct.new)
|
13
13
|
@params = @request.params
|
14
14
|
@session = @request.session
|
15
15
|
@response = FakeResponse.new
|
16
|
+
@logger = Deas::NullLogger.new
|
16
17
|
@settings = OpenStruct.new(settings.merge({
|
17
18
|
:deas_template_scope => Deas::Template::Scope,
|
18
19
|
:deas_default_charset => 'utf-8'
|
data/test/unit/template_tests.rb
CHANGED
@@ -82,7 +82,9 @@ class Deas::Template
|
|
82
82
|
end
|
83
83
|
subject{ @scope }
|
84
84
|
|
85
|
-
should
|
85
|
+
should have_reader :sinatra_call
|
86
|
+
should have_imeths :render, :partial, :escape_html, :h, :escape_url, :u
|
87
|
+
should have_imeths :logger
|
86
88
|
|
87
89
|
should "call the sinatra_call's erb method with #partial" do
|
88
90
|
return_value = subject.partial('part', :something => true)
|
@@ -127,6 +129,10 @@ class Deas::Template
|
|
127
129
|
assert_equal "%2Fpath%2Fto%2Fsomewhere", return_value
|
128
130
|
end
|
129
131
|
|
132
|
+
should "expose the sinatra call (and deas server) logger" do
|
133
|
+
assert_equal @fake_sinatra_call.logger, subject.logger
|
134
|
+
end
|
135
|
+
|
130
136
|
end
|
131
137
|
|
132
138
|
class PartialTests < BaseTests
|
@@ -166,9 +166,9 @@ module Deas::ViewHandler
|
|
166
166
|
})
|
167
167
|
runner.run
|
168
168
|
|
169
|
-
assert_equal 200, runner.return_value
|
170
|
-
assert_equal({ 'Content-Type' => 'text/plain' }, runner.return_value
|
171
|
-
assert_equal 'test halting', runner.return_value
|
169
|
+
assert_equal 200, runner.return_value.status
|
170
|
+
assert_equal({ 'Content-Type' => 'text/plain' }, runner.return_value.headers)
|
171
|
+
assert_equal 'test halting', runner.return_value.body
|
172
172
|
end
|
173
173
|
|
174
174
|
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: deas
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 35
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
|
-
-
|
9
|
-
-
|
10
|
-
version: 0.
|
8
|
+
- 15
|
9
|
+
- 0
|
10
|
+
version: 0.15.0
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Kelly Redding
|
@@ -16,7 +16,7 @@ autorequire:
|
|
16
16
|
bindir: bin
|
17
17
|
cert_chain: []
|
18
18
|
|
19
|
-
date: 2013-05-
|
19
|
+
date: 2013-05-29 00:00:00 Z
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
22
22
|
name: ns-options
|