feat: overhaul project workspace navigation
linter / quality (pull_request) Successful in 1m28s
tests / ci (8.4) (pull_request) Successful in 1m47s

This commit is contained in:
2026-07-18 17:52:25 +02:00
parent a46695c2eb
commit ff796aa10a
45 changed files with 1790 additions and 995 deletions
@@ -50,16 +50,20 @@ class ProjectRepositorySettingsControllerTest extends TestCase
$this->syncProjectPermissions($project, $user, ['edit']);
$this->actingAs($user)
->get(route('projects.settings.repositories', $project))
->get(route('projects.settings.index', [
'project' => $project,
'section' => 'repositories',
]))
->assertOk()
->assertInertia(fn (Assert $page) => $page
->component('projects/settings/Repositories')
->component('projects/Settings')
->where('activeSection', 'repositories')
->where('project.id', $project->id)
->where('repositoryConnections.0.repository_full_name', 'core-team/kanbangit')
->where('repositoryConnections.0.has_personal_access', false)
->where('availableRepositorySources', [])
->where('templateState.templateName', 'Connected Template')
->where('templateState.inheritedAreas.0.value', DuplicateProjectConfiguration::COPY_REPOSITORY_CONNECTIONS),
->where('sectionData.repositoryConnections.0.repository_full_name', 'core-team/kanbangit')
->where('sectionData.repositoryConnections.0.has_personal_access', false)
->where('sectionData.availableRepositorySources', [])
->where('sectionData.templateState.templateName', 'Connected Template')
->where('sectionData.templateState.inheritedAreas.0.value', DuplicateProjectConfiguration::COPY_REPOSITORY_CONNECTIONS),
);
}
@@ -111,7 +115,7 @@ class ProjectRepositorySettingsControllerTest extends TestCase
'provider_repository_id' => '501',
'user_git_connection_id' => $userGitConnection->id,
])
->assertRedirect(route('projects.settings.repositories', $project))
->assertRedirect(route('projects.settings.index', ['project' => $project, 'section' => 'repositories']))
->assertSessionHas('status', 'core-team/kanbangit was linked to '.$project->name.'.');
$this->assertDatabaseHas('repository_connections', [
@@ -192,7 +196,7 @@ class ProjectRepositorySettingsControllerTest extends TestCase
'provider_repository_id' => '902',
'user_git_connection_id' => $userGitConnection->id,
])
->assertRedirect(route('projects.settings.repositories', $project))
->assertRedirect(route('projects.settings.index', ['project' => $project, 'section' => 'repositories']))
->assertSessionHas('status', 'infra/platform connection was updated.');
$this->assertDatabaseHas('repository_connections', [
@@ -220,7 +224,7 @@ class ProjectRepositorySettingsControllerTest extends TestCase
$this->actingAs($user)
->delete(route('projects.settings.repositories.destroy', [$project, $repositoryConnection]))
->assertRedirect(route('projects.settings.repositories', $project))
->assertRedirect(route('projects.settings.index', ['project' => $project, 'section' => 'repositories']))
->assertSessionHas('status', 'core-team/kanbangit was removed from the project.');
$this->assertDatabaseMissing('repository_connections', [