Skip to content

Commit 68a2d6d

Browse files
authored
Merge pull request #14 from testcontainers/rename
feat: rename package name
2 parents 0005627 + 38f5049 commit 68a2d6d

24 files changed

+136
-78
lines changed

.github/workflows/php.yml

+43-10
Original file line numberDiff line numberDiff line change
@@ -2,34 +2,67 @@ name: PHP
22

33
on:
44
push:
5-
branches: [ "main" ]
5+
branches:
6+
- main
67
pull_request:
7-
branches: [ "main" ]
8+
branches:
9+
- main
810

911
permissions:
1012
contents: read
1113

1214
jobs:
13-
build:
15+
cs:
1416
runs-on: ubuntu-latest
17+
name: Code Style
1518

1619
steps:
17-
- uses: actions/checkout@v3
20+
- uses: actions/checkout@v4
1821

19-
- name: Setup PHP with PECL extension
22+
- name: Setup PHP
2023
uses: shivammathur/setup-php@v2
2124
with:
2225
php-version: '8.1'
23-
extensions: redis, pgsql
2426

2527
- name: Install dependencies
2628
run: composer install --prefer-dist --no-progress
2729

28-
- name: Run test suite
29-
run: composer run integration
30-
3130
- name: Run cs
3231
run: composer run cs
33-
32+
33+
phpstan:
34+
runs-on: ubuntu-latest
35+
name: Static Analysis
36+
37+
steps:
38+
- uses: actions/checkout@v4
39+
40+
- name: Setup PHP
41+
uses: shivammathur/setup-php@v2
42+
with:
43+
php-version: '8.1'
44+
45+
- name: Install dependencies
46+
run: composer install --prefer-dist --no-progress
47+
3448
- name: Run phpstan
3549
run: composer run phpstan
50+
51+
phpunit:
52+
runs-on: ubuntu-latest
53+
name: Integration Tests
54+
55+
steps:
56+
- uses: actions/checkout@v4
57+
58+
- name: Setup PHP
59+
uses: shivammathur/setup-php@v2
60+
with:
61+
php-version: '8.1'
62+
extensions: redis, pgsql
63+
64+
- name: Install dependencies
65+
run: composer install --prefer-dist --no-progress
66+
67+
- name: Run test suite
68+
run: composer run integration

.gitignore

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
/vendor/
2-
.php-cs-fixer.cache
2+
/.php-cs-fixer.cache
3+
/.phpunit.cache
34
/composer.lock

README.md

+8-10
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,12 @@
22

