web-console 2.0.0 → 2.1.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.
Files changed (91) hide show
  1. checksums.yaml +4 -4
  2. data/README.markdown +132 -85
  3. data/lib/web_console.rb +14 -13
  4. data/lib/web_console/errors.rb +7 -0
  5. data/lib/web_console/{repl.rb → evaluator.rb} +7 -10
  6. data/lib/web_console/helper.rb +22 -0
  7. data/lib/web_console/integration.rb +8 -0
  8. data/lib/web_console/{core_ext/exception → integration}/cruby.rb +0 -0
  9. data/lib/web_console/integration/jruby.rb +111 -0
  10. data/lib/web_console/integration/rubinius.rb +66 -0
  11. data/lib/web_console/middleware.rb +117 -0
  12. data/lib/web_console/railtie.rb +61 -0
  13. data/lib/web_console/request.rb +30 -0
  14. data/lib/web_console/session.rb +65 -0
  15. data/lib/web_console/template.rb +49 -0
  16. data/lib/web_console/templates/_inner_console_markup.html +3 -0
  17. data/lib/web_console/templates/_markup.html +4 -0
  18. data/lib/web_console/templates/_prompt_box_markup.html +2 -0
  19. data/lib/web_console/templates/console.js +373 -0
  20. data/lib/web_console/templates/error_page.js +83 -0
  21. data/lib/web_console/templates/index.html +8 -0
  22. data/lib/web_console/templates/layouts/inlined_string.erb +1 -0
  23. data/lib/web_console/templates/layouts/javascript.erb +5 -0
  24. data/lib/web_console/templates/main.js +24 -0
  25. data/lib/web_console/templates/style.css +9 -0
  26. data/lib/web_console/version.rb +1 -1
  27. data/lib/web_console/whiny_request.rb +38 -0
  28. data/lib/web_console/whitelist.rb +42 -0
  29. data/test/dummy/config/environments/test.rb +0 -4
  30. data/test/dummy/log/development.log +7075 -0
  31. data/test/dummy/log/test.log +66006 -0
  32. data/test/dummy/tmp/cache/assets/development/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
  33. data/test/dummy/tmp/cache/assets/development/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
  34. data/test/dummy/tmp/cache/assets/development/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
  35. data/test/dummy/tmp/cache/assets/development/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
  36. data/test/dummy/tmp/cache/assets/development/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
  37. data/test/dummy/tmp/cache/assets/development/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
  38. data/test/support/scenarios/bad_custom_error_scenario.rb +17 -0
  39. data/test/support/scenarios/basic_nested_scenario.rb +15 -0
  40. data/test/support/scenarios/custom_error_scenario.rb +11 -0
  41. data/test/support/scenarios/eval_nested_scenario.rb +15 -0
  42. data/test/support/scenarios/flat_scenario.rb +9 -0
  43. data/test/support/scenarios/reraised_scenario.rb +21 -0
  44. data/test/test_helper.rb +50 -3
  45. data/test/web_console/evaluator_test.rb +73 -0
  46. data/test/web_console/helper_test.rb +76 -0
  47. data/test/web_console/integration_test.rb +47 -0
  48. data/test/web_console/middleware_test.rb +116 -0
  49. data/test/web_console/railtie_test.rb +99 -0
  50. data/test/web_console/request_test.rb +52 -0
  51. data/test/web_console/session_test.rb +59 -0
  52. data/test/web_console/whiny_request_test.rb +33 -0
  53. data/test/web_console/whitelist_test.rb +43 -0
  54. metadata +66 -56
  55. data/lib/action_dispatch/debug_exceptions.rb +0 -105
  56. data/lib/action_dispatch/exception_wrapper.rb +0 -38
  57. data/lib/action_dispatch/templates/rescues/_request_and_response.html.erb +0 -34
  58. data/lib/action_dispatch/templates/rescues/_request_and_response.text.erb +0 -23
  59. data/lib/action_dispatch/templates/rescues/_source.erb +0 -29
  60. data/lib/action_dispatch/templates/rescues/_trace.html.erb +0 -72
  61. data/lib/action_dispatch/templates/rescues/_trace.text.erb +0 -9
  62. data/lib/action_dispatch/templates/rescues/_web_console.html.erb +0 -420
  63. data/lib/action_dispatch/templates/rescues/diagnostics.html.erb +0 -18
  64. data/lib/action_dispatch/templates/rescues/diagnostics.text.erb +0 -9
  65. data/lib/action_dispatch/templates/rescues/layout.erb +0 -160
  66. data/lib/action_dispatch/templates/rescues/missing_template.html.erb +0 -13
  67. data/lib/action_dispatch/templates/rescues/missing_template.text.erb +0 -3
  68. data/lib/action_dispatch/templates/rescues/routing_error.html.erb +0 -34
  69. data/lib/action_dispatch/templates/rescues/routing_error.text.erb +0 -11
  70. data/lib/action_dispatch/templates/rescues/template_error.html.erb +0 -22
  71. data/lib/action_dispatch/templates/rescues/template_error.text.erb +0 -7
  72. data/lib/action_dispatch/templates/rescues/unknown_action.html.erb +0 -6
  73. data/lib/action_dispatch/templates/rescues/unknown_action.text.erb +0 -3
  74. data/lib/action_dispatch/templates/routes/_route.html.erb +0 -16
  75. data/lib/action_dispatch/templates/routes/_table.html.erb +0 -200
  76. data/lib/assets/javascripts/web-console.js +0 -1
  77. data/lib/assets/javascripts/web_console.js +0 -41
  78. data/lib/web_console/controller_helpers.rb +0 -46
  79. data/lib/web_console/core_ext/exception.rb +0 -7
  80. data/lib/web_console/core_ext/exception/jruby.rb +0 -25
  81. data/lib/web_console/core_ext/exception/rubinius.rb +0 -32
  82. data/lib/web_console/engine.rb +0 -47
  83. data/lib/web_console/repl_session.rb +0 -89
  84. data/lib/web_console/unsupported_platforms.rb +0 -28
  85. data/lib/web_console/view_helpers.rb +0 -16
  86. data/test/action_pack/exception_wrapper_test.rb +0 -26
  87. data/test/controllers/tests_controller_test.rb +0 -41
  88. data/test/web_console/core_ext/exception_test.rb +0 -46
  89. data/test/web_console/engine_test.rb +0 -108
  90. data/test/web_console/repl_session_test.rb +0 -32
  91. data/test/web_console/repl_test.rb +0 -75
