[前][次][番号順一覧][スレッド一覧]

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/

[前][次][番号順一覧][スレッド一覧]