ruby-changes:18272
From: tenderlove <ko1@a...>
Date: Thu, 23 Dec 2010 08:09:12 +0900 (JST)
Subject: [ruby-changes:18272] Ruby:r30295 (trunk): adding tests for the SMTP response parser
tenderlove 2010-12-23 08:09:05 +0900 (Thu, 23 Dec 2010) New Revision: 30295 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=30295 Log: adding tests for the SMTP response parser Added files: trunk/test/net/smtp/test_response.rb Index: test/net/smtp/test_response.rb =================================================================== --- test/net/smtp/test_response.rb (revision 0) +++ test/net/smtp/test_response.rb (revision 30295) @@ -0,0 +1,37 @@ +require 'net/smtp' +require 'minitest/autorun' + +module Net + class SMTP + class TestResponse < MiniTest::Unit::TestCase + def test_capabilities + res = Response.parse("250-ubuntu-desktop\n250-PIPELINING\n250-SIZE 10240000\n250-VRFY\n250-ETRN\n250-STARTTLS\n250-ENHANCEDSTATUSCODES\n250 DSN\n") + + capabilities = res.capabilities + %w{ PIPELINING SIZE VRFY STARTTLS ENHANCEDSTATUSCODES DSN}.each do |str| + assert capabilities.key?(str), str + end + end + + def test_capabilities_default + res = Response.parse("250-ubuntu-desktop\n250-PIPELINING\n250 DSN\n") + assert_equal [], res.capabilities['PIPELINING'] + end + + def test_capabilities_value + res = Response.parse("250-ubuntu-desktop\n250-SIZE 1234\n250 DSN\n") + assert_equal ['1234'], res.capabilities['SIZE'] + end + + def test_capabilities_multi + res = Response.parse("250-ubuntu-desktop\n250-SIZE 1 2 3\n250 DSN\n") + assert_equal %w{1 2 3}, res.capabilities['SIZE'] + end + + def test_bad_string + res = Response.parse("badstring") + assert_equal({}, res.capabilities) + end + end + end +end -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/