@@ -0,0 +1,99 @@
1
+ require 'test_helper'
2
+
3
+ module WebConsole
4
+ class RailtieTest < ActiveSupport::TestCase
5
+ test 'config.whitelisted_ips sets whitelisted networks' do
6
+ new_uninitialized_app do |app|
7
+ app.config.web_console.whitelisted_ips = %w( 172.16.0.0/12 192.168.0.0/16 )
8
+ app.initialize!
9
+
10
+ 1.upto(255).each do |n|
11
+ assert_includes Request.whitelisted_ips, "172.16.0.#{n}"
12
+ assert_includes Request.whitelisted_ips, "192.168.0.#{n}"
13
+ end
14
+ end
15
+ end
16
+
17
+ test 'config.whitelisted_ips always includes localhost' do
18
+ new_uninitialized_app do |app|
19
+ app.config.web_console.whitelisted_ips = '8.8.8.8'
20
+ app.initialize!
21
+
22
+ assert_includes Request.whitelisted_ips, '127.0.0.1'
23
+ assert_includes Request.whitelisted_ips, '::1'
24
+ assert_includes Request.whitelisted_ips, '8.8.8.8'
25
+ end
26
+ end
27
+
28
+ test 'config.template_paths prepend paths if it exists' do
29
+ new_uninitialized_app do |app|
30
+ dirname = File.expand_path('..', __FILE__)
31
+
32
+ app.config.web_console.template_paths = dirname
33
+ app.initialize!
34
+
35
+ assert_equal dirname, Template.template_paths.first
36
+ end
37
+ end
38
+
39
+ test 'config.whiny_request removes extra logging' do
40
+ new_uninitialized_app do |app|
41
+ app.config.web_console.whiny_requests = false
42
+ app.initialize!
43
+
44
+ assert_not Middleware.whiny_requests
45
+ end
46
+ end
47
+
48
+ test 'config.acceptable_content_types adds extra content types' do
49
+ preserving_acceptable_content_type do
50
+ new_uninitialized_app do |app|
51
+ app.config.web_console.acceptable_content_types = [Mime::ALL]
52
+ app.initialize!
53
+
54
+ assert_includes Request.acceptable_content_types, Mime::ALL
55
+ end
56
+ end
57
+ end
58
+
59
+ private
60
+
61
+ def new_uninitialized_app(root = File.expand_path('../../dummy', __FILE__))
62
+ old_app = Rails.application
63
+
64
+ FileUtils.mkdir_p(root)
65
+ Dir.chdir(root) do
66
+ Rails.application = nil
67
+
68
+ app = Class.new(Rails::Application)
69
+ app.config.eager_load = false
70
+ app.config.time_zone = 'UTC'
71
+ app.config.middleware ||= Rails::Configuration::MiddlewareStackProxy.new
72
+ app.config.active_support.deprecation = :notify
73
+
74
+ yield app
75
+ end
76
+ ensure
77
+ Rails.application = old_app
78
+ end
79
+
80
+ def preserving_acceptable_content_type
81
+ acceptable_content_types = Request.acceptable_content_types.dup
82
+ yield
83
+ ensure
84
+ Request.acceptable_content_types = acceptable_content_types
85
+ end
86
+
87
+ def teardown_fixtures(*)
88
+ super
89
+ rescue
90
+ # This is nasty hack to prevent a connection to the database in JRuby's
91
+ # activerecord-jdbcsqlite3-adapter. We don't really require a database
92
+ # connection, for the tests to run.
93
+ #
94
+ # The sad thing is that I couldn't figure out why does it only happens
95
+ # on activerecord-jdbcsqlite3-adapter and how to actually prevent it,
96
+ # rather than work-around it.
97
+ end
98
+ end
99
+ end
@@ -0,0 +1,52 @@
1
+ require 'test_helper'
2
+
3
+ module WebConsole
4
+ class RequestTest < ActiveSupport::TestCase
5
+ setup do
6
+ Request.stubs(:whitelisted_ips).returns(IPAddr.new('127.0.0.1'))
7
+ end
8
+
9
+ test '#from_whitelited_ip? is falsy for blacklisted IPs' do
10
+ req = request('http://example.com', 'REMOTE_ADDR' => '0.0.0.0')
11
+
12
+ assert_not req.from_whitelited_ip?
13
+ end
14
+
15
+ test '#from_whitelited_ip? is truthy for whitelisted IPs' do
16
+ req = request('http://example.com', 'REMOTE_ADDR' => '127.0.0.1')
17
+
18
+ assert req.from_whitelited_ip?
19
+ end
20
+
21
+ test '#acceptable_content_type? is truthy for explicit HTML content type' do
22
+ html = request('http://example.com', 'CONTENT_TYPE' => 'text/html')
23
+ xhtml = request('http://example.com', 'CONTENT_TYPE' => 'application/xhtml+xml')
24
+
25
+ [ html, xhtml ].each { |req| assert req.acceptable_content_type? }
26
+ end
27
+
28
+ test '#acceptable_content_type? is truthy for plain text content type' do
29
+ req = request('http://example.com', 'CONTENT_TYPE' => 'text/plain')
30
+
31
+ assert req.acceptable_content_type?
32
+ end
33
+
34
+ test '#acceptable_content_type? is truthy for blank content type' do
35
+ req = request('http://example.com', 'CONTENT_TYPE' => '')
36
+
37
+ assert req.acceptable_content_type?
38
+ end
39
+
40
+ test '#acceptable_content_type? is falsy for non blank and non HTML content type' do
41
+ req = request('http://example.com', 'CONTENT_TYPE' => 'application/json')
42
+
43
+ assert_not req.acceptable_content_type?
44
+ end
45
+
46
+ private
47
+
48
+ def request(*args)
49
+ Request.new(Rack::MockRequest.env_for(*args))
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,59 @@
1
+ require 'test_helper'
2
+
3
+ module WebConsole
4
+ class SessionTest < ActiveSupport::TestCase
5
+ class LineAwareError < StandardError
6
+ def self.raise
7
+ ::Kernel.raise new(__LINE__)
8
+ rescue => exc
9
+ exc
10
+ end
11
+
12
+ attr_reader :line
13
+
14
+ def initialize(line)
15
+ @line = line
16
+ end
17
+ end
18
+
19
+ setup do
20
+ Session::INMEMORY_STORAGE.clear
21
+ @session = Session.new TOPLEVEL_BINDING
22
+ end
23
+
24
+ test 'returns nil when a session is not found' do
25
+ assert_nil Session.find("nonexistent session")
26
+ end
27
+
28
+ test 'find returns a persisted object' do
29
+ assert_equal @session, Session.find(@session.id)
30
+ end
31
+
32
+ test 'can evaluate code in the currently selected binding' do
33
+ assert_equal "=> 42\n", @session.eval('40 + 2')
34
+ end
35
+
36
+ test 'can create session from a single binding' do
37
+ saved_line, saved_binding = __LINE__, binding
38
+ session = Session.from_binding(saved_binding)
39
+
40
+ assert_equal "=> #{saved_line}\n", session.eval('__LINE__')
41
+ end
42
+
43
+ test 'can create session from an exception' do
44
+ exc = LineAwareError.raise
45
+ session = Session.from_exception(exc)
46
+
47
+ assert_equal "=> #{exc.line}\n", session.eval('__LINE__')
48
+ end
49
+
50
+ test 'can switch to bindings' do
51
+ exc, saved_line = LineAwareError.raise, __LINE__
52
+
53
+ session = Session.from_exception(exc)
54
+ session.switch_binding_to(1)
55
+
56
+ assert_equal "=> #{saved_line}\n", session.eval('__LINE__')
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,33 @@
1
+ require 'test_helper'
2
+
3
+ module WebConsole
4
+ class WhinyRequestTest < ActiveSupport::TestCase
5
+ test '#from_whitelited_ip? logs out to stderr' do
6
+ Request.stubs(:whitelisted_ips).returns(IPAddr.new('127.0.0.1'))
7
+ assert_output_to_stderr do
8
+ req = request('http://example.com', 'REMOTE_ADDR' => '0.0.0.0')
9
+ assert_not req.from_whitelited_ip?
10
+ end
11
+ end
12
+
13
+ test '#acceptable_content_type? logs out to stderr' do
14
+ Request.stubs(:acceptable_content_types).returns([])
15
+ assert_output_to_stderr do
16
+ req = request('http://example.com', 'CONTENT_TYPE' => 'application/json')
17
+ assert_not req.acceptable_content_type?
18
+ end
19
+ end
20
+
21
+ private
22
+
23
+ def assert_output_to_stderr
24
+ output = capture(:stderr) { yield }
25
+ assert_not output.blank?
26
+ end
27
+
28
+ def request(*args)
29
+ request = Request.new(Rack::MockRequest.env_for(*args))
30
+ WhinyRequest.new(request)
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,43 @@
1
+ module WebConsole
2
+ class WhitelistTest < ActiveSupport::TestCase
3
+ test 'localhost is always whitelisted' do
4
+ whitelisted_ips = whitelist('8.8.8.8')
5
+
6
+ assert_includes whitelisted_ips, '127.0.0.1'
7
+ assert_includes whitelisted_ips, '::1'
8
+ end
9
+
10
+ test 'can whitelist single IPs' do
11
+ whitelisted_ips = whitelist('8.8.8.8')
12
+
13
+ assert_includes whitelisted_ips, '8.8.8.8'
14
+ end
15
+
16
+ test 'can whitelist whole networks' do
17
+ whitelisted_ips = whitelist('172.16.0.0/12')
18
+
19
+ 1.upto(255).each do |n|
20
+ assert_includes whitelisted_ips, "172.16.0.#{n}"
21
+ end
22
+ end
23
+
24
+ test 'can whitelist multiple networks' do
25
+ whitelisted_ips = whitelist %w(172.16.0.0/12 192.168.0.0/16)
26
+
27
+ 1.upto(255).each do |n|
28
+ assert_includes whitelisted_ips, "172.16.0.#{n}"
29
+ assert_includes whitelisted_ips, "192.168.0.#{n}"
30
+ end
31
+ end
32
+
33
+ test 'can be represented in a human readable form' do
34
+ assert_includes whitelist.to_s, '127.0.0.0/127.255.255.255, ::1'
35
+ end
36
+
37
+ private
38
+
39
+ def whitelist(*args)
40
+ Whitelist.new(*args)
41
+ end
42
+ end
43
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: web-console
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0
4
+ version: 2.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Charlie Somerville
@@ -11,34 +11,34 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2014-11-26 00:00:00.000000000 Z
14
+ date: 2015-02-28 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: railties
18
18
  requirement: !ruby/object:Gem::Requirement
