Ver Fonte

* move tests from Composer\Test\Vcs\SvnDriverTest to this class

till há 13 anos atrás
pai
commit
8eb9584173
1 ficheiros alterados com 49 adições e 0 exclusões
  1. 49 0
      tests/Composer/Test/Util/SvnTest.php

+ 49 - 0
tests/Composer/Test/Util/SvnTest.php

@@ -0,0 +1,49 @@
+<?php
+namespace Composer\Test\Util;
+
+use Composer\IO\NullIO;
+use Composer\Util\Svn;
+
+class SvnTest
+{
+    /**
+     * Provide some examples for {@self::testCredentials()}.
+     *
+     * @return array
+     */
+    public function urlProvider()
+    {
+        return array(
+            array('http://till:test@svn.example.org/', $this->getCmd(" --no-auth-cache --username 'till' --password 'test' ")),
+            array('http://svn.apache.org/', ''),
+            array('svn://johndoe@example.org', $this->getCmd(" --no-auth-cache --username 'johndoe' --password '' ")),
+        );
+    }
+
+    /**
+     * Test the credential string.
+     *
+     * @param string $url    The SVN url.
+     * @param string $expect The expectation for the test.
+     *
+     * @dataProvider urlProvider
+     */
+    public function testCredentials($url, $expect)
+    {
+        $svn = new Svn($url, new NullIO);
+
+        $this->assertEquals($expect, $svn->getCredentialString());
+    }
+
+    public function testInteractiveString()
+    {
+        $url = 'http://svn.example.org';
+
+        $svn = new Svn($url, new NullIO());
+
+        $this->assertEquals(
+            "svn ls --non-interactive  'http://svn.example.org'",
+            $svn->getCommand('svn ls', $url)
+        );
+    }
+}