mirror of
https://github.com/tiennm99/coolify.git
synced 2026-08-20 12:23:48 +00:00
Move V5 source, migrations, UI, scripts, and tests into documentation, then remove V5 routes, models, jobs, configuration, dependencies, and application hooks.
72 lines
2.1 KiB
Plaintext
72 lines
2.1 KiB
Plaintext
<?php
|
|
|
|
use App\Models\Team;
|
|
use App\Models\User;
|
|
use Illuminate\Support\Facades\Config;
|
|
|
|
beforeEach(function () {
|
|
resetV5DashboardTestState();
|
|
createSharedUserAndTeamTables();
|
|
|
|
Config::set('broadcasting.default', 'pusher');
|
|
Config::set('broadcasting.connections.pusher.key', 'test-key');
|
|
Config::set('broadcasting.connections.pusher.secret', 'test-secret');
|
|
Config::set('broadcasting.connections.pusher.app_id', 'test-app-id');
|
|
Config::set('broadcasting.connections.pusher.options', [
|
|
'host' => '127.0.0.1',
|
|
'port' => 6001,
|
|
'scheme' => 'http',
|
|
'useTLS' => false,
|
|
]);
|
|
});
|
|
|
|
it('authorizes team members on their private team channel', function () {
|
|
[$user, $team] = createV5UserWithTeam();
|
|
|
|
$this
|
|
->actingAs($user)
|
|
->postJson('/broadcasting/auth', [
|
|
'channel_name' => "private-team.{$team->id}",
|
|
'socket_id' => '1234.5678',
|
|
])
|
|
->assertSuccessful()
|
|
->assertJsonStructure(['auth']);
|
|
});
|
|
|
|
it('rejects users outside the team on the private team channel', function () {
|
|
[, $team] = createV5UserWithTeam();
|
|
|
|
$outsider = User::withoutEvents(fn () => User::query()->create([
|
|
'name' => 'Outsider',
|
|
'email' => 'outsider@example.com',
|
|
'email_verified_at' => now(),
|
|
'password' => 'password',
|
|
]));
|
|
$otherTeam = Team::withoutEvents(fn () => Team::query()->create([
|
|
'name' => 'Another Team',
|
|
'description' => null,
|
|
'personal_team' => false,
|
|
'show_boarding' => false,
|
|
]));
|
|
$outsider->teams()->attach($otherTeam, ['role' => 'owner']);
|
|
|
|
$this
|
|
->actingAs($outsider)
|
|
->postJson('/broadcasting/auth', [
|
|
'channel_name' => "private-team.{$team->id}",
|
|
'socket_id' => '1234.5678',
|
|
])
|
|
->assertForbidden();
|
|
});
|
|
|
|
it('rejects guests on the private team channel', function () {
|
|
[, $team] = createV5UserWithTeam();
|
|
|
|
$this
|
|
->postJson('/broadcasting/auth', [
|
|
'channel_name' => "private-team.{$team->id}",
|
|
'socket_id' => '1234.5678',
|
|
])
|
|
->assertForbidden();
|
|
});
|