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
65 66 67 |
# File 'opal/lib/mspec/opal/rake_task.rb', line 65 def app @app end |
#port ⇒ Object
Returns the value of attribute port
66 67 68 |
# File 'opal/lib/mspec/opal/rake_task.rb', line 66 def port @port end |
#server ⇒ Object (readonly)
Returns the value of attribute server
65 66 67 |
# File 'opal/lib/mspec/opal/rake_task.rb', line 65 def server @server end |
Instance Method Details
#passed? ⇒ Boolean
68 69 70 |
# File 'opal/lib/mspec/opal/rake_task.rb', line 68 def passed? @passed end |
#run ⇒ Object
72 73 74 75 76 77 78 79 80 81 |
# File 'opal/lib/mspec/opal/rake_task.rb', line 72 def run start_server start_phantomjs exit 1 unless passed? rescue => e puts e. ensure stop_server if server end |
#start_phantomjs ⇒ Object
102 103 104 105 106 107 |
# File 'opal/lib/mspec/opal/rake_task.rb', line 102 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
109 110 111 112 113 114 |
# File 'opal/lib/mspec/opal/rake_task.rb', line 109 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
83 84 85 |
# File 'opal/lib/mspec/opal/rake_task.rb', line 83 def stop_server server.kill end |