19
19
  requirements:
20
- - - "~>"
20
+ - - ">="
21
21
  - !ruby/object:Gem::Version
22
22
  version: '4.0'
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
- - - "~>"
27
+ - - ">="
28
28
  - !ruby/object:Gem::Version
29
29
  version: '4.0'
30
30
  - !ruby/object:Gem::Dependency
31
31
  name: activemodel
32
32
  requirement: !ruby/object:Gem::Requirement
33
33
  requirements:
34
- - - "~>"
34
+ - - ">="
35
35
  - !ruby/object:Gem::Version
36
36
  version: '4.0'
37
37
  type: :runtime
38
38
  prerelease: false
39
39
  version_requirements: !ruby/object:Gem::Requirement
40
40
  requirements:
41
- - - "~>"
41
+ - - ">="
42
42
  - !ruby/object:Gem::Version
43
43
  version: '4.0'
44
44
  - !ruby/object:Gem::Dependency
@@ -79,32 +79,33 @@ dependencies:
79
79
  name: actionmailer
80
80
  requirement: !ruby/object:Gem::Requirement
81
81
  requirements:
82
- - - "~>"
82
+ - - ">="
83
83
  - !ruby/object:Gem::Version
84
84
  version: '4.0'
85
85
  type: :development
86
86
  prerelease: false
