code style fix

add command tests
This commit is contained in:
Saeed Vaziry
2023-09-02 16:41:42 +02:00
parent 71f9dabc24
commit e1eb42059f
135 changed files with 1859 additions and 135 deletions

View File

@ -0,0 +1,46 @@
<?php
namespace Tests\Feature\SSHCommands\Website;
use App\SSHCommands\Website\CloneRepositoryCommand;
use Tests\TestCase;
class CloneRepositoryCommandTest extends TestCase
{
public function test_generate_command()
{
$command = new CloneRepositoryCommand('git@github.com-key:vitodeploy/vito.git', 'path', 'main', 'pk_path');
$expected = <<<EOD
echo "Host github.com-pk_path
Hostname github.com
IdentityFile=~/.ssh/pk_path" >> ~/.ssh/config
ssh-keyscan -H github.com >> ~/.ssh/known_hosts
rm -rf path
if ! git config --global core.fileMode false; then
echo 'VITO_SSH_ERROR' && exit 1
fi
if ! git clone -b main git@github.com-key:vitodeploy/vito.git path; then
echo 'VITO_SSH_ERROR' && exit 1
fi
if ! find path -type d -exec chmod 755 {} \;; then
echo 'VITO_SSH_ERROR' && exit 1
fi
if ! find path -type f -exec chmod 644 {} \;; then
echo 'VITO_SSH_ERROR' && exit 1
fi
if ! cd path && git config core.fileMode false; then
echo 'VITO_SSH_ERROR' && exit 1
fi
EOD;
$this->assertStringContainsString($expected, $command->content());
}
}

View File

@ -0,0 +1,26 @@
<?php
namespace Tests\Feature\SSHCommands\Website;
use App\SSHCommands\Website\ComposerInstallCommand;
use Tests\TestCase;
class ComposerInstallCommandTest extends TestCase
{
public function test_generate_command()
{
$command = new ComposerInstallCommand('path');
$expected = <<<'EOD'
if ! cd path; then
echo 'VITO_SSH_ERROR' && exit 1
fi
if ! composer install --no-interaction --prefer-dist --optimize-autoloader --no-dev; then
echo 'VITO_SSH_ERROR' && exit 1
fi
EOD;
$this->assertStringContainsString($expected, $command->content());
}
}

View File

@ -0,0 +1,26 @@
<?php
namespace Tests\Feature\SSHCommands\Website;
use App\SSHCommands\Website\UpdateBranchCommand;
use Tests\TestCase;
class UpdateBranchCommandTest extends TestCase
{
public function test_generate_command()
{
$command = new UpdateBranchCommand('path', 'main');
$expected = <<<'EOD'
if ! cd path; then
echo 'VITO_SSH_ERROR' && exit 1
fi
if ! git checkout -f main; then
echo 'VITO_SSH_ERROR' && exit 1
fi
EOD;
$this->assertStringContainsString($expected, $command->content());
}
}