<?php namespace Tests\Feature\SSHCommands\Firewall; use App\SSHCommands\Firewall\InstallUfwCommand; use Tests\TestCase; class InstallUfwCommandTest extends TestCase { public function test_generate_command() { $command = new InstallUfwCommand(); $expected = <<<'EOD' if ! sudo ufw default deny incoming; then echo 'VITO_SSH_ERROR' && exit 1 fi if ! sudo ufw default allow outgoing; then echo 'VITO_SSH_ERROR' && exit 1 fi if ! sudo ufw allow from 0.0.0.0/0 to any proto tcp port 22; then echo 'VITO_SSH_ERROR' && exit 1 fi if ! sudo ufw allow from 0.0.0.0/0 to any proto tcp port 80; then echo 'VITO_SSH_ERROR' && exit 1 fi if ! sudo ufw allow from 0.0.0.0/0 to any proto tcp port 443; then echo 'VITO_SSH_ERROR' && exit 1 fi if ! sudo ufw --force enable; then echo 'VITO_SSH_ERROR' && exit 1 fi if ! sudo ufw reload; then echo 'VITO_SSH_ERROR' && exit 1 fi EOD; $this->assertStringContainsString($expected, $command->content()); } }