87
87
  version_requirements: !ruby/object:Gem::Requirement
88
88
  requirements:
89
- - - "~>"
89
+ - - ">="
90
90
  - !ruby/object:Gem::Version
91
91
  version: '4.0'
92
92
  - !ruby/object:Gem::Dependency
93
93
  name: activerecord
94
94
  requirement: !ruby/object:Gem::Requirement
95
95
  requirements:
96
- - - "~>"
96
+ - - ">="
97
97
  - !ruby/object:Gem::Version
98
98
  version: '4.0'
99
99
  type: :development
100
100
  prerelease: false
101
101
  version_requirements: !ruby/object:Gem::Requirement
102
102
  requirements:
103
- - - "~>"
103
+ - - ">="
104
104
  - !ruby/object:Gem::Version
105
105
  version: '4.0'
106
106
  description:
107
107
  email:
108
+ - charlie@charliesomerville.com
108
109
  - gsamokovarov@gmail.com
109
110
  - guilleiguaran@gmail.com
110
111
  - daoduyducduong@gmail.com
@@ -115,44 +116,33 @@ files:
115
116
  - MIT-LICENSE
116
117
  - README.markdown
117
118
  - Rakefile
118
- - lib/action_dispatch/debug_exceptions.rb
119
- - lib/action_dispatch/exception_wrapper.rb
120
- - lib/action_dispatch/templates/rescues/_request_and_response.html.erb
121
- - lib/action_dispatch/templates/rescues/_request_and_response.text.erb
122
- - lib/action_dispatch/templates/rescues/_source.erb
123
- - lib/action_dispatch/templates/rescues/_trace.html.erb
124
- - lib/action_dispatch/templates/rescues/_trace.text.erb
125
- - lib/action_dispatch/templates/rescues/_web_console.html.erb
126
- - lib/action_dispatch/templates/rescues/diagnostics.html.erb
127
- - lib/action_dispatch/templates/rescues/diagnostics.text.erb
128
- - lib/action_dispatch/templates/rescues/layout.erb
129
- - lib/action_dispatch/templates/rescues/missing_template.html.erb
130
- - lib/action_dispatch/templates/rescues/missing_template.text.erb
131
- - lib/action_dispatch/templates/rescues/routing_error.html.erb
132
- - lib/action_dispatch/templates/rescues/routing_error.text.erb
133
- - lib/action_dispatch/templates/rescues/template_error.html.erb
134
- - lib/action_dispatch/templates/rescues/template_error.text.erb
135
- - lib/action_dispatch/templates/rescues/unknown_action.html.erb
136
- - lib/action_dispatch/templates/rescues/unknown_action.text.erb
137
- - lib/action_dispatch/templates/routes/_route.html.erb
138
- - lib/action_dispatch/templates/routes/_table.html.erb
139
- - lib/assets/javascripts/web-console.js
140
- - lib/assets/javascripts/web_console.js
141
119
  - lib/web-console.rb
