actingAs($this->user); $this->post(route('servers.firewall.store', $this->server), [ 'type' => 'allow', 'protocol' => 'tcp', 'port' => '1234', 'source' => '0.0.0.0', 'mask' => '0', ])->assertSessionDoesntHaveErrors(); $this->assertDatabaseHas('firewall_rules', [ 'port' => '1234', 'status' => FirewallRuleStatus::READY, ]); } public function test_see_firewall_rules(): void { $this->actingAs($this->user); $rule = FirewallRule::factory()->create([ 'server_id' => $this->server->id, ]); $this->get(route('servers.firewall', $this->server)) ->assertSuccessful() ->assertSee($rule->source) ->assertSee($rule->port); } public function test_delete_firewall_rule(): void { SSH::fake(); $this->actingAs($this->user); $rule = FirewallRule::factory()->create([ 'server_id' => $this->server->id, ]); $this->delete(route('servers.firewall.destroy', [ 'server' => $this->server, 'firewallRule' => $rule, ]))->assertSessionDoesntHaveErrors(); $this->assertDatabaseMissing('firewall_rules', [ 'id' => $rule->id, ]); } }