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  |