142
120
  - lib/web_console.rb
143
- - lib/web_console/controller_helpers.rb
144
- - lib/web_console/core_ext/exception.rb
145
- - lib/web_console/core_ext/exception/cruby.rb
146
- - lib/web_console/core_ext/exception/jruby.rb
147
- - lib/web_console/core_ext/exception/rubinius.rb
148
- - lib/web_console/engine.rb
149
- - lib/web_console/repl.rb
150
- - lib/web_console/repl_session.rb
151
- - lib/web_console/unsupported_platforms.rb
121
+ - lib/web_console/errors.rb
122
+ - lib/web_console/evaluator.rb
123
+ - lib/web_console/helper.rb
124
+ - lib/web_console/integration.rb
125
+ - lib/web_console/integration/cruby.rb
126
+ - lib/web_console/integration/jruby.rb
127
+ - lib/web_console/integration/rubinius.rb
128
+ - lib/web_console/middleware.rb
129
+ - lib/web_console/railtie.rb
130
+ - lib/web_console/request.rb
131
+ - lib/web_console/session.rb
132
+ - lib/web_console/template.rb
133
+ - lib/web_console/templates/_inner_console_markup.html
134
+ - lib/web_console/templates/_markup.html
135
+ - lib/web_console/templates/_prompt_box_markup.html
136
+ - lib/web_console/templates/console.js
137
+ - lib/web_console/templates/error_page.js
138
+ - lib/web_console/templates/index.html
139
+ - lib/web_console/templates/layouts/inlined_string.erb
140
+ - lib/web_console/templates/layouts/javascript.erb
141
+ - lib/web_console/templates/main.js
142
+ - lib/web_console/templates/style.css
152
143
  - lib/web_console/version.rb