33
Testcontainers is a PHP package that makes it simple to create and clean up container-based dependencies for automated integration/smoke tests. The package is inspired by the [Testcontainers](https://www.testcontainers.org/) project for Java.
44

5-
[@sironheart](https://github.com/sironheart) has annoyed me to test testcontainers, but it didn't existed in PHP yet.
6-
75
## Installation
86

97
Add this to your project with composer
108

119
```bash
12-
composer req --dev shyim/testcontainer
10+
composer req --dev testcontainers/testcontainers
1311
```
1412

1513
## Usage/Examples
@@ -19,7 +17,7 @@ composer req --dev shyim/testcontainer
1917
```php
2018
<?php
2119

22-
use Testcontainer\Container\MySQLContainer;
20+
use Testcontainers\Container\Container;
2321

2422
$container = Container::make('nginx:alpine');
2523

@@ -60,7 +58,7 @@ $container->withWait(new WaitForHealthCheck());
6058
```php
6159
<?php
6260

63-
use Testcontainer\Container\MySQLContainer;
61+
use Testcontainers\Container\MySQLContainer;
6462

6563
$container = MySQLContainer::make('8.0');
6664
$container->withMySQLDatabase('foo');
@@ -82,7 +80,7 @@ $pdo = new \PDO(
8280
```php
8381
<?php
8482

85-
use Testcontainer\Container\MariaDBContainer;
83+
use Testcontainers\Container\MariaDBContainer;
8684

8785
$container = MariaDBContainer::make('8.0');
8886
$container->withMariaDBDatabase('foo');
@@ -104,7 +102,7 @@ $pdo = new \PDO(
104102
```php
105103
<?php
106104

107-
use Testcontainer\Container\PostgresContainer;
105+
use Testcontainers\Container\PostgresContainer;
108106

109107
$container = PostgresContainer::make('15.0', 'password');
110108
$container->withPostgresDatabase('database');
@@ -125,7 +123,7 @@ $pdo = new \PDO(
125123

126124
```php
127125

128-
use Testcontainer\Container\RedisContainer;
126+
use Testcontainers\Container\RedisContainer;
129127

130128
$container = RedisContainer::make('6.0');
131129

@@ -141,7 +139,7 @@ $redis->connect($container->getAddress());
141139

142140
```php
143141

144-
use Testcontainer\Container\OpenSearchContainer;
142+
use Testcontainers\Container\OpenSearchContainer;
145143

146144
$container = OpenSearchContainer::make('2');
147145
$container->disableSecurityPlugin();
@@ -168,7 +166,7 @@ use Doctrine\Bundle\DoctrineBundle\ConnectionFactory;
168166
use Doctrine\Common\EventManager;
169167
use Doctrine\DBAL\Configuration;
170168
use Doctrine\DBAL\Tools\DsnParser;
171-
use Testcontainer\Container\PostgresContainer;
169+
use Testcontainers\Container\PostgresContainer;
172170

173171
class TestConnectionFactory extends ConnectionFactory
174172
{

composer.json

+6-6
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
{
2-
"name": "shyim/testcontainer",
3-
"description": "Testcontainer implementation in PHP",
2+
"name": "testcontainers/testcontainers",
3+
"description": "Testcontainers implementation in PHP",
44
"license": "MIT",
55
"keywords": [
66
"docker",
7-
"testcontainer"
7+
"testcontainers"
88
],
99
"type": "library",
1010
"authors": [
@@ -15,7 +15,7 @@
1515
],
1616
"require": {
1717
"php": ">= 8.1",
18-
"symfony/process": "^5.3|^6.0|^7.0"
18+
"symfony/process": "^5.0|^6.0|^7.0"
1919
},
2020
"require-dev": {
2121
"phpunit/phpunit": "^9.5",
@@ -28,12 +28,12 @@
2828
},
2929
"autoload": {
3030
"psr-4": {
31-
"Testcontainer\\": "src/"
31+
"Testcontainers\\": "src/"
3232
}
3333
},
3434
"autoload-dev": {
3535
"psr-4": {
36-
"Testcontainer\\Tests\\": "tests/"
36+
"Testcontainers\\Tests\\": "tests/"
3737
}
3838
},
3939
"scripts": {
File renamed without changes.

phpunit.xml.dist

+26
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3+
xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/9.6/phpunit.xsd"
4+
bootstrap="vendor/autoload.php"
5+
cacheResultFile=".phpunit.cache/test-results"
6+
executionOrder="depends,defects"
7+
beStrictAboutCoversAnnotation="true"
8+
beStrictAboutOutputDuringTests="true"
9+
beStrictAboutTodoAnnotatedTests="true"
10+
convertDeprecationsToExceptions="true"
11+
failOnRisky="true"
12+
failOnWarning="true"
13+
verbose="true">
14+
<testsuites>
15+
<testsuite name="default">
16+
<directory>tests</directory>
17+
</testsuite>
18+
</testsuites>
19+
20+
<coverage cacheDirectory=".phpunit.cache/code-coverage"
21+
processUncoveredFiles="true">
22+
<include>
23+
<directory suffix=".php">src</directory>
24+
</include>
25+
</coverage>
26+
</phpunit>

src/Container/Container.php

+6-6
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,14 @@
22

33
declare(strict_types=1);
44

5-
namespace Testcontainer\Container;
5+
namespace Testcontainers\Container;
66

77
use Symfony\Component\Process\Process;
8-
use Testcontainer\Exception\ContainerNotReadyException;
9-
use Testcontainer\Registry;
10-
use Testcontainer\Trait\DockerContainerAwareTrait;
11-
use Testcontainer\Wait\WaitForNothing;
12-
use Testcontainer\Wait\WaitInterface;
8+
use Testcontainers\Exception\ContainerNotReadyException;
9+
use Testcontainers\Registry;
10+
use Testcontainers\Trait\DockerContainerAwareTrait;
11+
use Testcontainers\Wait\WaitForNothing;
12+
use Testcontainers\Wait\WaitInterface;
1313

1414
/**
1515
* @phpstan-type ContainerInspectSingleNetwork array<int, array{'NetworkSettings': array{'IPAddress': string}}>

src/Container/MariaDBContainer.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
declare(strict_types=1);
44

5-
namespace Testcontainer\Container;
5+
namespace Testcontainers\Container;
66

7-
use Testcontainer\Wait\WaitForExec;
7+
use Testcontainers\Wait\WaitForExec;
88

99
class MariaDBContainer extends Container
1010
{

src/Container/MySQLContainer.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
declare(strict_types=1);
44

5-
namespace Testcontainer\Container;
5+
namespace Testcontainers\Container;
66

7-
use Testcontainer\Wait\WaitForExec;
7+
use Testcontainers\Wait\WaitForExec;
88

99
class MySQLContainer extends Container
1010
{

src/Container/OpenSearchContainer.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
declare(strict_types=1);
44

5-
namespace Testcontainer\Container;
5+
namespace Testcontainers\Container;
66

7-
use Testcontainer\Wait\WaitForHttp;
7+
use Testcontainers\Wait\WaitForHttp;
88

99
class OpenSearchContainer extends Container
1010
{

src/Container/PostgresContainer.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
declare(strict_types=1);
44

5-
namespace Testcontainer\Container;
5+
namespace Testcontainers\Container;
66

7-
use Testcontainer\Wait\WaitForExec;
7+
use Testcontainers\Wait\WaitForExec;
88

99
class PostgresContainer extends Container
1010
{

src/Container/RedisContainer.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
declare(strict_types=1);
44

5-
namespace Testcontainer\Container;
5+
namespace Testcontainers\Container;
66

7-
use Testcontainer\Wait\WaitForLog;
7+
use Testcontainers\Wait\WaitForLog;
88

99
class RedisContainer extends Container
1010
{

src/Exception/ContainerNotReadyException.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
declare(strict_types=1);
44

5-
namespace Testcontainer\Exception;
5+
namespace Testcontainers\Exception;
66

77
class ContainerNotReadyException extends \RuntimeException
88
{

src/Registry.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
declare(strict_types=1);
44

5-
namespace Testcontainer;
5+
namespace Testcontainers;
66

7-
use Testcontainer\Container\Container;
7+
use Testcontainers\Container\Container;
88

99
class Registry
1010
{

src/Trait/DockerContainerAwareTrait.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@
22

33
declare(strict_types=1);
44

5-
namespace Testcontainer\Trait;
5+
namespace Testcontainers\Trait;
66

77
use JsonException;
88
use Symfony\Component\Process\Process;
9-
use Testcontainer\Container\Container;
9+
use Testcontainers\Container\Container;
1010
use UnexpectedValueException;
1111

1212
/**

src/Wait/WaitForExec.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@
22

33
declare(strict_types=1);
44

5-
namespace Testcontainer\Wait;
5+
namespace Testcontainers\Wait;
66

77
use Closure;
88
use Symfony\Component\Process\Process;
9-
use Testcontainer\Exception\ContainerNotReadyException;
9+
use Testcontainers\Exception\ContainerNotReadyException;
1010

1111
class WaitForExec implements WaitInterface
1212
{

src/Wait/WaitForHealthCheck.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@
22

33
declare(strict_types=1);
44

5-
namespace Testcontainer\Wait;
5+
namespace Testcontainers\Wait;
66

77
use RuntimeException;
88
use Symfony\Component\Process\Process;
9-
use Testcontainer\Exception\ContainerNotReadyException;
9+
use Testcontainers\Exception\ContainerNotReadyException;
1010

1111
class WaitForHealthCheck implements WaitInterface
1212
{

src/Wait/WaitForHttp.php

+3-3
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@
22

33
declare(strict_types=1);
44

5-
namespace Testcontainer\Wait;
5+
namespace Testcontainers\Wait;
66

7-
use Testcontainer\Exception\ContainerNotReadyException;
8-
use Testcontainer\Trait\DockerContainerAwareTrait;
7+
use Testcontainers\Exception\ContainerNotReadyException;
8+
use Testcontainers\Trait\DockerContainerAwareTrait;
99

1010
class WaitForHttp implements WaitInterface
1111
{

src/Wait/WaitForLog.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@
22

33
declare(strict_types=1);
44

5-
namespace Testcontainer\Wait;
5+
namespace Testcontainers\Wait;
66

77
use Symfony\Component\Process\Process;
8-
use Testcontainer\Exception\ContainerNotReadyException;
8+
use Testcontainers\Exception\ContainerNotReadyException;
99

1010
class WaitForLog implements WaitInterface
1111
{

0 commit comments

Comments
 (0)