diff vendor/consolidation/site-process/tests/Transport/DockerComposeTransportTest.php @ 5:12f9dff5fda9 tip

Update to Drupal core 8.7.1
author Chris Cannam
date Thu, 09 May 2019 15:34:47 +0100
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/vendor/consolidation/site-process/tests/Transport/DockerComposeTransportTest.php	Thu May 09 15:34:47 2019 +0100
@@ -0,0 +1,74 @@
+<?php
+
+namespace Consolidation\SiteProcess;
+
+use Consolidation\SiteProcess\Transport\DockerComposeTransport;
+use PHPUnit\Framework\TestCase;
+use Consolidation\SiteAlias\SiteAlias;
+
+class DockerComposeTransportTest extends TestCase
+{
+    /**
+     * Data provider for testWrap.
+     */
+    public function wrapTestValues()
+    {
+        return [
+            [
+                'docker-compose --project project --project-directory projectDir --file myCompose.yml exec -T --user root drupal ls',
+                [
+                    'docker' => [
+                        'service' => 'drupal',
+                        'compose' => [
+                            'options' => '--project project --project-directory projectDir --file myCompose.yml'
+                        ],
+                        'exec' => ['options' => '--user root']
+                    ]
+                ],
+            ],
+            [
+                'docker-compose exec -T drupal ls',
+                [
+                    'docker' => [
+                        'service' => 'drupal',
+                    ]
+                ],
+            ],
+            [
+                'docker-compose --project project2 --file myCompose.yml exec -T drupal ls',
+                [
+                    'docker' => [
+                        'service' => 'drupal',
+                        'project' => 'project1',
+                        'compose' => [
+                            'options' => '--project project2 --file myCompose.yml'
+                        ]
+                    ]
+                ],
+            ],
+            [
+                'docker-compose -p project1 --file myCompose.yml exec -T drupal ls',
+                [
+                    'docker' => [
+                        'service' => 'drupal',
+                        'project' => 'project1',
+                        'compose' => [
+                            'options' => '--file myCompose.yml'
+                        ]
+                    ]
+                ],
+            ],
+        ];
+    }
+
+    /**
+     * @dataProvider wrapTestValues
+     */
+    public function testWrap($expected, $siteAliasData)
+    {
+        $siteAlias = new SiteAlias($siteAliasData, '@alias.dev');
+        $dockerTransport = new DockerComposeTransport($siteAlias);
+        $actual = $dockerTransport->wrap(['ls']);
+        $this->assertEquals($expected, implode(' ', $actual));
+    }
+}