153
- - lib/web_console/view_helpers.rb
154
- - test/action_pack/exception_wrapper_test.rb
155
- - test/controllers/tests_controller_test.rb
144
+ - lib/web_console/whiny_request.rb
145
+ - lib/web_console/whitelist.rb
156
146
  - test/dummy/README.rdoc
157
147
  - test/dummy/Rakefile
158
148
  - test/dummy/app/assets/javascripts/application.js
@@ -240,11 +230,22 @@ files:
240
230
  - test/dummy/tmp/cache/assets/test/sprockets/d982412def520c434e2240eae6d29cf2
241
231
  - test/dummy/tmp/cache/assets/test/sprockets/df048a8b0897b9c04acdf59c8f95b18f
242
232
  - test/dummy/tmp/cache/assets/test/sprockets/e6d6b8bde546349764be7b44ffcf5807
233
+ - test/support/scenarios/bad_custom_error_scenario.rb
234
+ - test/support/scenarios/basic_nested_scenario.rb
235
+ - test/support/scenarios/custom_error_scenario.rb
236
+ - test/support/scenarios/eval_nested_scenario.rb
237
+ - test/support/scenarios/flat_scenario.rb
238
+ - test/support/scenarios/reraised_scenario.rb
243
239
  - test/test_helper.rb
