44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
# File 'lib/javascript_features/test_case.rb', line 44
def uses_html(&block)
define_method(:setup) do
self.class.feature_names.each{ |f| self.class.use_javascript_for f }
@html = yield.strip
server_config = {:BindAddress => '0.0.0.0', :Port => 8076, :AccessLog => [], :Logger => WEBrick::Log::new('/dev/null', 7)}
@server = ::WEBrick::HTTPServer.new(server_config)
pages = self.class.server_pages.merge(
'/index.html' => @html,
'/jquery.js' => File.read(File.expand_path('../../../assets/jquery.js', __FILE__))
)
@server.mount('/', JavascriptFeatures::TestCase::Servlet, pages)
Thread.new{ @server.start }
@page = Harmony::Page.fetch("http://#{server_config[:BindAddress]}:#{server_config[:Port]}/index.html")
Harmony::Page::Window::BASE_RUNTIME.wait
end
define_method(:teardown) do
@server.shutdown
end
end
|