Changeset 2248

Show
Ignore:
Timestamp:
12/01/07 20:46:12 (13 months ago)
Author:
coji
Message:

lang/ruby/ssb: tuned up test codes, fixed "post localhost" test by adding content-type

Location:
lang/ruby/ssb/trunk
Files:
4 modified

Legend:

Unmodified
Added
Removed
  • lang/ruby/ssb/trunk/libs/ssb/request.rb

    r2182 r2248  
    5151        case method 
    5252        when 'GET' 
    53           response = http.get(uri.request_uri, request_header.update({'Host' => "#{@uri.host}:#{@uri.port}", 
     53          response = http.get(@uri.request_uri, request_header.update({'Host' => "#{@uri.host}:#{@uri.port}", 
    5454                                                      'Cookie' => 'server-side-browser'})) 
    5555        when 'POST' 
    56           response = http.post(uri.request_uri, 
     56          response = http.post(@uri.request_uri, 
    5757                               @post_params, 
    5858                               request_header.update({'Host' => "#{@uri.host}:#{@uri.port}", 
  • lang/ruby/ssb/trunk/test/mock_server.rb

    r2217 r2248  
    2525class MockServer 
    2626  def initialize 
    27     @webserv = WEBrick::HTTPServer.new(config) 
     27    @webserv = WEBrick::HTTPServer.new(MockServer.config) 
    2828    @server_thread = Thread.new do 
    2929      Thread.pass 
     
    4646  end 
    4747 
    48   def uri 
    49     URI.escape("http://#{config[:BindAddress]}:#{config[:Port]}/") 
     48  def self.uri 
     49    URI.escape("http://#{self.config[:BindAddress]}:#{self.config[:Port]}/") 
    5050  end 
    5151 
    52   def config 
     52  def self.config 
    5353    unless @conf 
    5454      @conf = { 
  • lang/ruby/ssb/trunk/test/request_test.rb

    r2212 r2248  
    77  def request_params 
    88    { 
    9       'q'.taint  => @mock_server.uri.dup.taint, 
     9      'q'.taint  => MockServer.uri.dup.taint, 
    1010      'p1'.taint => 'foo'.taint, 
    1111      'p2'.taint => 'bar'.taint, 
     
    2727 
    2828  def setup 
    29     @mock_server = MockServer.new 
    3029    @request = SSB::Request.new('GET', request_params, cookie) 
    31   end 
    32  
    33   def teardown 
    34     @mock_server.shutdown 
    3530  end 
    3631 
     
    5348  end 
    5449 
    55   test 'request_uri_should_escaped' do 
    56     assert_equal(@request.uri.to_s, "#{@mock_server.uri}?p1=foo&p2=bar&p3=bazz%26hoge") 
     50  test 'request_uri_should_encoded' do 
     51    assert_equal(@request.uri.to_s, "#{MockServer.uri}?p1=foo&p2=bar&p3=bazz%26hoge") 
    5752  end 
    5853 
     
    9994 
    10095  test 'test_request_should_success' do 
     96    mock_server = MockServer.new 
    10197    assert(@request.execute) 
     98    mock_server.shutdown 
    10299  end 
    103100 
    104101  test 'test_request_get' do 
     102    mock_server = MockServer.new 
    105103    request = SSB::Request.new('GET'.taint, request_params, cookie) 
    106104    response = request.execute 
    107105    assert_instance_of(Net::HTTPOK, response) 
    108106    assert(response.body =~ Regexp.new('It works by GET')) 
     107    mock_server.shutdown 
    109108  end 
    110109 
    111110  test 'test_request_post' do 
     111    mock_server = MockServer.new 
    112112    request = SSB::Request.new('POST'.taint, request_params, cookie) 
    113113    response = request.execute 
    114114    assert_instance_of(Net::HTTPOK, response) 
    115115    assert(response.body =~ Regexp.new('It works by POST')) 
     116    mock_server.shutdown 
    116117  end 
    117118end 
  • lang/ruby/ssb/trunk/test/ssb_test.rb

    r2217 r2248  
    1515  # launch ssb process via pipe 
    1616  def kick_ssb(method, query_string, postparams = nil) 
    17 #    return '' 
    1817    # CGI Parameters 
    1918    ENV['SERVER_NAME'] = 'localhost' 
     
    2524    else 
    2625      ENV['CONTENT_LENGTH'] = postparams.size.to_s 
     26      ENV['CONTENT_TYPE'] = 'application/x-www-form-urlencoded' 
    2727    end 
    2828    open_type = { 
     
    4949 
    5050  test 'ssb get local' do 
    51     ret = kick_ssb('GET', "q=#{@mock_server.uri}&uid=NULLGWDOCOMO") 
     51    ret = kick_ssb('GET', "q=#{MockServer.uri}&uid=NULLGWDOCOMO") 
    5252    assert_match(/It works by GET/, ret) 
    5353  end 
     
    5858    exp = Regexp.union( 
    5959      /getaddrinfo: Name or service not known/, 
    60       /getaddrinfo: nodename nor servname provided/)  
     60      /getaddrinfo: nodename nor servname provided/) 
    6161    assert_match(exp, ret) 
    6262  end 
    6363 
    6464  test 'ssb post local' do 
    65     ret = kick_ssb('POST', '', "q=#{@mock_server.uri}&param=test&uid=NULLGWDOCOMO") 
     65    ret = kick_ssb('POST', '', "q=#{MockServer.uri}?param=test&uid=NULLGWDOCOMO") 
    6666    assert_match(/It works by POST/, ret) 
    6767  end 
    6868 
    69   test 'ssb_post_invalidhost' do 
     69  test 'ssb post invalidhost' do 
    7070    # noname is invalid hostname 
    7171    ret = kick_ssb('POST', '', 'q=noname&param=test&uid=NULLGWDOCOMO')