Changeset 2212 for lang/ruby/ssb
- Timestamp:
- 12/01/07 09:35:57 (14 months ago)
- Location:
- lang/ruby/ssb/trunk
- Files:
-
- 2 added
- 2 modified
- 7 moved
-
README (modified) (5 diffs)
-
test/all_tests.rb (moved) (moved from lang/ruby/ssb/trunk/test/all.rb) (1 diff)
-
test/emoji_test.rb (moved) (moved from lang/ruby/ssb/trunk/test/test_emoji.rb) (1 diff)
-
test/ktai_db_test.rb (moved) (moved from lang/ruby/ssb/trunk/test/test_ktai_db.rb) (5 diffs)
-
test/ktai_spec_test.rb (moved) (moved from lang/ruby/ssb/trunk/test/test_ktai_spec.rb) (4 diffs)
-
test/mock_csv.rb (added)
-
test/mock_server.rb (modified) (1 diff)
-
test/request_test.rb (moved) (moved from lang/ruby/ssb/trunk/test/test_request.rb) (5 diffs)
-
test/ssb_test.rb (moved) (moved from lang/ruby/ssb/trunk/test/test_ssb.rb) (5 diffs)
-
test/test_helper.rb (added)
-
test/time_stamper_test.rb (moved) (moved from lang/ruby/ssb/trunk/test/test_time_stamper.rb) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
lang/ruby/ssb/trunk/README
r2183 r2212 5 5 6 6 必要なもの(なくてもとりあえず動きます) 7 - rake (setup/ test)7 - rake (setup/unit test) 8 8 - scrapi (絵文字画像のダウンロード) 9 9 - ImageMagick (convert 絵文字画像のサイズ変換) … … 11 11 - mod_ruby (apache + mod_rubyで動かす場合) 12 12 - lha (KDDI絵文字アーカイブ解凍) 13 - dust (unit test) 13 14 14 15 動作確認環境: … … 22 23 - rake 0.7.3 (gem) 23 24 - scrapi 1.2.0 (gem) 25 - dust 0.1.6 (gem) 24 26 25 27 … … 28 30 1. ソースコードをとってくる 29 31 30 $ svn co http://svn.coderepos.org/share/lang/ruby/ssb ssb32 $ svn co http://svn.coderepos.org/share/lang/ruby/ssb/trunk ssb 31 33 32 34 … … 70 72 - id:tokuhirom 71 73 - id:babie 74 - ursm 75 - lchin -
lang/ruby/ssb/trunk/test/all_tests.rb
r2146 r2212 1 # all.rb - Unit test for all modules 2 # 3 # Author:: MIZOGUCHI Coji <mizoguchi.coji at gmail.com> 4 # License:: Distributes under the same terms as Ruby 5 # 6 # $Id$ 7 # 8 require 'test/unit' 9 require 'config/common.rb' 10 11 Dir.glob("#{File.dirname(__FILE__)}/*{test_}*").each{|v| 12 require v 13 } 1 Dir['**/*_test.rb'].each {|test_case| require test_case } -
lang/ruby/ssb/trunk/test/emoji_test.rb
r2146 r2212 1 # test_emoji.rb - Unit test for Emoji 2 # 3 # Author:: Tokuhiro Matsuno <tokuhirom at gmail.com> 4 # License:: Distributes under the same terms as Ruby 5 # 6 # $Id: $ 7 # 8 require 'test/unit' 9 require 'config/common.rb' 1 require File.expand_path(File.dirname(__FILE__) + '/test_helper') 10 2 require 'ssb/emoji.rb' 11 3 require 'ssb/ktai_spec.rb' 12 4 13 5 class Term 14 def initialize(carrier)15 @carrier = carrier16 end17 18 attr_reader :carrier19 alias :get_carrier :carrier6 def initialize(carrier) 7 @carrier = carrier 8 end 9 10 attr_reader :carrier 11 alias :get_carrier :carrier 20 12 end 21 13 22 class Emoji_Test < Test::Unit::TestCase 23 def setup 24 @docomo = Term.new(SSB::KtaiSpec::CARRIER_DOCOMO) 25 @kddi = Term.new(SSB::KtaiSpec::CARRIER_KDDI) 26 @thirdforce = Term.new(SSB::KtaiSpec::CARRIER_SOFTBANK) 27 end 14 unit_tests do 15 def conv(carrier, str) 16 SSB::Emoji.emoji_conv(Term.new(carrier), str) 17 end 18 19 # docomo 20 test 'docomo cref dec' do 21 assert_equal(conv(SSB::KtaiSpec::CARRIER_DOCOMO, '糧'), "<img class=\"emoji\" src=\"emoji/docomo/F97B.gif\" />") 22 end 28 23 29 def conv(term, str) 30 SSB::Emoji.emoji_conv(term, str) 31 end 24 test 'docomo direct binary' do 25 $KCODE='sjis' 26 assert_equal(conv(SSB::KtaiSpec::CARRIER_DOCOMO, "\xF9\x7B"), "<img class=\"emoji\" src=\"emoji/docomo/F97B.gif\" />") 27 $KCODE='utf-8' 28 end 32 29 33 # docomo 34 def test_docomo_cref_dec 35 assert_equal(conv(@docomo, '糧'), "<img class=\"emoji\" src=\"emoji/docomo/F97B.gif\" />") 36 end 37 def test_docomo_direct_binary 38 $KCODE='sjis' 39 assert_equal(conv(@docomo, "\xF9\x7B"), "<img class=\"emoji\" src=\"emoji/docomo/F97B.gif\" />") 40 $KCODE='utf-8' 41 end 42 def test_docomo_cref_hex_extension 43 assert_equal(conv(@docomo, ""), "<img class=\"emoji\" src=\"emoji/docomo/F9B1.gif\" />") 44 end 45 46 # ezweb 47 def test_ezweb_localsrc 48 assert_equal(conv(@kddi, '<img localsrc="54" />'), "<img class=\"emoji\" src=\"emoji/kddi/054.gif\" />") 49 end 50 51 # thirdforce 52 def test_vodafone_localsrc 53 assert_equal(conv(@thirdforce, "\x1B\$Q>\x0F"), "<img class='emoji' src='emoji/softbank/E51E.gif' />") 54 assert_equal(conv(@thirdforce, "\x1B\$G!\x0F"), "<img class='emoji' src='emoji/softbank/E001.gif' />") 55 end 30 test 'docomo cref hex extension' do 31 assert_equal(conv(SSB::KtaiSpec::CARRIER_DOCOMO, ""), "<img class=\"emoji\" src=\"emoji/docomo/F9B1.gif\" />") 32 end 33 34 # ezweb 35 test 'ezweb localsrc' do 36 assert_equal(conv(SSB::KtaiSpec::CARRIER_KDDI, '<img localsrc="54" />'), "<img class=\"emoji\" src=\"emoji/kddi/054.gif\" />") 37 end 38 39 # thirdforce 40 test 'vodafone localsrc' do 41 assert_equal(conv(SSB::KtaiSpec::CARRIER_SOFTBANK, "\x1B\$Q>\x0F"), "<img class='emoji' src='emoji/softbank/E51E.gif' />") 42 assert_equal(conv(SSB::KtaiSpec::CARRIER_SOFTBANK, "\x1B\$G!\x0F"), "<img class='emoji' src='emoji/softbank/E001.gif' />") 43 end 56 44 end 57 45 -
lang/ruby/ssb/trunk/test/ktai_db_test.rb
r2182 r2212 1 # test_ktai_db.rb - Unit test for KtaiDB 2 # 3 # Author:: MIZOGUCHI Coji <mizoguchi.coji at gmail.com> 4 # License:: Distributes under the same terms as Ruby 5 # 6 # $Id$ 7 # 8 require 'test/unit' 9 require 'config/common.rb' 1 require File.expand_path(File.dirname(__FILE__) + '/test_helper') 10 2 require 'ssb/ktai_db.rb' 11 3 require 'nkf' 12 4 13 class KtaiDB_Test < Test::Unit::TestCase 14 TEST_DATA = <<EOL 15 MobilePhoneList [2007-11-27 11:06:58] By http://ke-tai.org/ 16 "連番","メーカ名","機種名","機種略名","ユーザエージェント","タイプ1","タイプ2","ブラウザ幅(x)","ブラウザ高さ(y)","表示カラー数","ブラウザキャッシュ","GIF","JPG","PNG","Flash","Flashバージョン","Flashワークメモリ","Javaアプリ","BREW","HTML","SSL","ログイン","クッキー","備考","更新日" 17 "1000010","DoCoMo","D501i","D501i","DoCoMo/1.0/D501i","mova","1.0","96","72","2","5","1","0","0","0","0","0","0","0","1","0","0","0","","2007-09-27 23:05:25" 18 "1000020","DoCoMo","F501i","F501i","DoCoMo/1.0/F501i","mova","1.0","112","84","2","5","1","0","0","0","0","0","0","0","1","0","0","0","","2007-09-27 23:04:52" 19 "1000030","DoCoMo","N501i","N501i","DoCoMo/1.0/N501i","mova","1.0","118","128","2","5","1","1","0","0","0","0","0","0","1","0","0","0","","2007-10-26 12:47:36" 20 "1000040","DoCoMo","P501i","P501i","DoCoMo/1.0/P501i","mova","1.0","96","120","2","5","1","0","0","0","0","0","0","0","1","0","0","0","","2007-09-10 21:52:34" 21 "1000050","DoCoMo","D502i","D502i","DoCoMo/1.0/D502i","mova","2.0","96","90","256","5","1","0","0","0","0","0","0","0","1","0","0","0","","2007-09-10 21:52:49" 22 "1000060","DoCoMo","F502i","F502i","DoCoMo/1.0/F502i","mova","2.0","96","91","256","5","1","0","0","0","0","0","0","0","1","0","0","0","","2007-09-11 22:06:44" 23 "1000070","DoCoMo","N502i","N502i","DoCoMo/1.0/N502i","mova","2.0","118","128","4","5","1","0","0","0","0","0","0","0","1","0","0","0","","2007-09-08 17:45:39" 24 "1000080","DoCoMo","P502i","P502i","DoCoMo/1.0/P502i","mova","2.0","96","117","4","5","1","0","0","0","0","0","0","0","1","0","0","0","","2007-09-08 17:45:39" 25 "1000090","DoCoMo","NM502i","NM502i","DoCoMo/1.0/NM502i","mova","2.0","111","106","2","5","1","0","0","0","0","0","0","0","1","0","0","0","","2007-09-08 17:45:39" 26 "1000100","DoCoMo","SO502i","SO502i","DoCoMo/1.0/SO502i","mova","2.0","120","120","4","5","1","0","0","0","0","0","0","0","1","0","0","0","","2007-09-08 17:45:39" 27 "2000010","au","C201H","HI01/HI02","UP.Browser/3.01-HI01/HI02 UP.Link/3.2.1.2","WAP1.0","3","120","51","2","1.4","0","0","0","0","0","0","0","0","0","1","1","1","","2007-09-08 17:45:39" 28 "2000020","au","C202DE","DN01","UP.Browser/3.02-DN01 UP.Link/3.2.1.2","WAP1.0","3","108","39","2","1.4","0","0","0","0","0","0","0","0","0","1","1","1","","2007-09-08 17:45:39" 29 "2000030","au","C301T","TS11","UP.Browser/3.04-TS11 UP.Link/3.4.4","WAP1.0","3","120","84","2","1.4","0","0","0","0","0","0","0","0","0","1","1","1","","2007-09-08 17:45:39" 30 "2000040","au","C302H","HI11","UP.Browser/3.04-HI11 UP.Link/3.4.4","WAP1.0","3","120","75","2","1.4","0","0","0","0","0","0","0","0","0","1","1","1","","2007-09-08 17:45:39" 31 "2000050","au","C303CA","CA11","UP.Browser/3.04-CA11 UP.Link/3.4.4","WAP1.0","3","120","91","2","1.4","0","0","0","0","0","0","0","0","0","1","1","1","","2007-09-08 17:45:39" 32 "2000060","au","C304SA","SY11","UP.Browser/3.04-SY11 UP.Link/3.4.4","WAP1.0","3","128","96","2","1.4","0","0","0","0","0","0","0","0","0","1","1","1","","2007-09-08 17:45:39" 33 "2000070","au","C305S","SM11","UP.Browser/3.04-SN11 UP.Link/3.4.4","WAP1.0","3","120","98","2","1.4","0","0","0","0","0","0","0","0","0","1","1","1","","2007-09-08 17:45:39" 34 "2000080","au","C307K","KC11","UP.Browser/3.04-KC11 UP.Link/3.4.4","WAP1.0","3","121","90","2","1.4","0","0","0","0","0","0","0","0","0","1","1","1","","2007-09-08 17:45:39" 35 "2000090","au","C308P","MA11/MA12","UP.Browser/3.04-MA11/MA12 UP.Link/3.4.4","WAP1.0","3","122","78","2","1.4","0","0","0","0","0","0","0","0","0","1","1","1","","2007-09-08 17:45:39" 36 "2000100","au","C309H","HI12","UP.Browser/3.04-HI12 UP.Link/3.4.4","WAP1.0","3","120","112","256","7.5","0","0","1","0","0","0","0","0","0","1","1","1","","2007-09-08 17:45:39" 37 "3000010","Vodafone","J-SH02","J-SH02","J-PHONE/2.0/J-SH02","C2","","96","84","256","6","0","0","1","0","0","0","0","0","1","0","0","0","","2007-09-08 17:45:39" 38 "3000020","Vodafone","J-DN02","J-DN02","J-PHONE/2.0/J-DN02","C2","","116","122","4","6","0","0","1","0","0","0","0","0","1","0","0","0","","2007-09-08 17:45:39" 39 "3000030","Vodafone","J-P02","J-P02","J-PHONE/2.0/J-P02","C2","","96","89","4","6","0","0","1","0","0","0","0","0","1","0","0","0","","2007-09-08 17:45:39" 40 "3000040","Vodafone","J-SA02","J-SA02","J-PHONE/2.0/J-SA02","C2","","96","76","256","6","0","0","1","0","0","0","0","0","1","0","0","0","","2007-09-08 17:45:39" 41 "3000050","Vodafone","J-SH03","J-SH03","J-PHONE/2.0/J-SH03","C2","","96","104","256","6","0","0","1","0","0","0","0","0","1","0","0","0","","2007-09-08 17:45:39" 42 "3000060","Vodafone","J-T04","J-T04","J-PHONE/2.0/J-T04","C2","","96","90","256","6","0","0","1","0","0","0","0","0","1","0","0","0","","2007-09-08 17:45:39" 43 "3000070","Vodafone","J-P03","J-P03","J-PHONE/2.0/J-P03","C2","","96","95","256","6","0","0","1","0","0","0","0","0","1","0","0","0","","2007-09-08 17:45:39" 44 "3000080","Vodafone","J-K03S","J-K03S","J-PHONE/3.0/J-K03","C3","","120","110","256","6","0","1","1","0","0","0","0","0","1","0","0","0","","2007-09-08 17:45:39" 45 "3000090","Vodafone","J-K03","J-K03","J-PHONE/3.0/J-K03","C3","","120","110","256","6","0","1","1","0","0","0","0","0","1","0","0","0","","2007-09-08 17:45:39" 46 "3000100","Vodafone","J-D03S","J-D03S","J-PHONE/3.0/J-D03","C3","","120","117","256","6","0","1","1","0","0","0","0","0","1","0","0","0","","2007-09-08 17:45:39" 47 EOL 48 49 def setup 50 File.open('test.csv', 'w') do |tmp| 51 tmp.write NKF::nkf('-s --windows', TEST_DATA) 52 end 53 @ktai_db = SSB::KtaiDB.new(true, 'test.csv') 5 unit_tests do 6 test 'default size should 30' do 7 db = SSB::KtaiDB.new(true) 8 assert_equal(db.size, 30) 54 9 end 55 10 56 def teardown 57 File.unlink('test.csv') 58 end 59 60 def test_default_size_will_30 61 assert_equal(@ktai_db.size, 30) 62 end 63 64 def test_simple_search 65 ret = @ktai_db.search(:carrier => 'DoCoMo') 11 test 'simple search' do 12 db = SSB::KtaiDB.new(true) 13 ret = db.search(:carrier => 'DoCoMo') 66 14 assert_equal(ret.size, 10) 67 15 68 ret = @ktai_db.search(:carrier => 'au')16 ret = db.search(:carrier => 'au') 69 17 assert_equal(ret.size, 10) 70 ret = @ktai_db.search(:carrier => 'KDDI')18 ret = db.search(:carrier => 'KDDI') 71 19 assert_equal(ret.size, 10) 72 ret = @ktai_db.search(:carrier => 'Tu-ka')20 ret = db.search(:carrier => 'Tu-ka') 73 21 assert_equal(ret.size, 10) 74 22 75 ret = @ktai_db.search(:carrier => 'SoftBank')23 ret = db.search(:carrier => 'SoftBank') 76 24 assert_equal(ret.size, 10) 77 ret = @ktai_db.search(:carrier => 'Vodafone')25 ret = db.search(:carrier => 'Vodafone') 78 26 assert_equal(ret.size, 10) 79 ret = @ktai_db.search(:carrier => 'ThirdForce')27 ret = db.search(:carrier => 'ThirdForce') 80 28 assert_equal(ret.size, 10) 81 29 82 ret = @ktai_db.search(:carrier => 'DoCoMo', :name => 'N') # N501i N502i NM502i30 ret = db.search(:carrier => 'DoCoMo', :name => 'N') # N501i N502i NM502i 83 31 assert_equal(ret.size, 3) 84 32 assert_equal(ret[0][:name], 'N501i') … … 86 34 assert_equal(ret[2][:name], 'NM502i') 87 35 88 ret = @ktai_db.search(:name => 'N') # N501i N502i NM502i36 ret = db.search(:name => 'N') # N501i N502i NM502i 89 37 assert_equal(ret.size, 3) 90 38 assert_equal(ret[0][:name], 'N501i') … … 92 40 assert_equal(ret[2][:name], 'NM502i') 93 41 94 ret = @ktai_db.search(:carrier => 'DoCoMo', :name => 'N5') # N501i N502i42 ret = db.search(:carrier => 'DoCoMo', :name => 'N5') # N501i N502i 95 43 assert_equal(ret.size, 2) 96 44 assert_equal(ret[0][:name], 'N501i') 97 45 assert_equal(ret[1][:name], 'N502i') 98 46 99 ret = @ktai_db.search(:carrier => 'DoCoMo', :name => 'NM') # NM502i47 ret = db.search(:carrier => 'DoCoMo', :name => 'NM') # NM502i 100 48 assert_equal(ret.size, 1) 101 49 assert_equal(ret[0][:name], 'NM502i') … … 103 51 104 52 # useragentで検索するとき、完全一致のときは1件だけ 105 def test_search_by_useragent_fullmatch 106 ret = @ktai_db.search(:useragent => 'UP.Browser/3.04-HI11 UP.Link/3.4.4') 53 test 'search by useragent fullmatch' do 54 db = SSB::KtaiDB.new(true) 55 ret = db.search(:useragent => 'UP.Browser/3.04-HI11 UP.Link/3.4.4') 107 56 assert_equal(ret.size, 1) 108 57 assert_equal(ret[0][:name], 'C302H') 109 58 end 110 59 111 60 # useragentで検索は前方からの部分一致でok 112 def test_search_by_useragent_partmatch 113 ret = @ktai_db.search(:useragent => 'UP.Browser/3.04') 61 test 'search by useragent partmatch' do 62 db = SSB::KtaiDB.new(true) 63 ret = db.search(:useragent => 'UP.Browser/3.04') 114 64 assert_equal(ret.size, 8) 115 65 assert_equal(ret[0][:name], 'C301T') … … 117 67 end 118 68 119 def test_search_nil 120 ktai = @ktai_db.search(:carrier => nil, 121 :name => nil, 122 :useragent => nil) 69 test 'test search nil' do 70 db = SSB::KtaiDB.new(true) 71 ktai = db.search(:carrier => nil, 72 :name => nil, 73 :useragent => nil) 123 74 assert_not_nil(ktai) 124 75 assert_instance_of(Array, ktai) -
lang/ruby/ssb/trunk/test/ktai_spec_test.rb
r1870 r2212 1 # test_ktai_spec.rb - Unit test for KtaiSpec 2 # 3 # Author:: MIZOGUCHI Coji <mizoguchi.coji at gmail.com> 4 # License:: Distributes under the same terms as Ruby 5 # 6 # $Id$ 7 # 8 require 'test/unit' 9 require 'config/common.rb' 1 require File.expand_path(File.dirname(__FILE__) + '/test_helper') 10 2 require 'ssb/ktai_spec.rb' 11 3 12 class KtaiSpec_Test < Test::Unit::TestCase 4 unit_tests do 13 5 TEST_UA = 'DoCoMo/2.0 N902i(c100;TB;hid;icc)' 14 6 TEST_PROPS = { … … 34 26 35 27 # デフォルトプロパティはキーとして存在する必要あり 36 def test_default_props28 test 'default_props' do 37 29 @spec.each do |spec| 38 30 MUST_KEYS.each do |key| … … 44 36 45 37 # 拡張プロパティがちゃんと格納されるか 46 def test_extra_prop38 test 'extra_prop' do 47 39 assert(@spec[1].has_key?(:extra)) 48 40 assert_equal(@spec[1][:extra], '拡張データ') … … 50 42 51 43 # ユーザエージェント文字列が正しいか 52 def test_useragent44 test 'useragent' do 53 45 assert(@spec[0][:useragent]) 54 46 assert_equal(@spec[0][:useragent], TEST_UA) -
lang/ruby/ssb/trunk/test/mock_server.rb
r1870 r2212 56 56 :Port => 33223, 57 57 :Logger => WEBrick::Log.new(nil, WEBrick::Log::ERROR), 58 :AccessLog => [[IO.new(IO.sysopen('/dev/null', 'w')), WEBrick::AccessLog::COMMON_LOG_FORMAT]],58 # :AccessLog => [[IO.new(IO.sysopen('/dev/null', 'w')), WEBrick::AccessLog::COMMON_LOG_FORMAT]], 59 59 } 60 60 end -
lang/ruby/ssb/trunk/test/request_test.rb
r2182 r2212 1 # test_request.rb - Unit test for Request 2 # 3 # Author:: MIZOGUCHI Coji <mizoguchi.coji at gmail.com> 4 # License:: Distributes under the same terms as Ruby 5 # 6 # $Id$ 7 # 8 require 'test/unit' 9 require 'test/mock_server' 10 require 'config/common' 1 require File.expand_path(File.dirname(__FILE__) + '/test_helper') 11 2 require 'ssb/request' 12 3 13 4 $SAFE = 1 14 5 15 class Request_Test < Test::Unit::TestCase 6 unit_tests do 16 7 def request_params 17 8 { … … 44 35 end 45 36 46 def test_instance37 test 'instance' do 47 38 assert_not_nil(@request) 48 39 end 49 40 50 def test_request_method41 test 'request_method' do 51 42 assert_instance_of(String, @request.method) 52 43 assert_equal(@request.method, 'GET') … … 54 45 end 55 46 56 def test_request_uri_should_uri47 test 'request_uri_should_uri' do 57 48 assert_instance_of(URI::HTTP, @request.uri) 58 49 end 59 50 60 def test_request_uri_should_start_with_http51 test 'request_uri_should_start_with_http' do 61 52 assert(@request.uri.to_s =~ /^http:\/\//) 62 53 end 63 54 64 def test_request_uri_should_escaped55 test 'request_uri_should_escaped' do 65 56 assert_equal(@request.uri.to_s, "#{@mock_server.uri}?p1=foo&p2=bar&p3=bazz%26hoge") 66 57 end 67 58 68 def test_request_uri_should_not_taintedx59 test 'request_uri_should_not_taintedx' do 69 60 assert(!@request.uri.tainted?) 70 61 end 71 62 72 def test_request_post_params63 test 'request_post_params' do 73 64 assert_equal(@request.post_params, nil) 74 65 end 75 66 76 def test_request_term_should_not_nil67 test 'request_term_should_not_nil' do 77 68 assert_not_nil(@request.term) 78 69 end 79 70 80 def test_request_term_keys_should_not_tainted_and_valid_value71 test 'request_term_keys_should_not_tainted_and_valid_value' do 81 72 assert_not_nil(@request.term) 82 73 test_keys = ['homepage', 'mailaddr', 'useragent', 'uid', 'hid', 'icc'] … … 87 78 end 88 79 89 def test_request_header_should_exist80 test 'request_header_should_exist' do 90 81 assert_not_nil(@request.request_header) 91 82 end 92 83 93 def test_request_header_should_have_useragent84 test 'request_header_should_have_useragent' do 94 85 assert(@request.request_header.has_key?('User-Agent')) 95 86 end 96 87 97 def test_request_header_shuold_vaild_useragent_with_hid88 test 'request_header_shuold_vaild_useragent_with_hid' do 98 89 assert_equal(@request.request_header['User-Agent'], 'DoCoMo/2.0 N902i(c100;TB;hidhidhid;icciccicc)') 99 90 end 100 91 101 def test_request_header_should_have_exheader92 test 'request_header_should_have_exheader' do 102 93 assert(@request.request_header.has_key?('X-Hoge')) 103 94 end 104 95 105 def test_request_header_shuold_valid_exheader96 test 'test_request_header_shuold_valid_exheader' do 106 97 assert_equal(@request.request_header['X-Hoge'], 'hoge') 107 98 end 108 99 109 def test_request_should_success100 test 'test_request_should_success' do 110 101 assert(@request.execute) 111 102 end 112 103 113 def test_request_get104 test 'test_request_get' do 114 105 request = SSB::Request.new('GET'.taint, request_params, cookie) 115 106 response = request.execute … … 118 109 end 119 110 120 def test_request_post111 test 'test_request_post' do 121 112 request = SSB::Request.new('POST'.taint, request_params, cookie) 122 113 response = request.execute -
lang/ruby/ssb/trunk/test/ssb_test.rb
r2201 r2212 1 # test_ssb.rb - Unit test for SSB 2 # 3 # Author:: MIZOGUCHI Coji <mizoguchi.coji at gmail.com> 4 # License:: Distributes under the same terms as Ruby 5 # 6 # $Id$ 7 # 8 require 'test/unit' 9 require 'test/mock_server.rb' 10 require 'config/common.rb' 1 require File.expand_path(File.dirname(__FILE__) + '/test_helper') 11 2 12 class SSB_Test < Test::Unit::TestCase 13 3 unit_tests do 14 4 def setup 15 5 @savedir = Dir.pwd … … 25 15 # launch ssb process via pipe 26 16 def kick_ssb(method, query_string, postparams = nil) 17 return '' 27 18 # CGI Parameters 28 19 ENV['SERVER_NAME'] = 'localhost' … … 42 33 ret = '' 43 34 begin 44 IO.popen('ruby -K sindex.rbx', open_type[method]) do |io|35 IO.popen('ruby -Ku index.rbx', open_type[method]) do |io| 45 36 if method == 'POST' 46 37 io.puts postparams unless postparams.nil? … … 57 48 end 58 49 59 def test_ssb_get_local50 test 'ssb get local' do 60 51 ret = kick_ssb('GET', "q=#{@mock_server.uri}&uid=NULLGWDOCOMO") 61 52 assert_match(/It works by GET/, ret) 62 53 end 63 54 64 def test_ssb_get_invalidhost55 test 'ssb get invalidhost' do 65 56 # noname is invalid hostname 66 57 ret = kick_ssb('GET', 'q=noname') … … 68 59 end 69 60 70 def test_ssb_post_local61 test 'ssb post local' do 71 62 ret = kick_ssb('POST', '', "q=#{@mock_server.uri}¶m=test&uid=NULLGWDOCOMO") 72 63 assert_match(/It works by POST/, ret) 73 64 end 74 65 75 def test_ssb_post_invalidhost66 test 'ssb_post_invalidhost' do 76 67 # noname is invalid hostname 77 68 ret = kick_ssb('POST', '', 'q=noname¶m=test&uid=NULLGWDOCOMO') -
lang/ruby/ssb/trunk/test/time_stamper_test.rb
r1870 r2212 1 # test_time_stamper.rb - unit test for TimeStamper 2 # 3 # Author:: MIZOGUCHI Coji <mizoguchi.coji at gmail.com> 4 # License:: Distributes under the same terms as Ruby 5 # 6 # $Id$ 7 # 8 require 'test/unit' 9 require 'config/common' 1 require File.expand_path(File.dirname(__FILE__) + '/test_helper') 10 2 require 'ssb/time_stamper' 11 3 12 class TimeStamper_Test < Test::Unit::TestCase 13 def setup14 @stamp =SSB::TimeStamper.new4 unit_tests do 5 test 'instance' do 6 assert SSB::TimeStamper.new 15 7 end 16 8 17 def teardown 18 end 9 test 'stampit' do 10 stamp = SSB::TimeStamper.new 11 now = Time.now 19 12 20 def test_instance 21 assert(@stamp) 22 end 23 24 def test_stampit 25 now = Time.now 26 assert_equal(@stamp.count, 0) 27 stamped = @stamp.stamp(:test) 13 assert_equal(stamp.count, 0) 14 stamped = stamp.stamp(:test) 28 15 assert_equal(stamped.class, Time) 29 16 assert(stamped >= now) 30 17 assert((stamped - now).to_i < 1) 31 assert_equal( @stamp.count, 1)32 assert_equal(stamped, @stamp[:test])18 assert_equal(stamp.count, 1) 19 assert_equal(stamped, stamp[:test]) 33 20 end 34 21 end
![(please configure the [header_logo] section in trac.ini)](/share/chrome/site/your_project_logo.png)