Class: MSpec::Opal::Runner
Defined Under Namespace
Classes: PhantomJS
Instance Attribute Summary collapse
-
#app ⇒ Object
readonly
Returns the value of attribute app.
-
#port ⇒ Object
Returns the value of attribute port.
-
#server ⇒ Object
readonly
Returns the value of attribute server.
Instance Method Summary collapse
-
#initialize(&block) ⇒ Runner
constructor
A new instance of Runner.
- #passed? ⇒ Boolean
- #run ⇒ Object
- #start_phantomjs ⇒ Object
- #start_server ⇒ Object
- #stop_server ⇒ Object
Constructor Details
Instance Attribute Details
#app ⇒ Object (readonly)
Returns the value of attribute app
44 45 46 |
# File 'opal/lib/mspec/opal/rake_task.rb', line 44 def app @app end |
#port ⇒ Object
Returns the value of attribute port
45 46 47 |
# File 'opal/lib/mspec/opal/rake_task.rb', line 45 def port @port end |
#server ⇒ Object (readonly)
Returns the value of attribute server
44 45 46 |
# File 'opal/lib/mspec/opal/rake_task.rb', line 44 def server @server end |
Instance Method Details
#passed? ⇒ Boolean
47 48 49 |
# File 'opal/lib/mspec/opal/rake_task.rb', line 47 def passed? @passed end |
#run ⇒ Object
51 52 53 54 55 56 57 58 59 60 |
# File 'opal/lib/mspec/opal/rake_task.rb', line 51 def run start_server start_phantomjs exit 1 unless passed? rescue => e puts e. ensure stop_server if server end |
#start_phantomjs ⇒ Object
81 82 83 84 85 86 |
# File 'opal/lib/mspec/opal/rake_task.rb', line 81 def start_phantomjs runner = File.('../sprockets.js', __FILE__).shellescape url = "http://localhost:#{port}/".shellescape command = PhantomJS.new(runner, url) @passed = command.run end |
#start_server ⇒ Object
88 89 90 91 92 93 |
# File 'opal/lib/mspec/opal/rake_task.rb', line 88 def start_server @server = Thread.new do Rack::Server.start(:app => app, :Port => port, :AccessLog => [], :Logger => WEBrick::Log.new("/dev/null")) end end |
#stop_server ⇒ Object
62 63 64 |
# File 'opal/lib/mspec/opal/rake_task.rb', line 62 def stop_server server.kill end |