mirror of
https://github.com/vitodeploy/vito.git
synced 2025-04-22 11:12:20 +00:00
62 lines
1.6 KiB
PHP
62 lines
1.6 KiB
PHP
<?php
|
|
|
|
namespace Tests\Feature\SSHCommands\Database;
|
|
|
|
use App\SSHCommands\Database\InstallMysqlCommand;
|
|
use Tests\TestCase;
|
|
|
|
class InstallMysqlCommandTest extends TestCase
|
|
{
|
|
public function test_generate_command_mysql8()
|
|
{
|
|
$command = new InstallMysqlCommand('8.0');
|
|
|
|
$expected = <<<'EOD'
|
|
wget -c https://dev.mysql.com/get/mysql-apt-config_0.8.22-1_all.deb
|
|
|
|
sudo DEBIAN_FRONTEND=noninteractive dpkg -i mysql-apt-config_0.8.22-1_all.deb
|
|
|
|
sudo DEBIAN_FRONTEND=noninteractive apt update
|
|
|
|
sudo DEBIAN_FRONTEND=noninteractive apt install mysql-server -y
|
|
|
|
sudo service mysql enable
|
|
|
|
sudo service mysql start
|
|
|
|
if ! sudo mysql -e "ALTER USER 'root'@'localhost' IDENTIFIED WITH auth_socket;"; then
|
|
echo 'VITO_SSH_ERROR' && exit 1
|
|
fi
|
|
|
|
if ! sudo mysql -e "FLUSH PRIVILEGES"; then
|
|
echo 'VITO_SSH_ERROR' && exit 1
|
|
fi
|
|
EOD;
|
|
|
|
$this->assertStringContainsString($expected, $command->content());
|
|
}
|
|
|
|
public function test_generate_command_mysql5()
|
|
{
|
|
$command = new InstallMysqlCommand('5.7');
|
|
|
|
$expected = <<<'EOD'
|
|
sudo DEBIAN_FRONTEND=noninteractive apt install mysql-server -y
|
|
|
|
sudo service mysql enable
|
|
|
|
sudo service mysql start
|
|
|
|
if ! sudo mysql -e "ALTER USER 'root'@'localhost' IDENTIFIED WITH auth_socket;"; then
|
|
echo 'VITO_SSH_ERROR' && exit 1
|
|
fi
|
|
|
|
if ! sudo mysql -e "FLUSH PRIVILEGES"; then
|
|
echo 'VITO_SSH_ERROR' && exit 1
|
|
fi
|
|
EOD;
|
|
|
|
$this->assertStringContainsString($expected, $command->content());
|
|
}
|
|
}
|