244
- - test/web_console/core_ext/exception_test.rb
245
- - test/web_console/engine_test.rb
246
- - test/web_console/repl_session_test.rb
247
- - test/web_console/repl_test.rb
240
+ - test/web_console/evaluator_test.rb
241
+ - test/web_console/helper_test.rb
242
+ - test/web_console/integration_test.rb
243
+ - test/web_console/middleware_test.rb
244
+ - test/web_console/railtie_test.rb
245
+ - test/web_console/request_test.rb
246
+ - test/web_console/session_test.rb
247
+ - test/web_console/whiny_request_test.rb
248
+ - test/web_console/whitelist_test.rb
248
249
  homepage: https://github.com/rails/web-console
249
250
  licenses:
250
251
  - MIT
@@ -268,10 +269,8 @@ rubyforge_project:
268
269
  rubygems_version: 2.2.2
269
270
  signing_key:
270
271
  specification_version: 4
271
- summary: A set of debugging tools for your Rails application.
272
+ summary: A debugging tool for your Ruby on Rails applications.
272
273
  test_files:
273
- - test/action_pack/exception_wrapper_test.rb
274
- - test/controllers/tests_controller_test.rb
275
274
  - test/dummy/app/assets/javascripts/application.js
276
275
  - test/dummy/app/assets/stylesheets/application.css
277
276
  - test/dummy/app/controllers/application_controller.rb
@@ -359,8 +358,19 @@ test_files:
359
358
  - test/dummy/tmp/cache/assets/test/sprockets/d982412def520c434e2240eae6d29cf2
360
359
  - test/dummy/tmp/cache/assets/test/sprockets/df048a8b0897b9c04acdf59c8f95b18f
361
360
  - test/dummy/tmp/cache/assets/test/sprockets/e6d6b8bde546349764be7b44ffcf5807
361
+ - test/support/scenarios/bad_custom_error_scenario.rb
362
+ - test/support/scenarios/basic_nested_scenario.rb
363
+ - test/support/scenarios/custom_error_scenario.rb
364
+ - test/support/scenarios/eval_nested_scenario.rb
365
+ - test/support/scenarios/flat_scenario.rb
366
+ - test/support/scenarios/reraised_scenario.rb
362
367
  - test/test_helper.rb
363
- - test/web_console/core_ext/exception_test.rb
364
- - test/web_console/engine_test.rb
365
- - test/web_console/repl_session_test.rb
366
- - test/web_console/repl_test.rb
368
+ - test/web_console/evaluator_test.rb
369
+ - test/web_console/helper_test.rb
370
+ - test/web_console/integration_test.rb
371
+ - test/web_console/middleware_test.rb
372
+ - test/web_console/railtie_test.rb
373
+ - test/web_console/request_test.rb
374
+ - test/web_console/session_test.rb
375
+ - test/web_console/whiny_request_test.rb
376
+ - test/web_console/whitelist_test.rb