From 04d8a17dc7baa2e44f8a7953416d16e2b05647e6 Mon Sep 17 00:00:00 2001 From: Virgil Date: Wed, 1 Apr 2026 06:54:39 +0000 Subject: [PATCH] fix(setup): prefer node project detection over php Co-Authored-By: Virgil --- cmd/setup/cmd_repo.go | 6 +++--- cmd/setup/cmd_repo_test.go | 8 ++++++++ 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/cmd/setup/cmd_repo.go b/cmd/setup/cmd_repo.go index b50ba06..f4b5a35 100644 --- a/cmd/setup/cmd_repo.go +++ b/cmd/setup/cmd_repo.go @@ -99,12 +99,12 @@ func detectProjectType(path string) string { if coreio.Local.IsFile(filepath.Join(path, "go.mod")) { return "go" } - if coreio.Local.IsFile(filepath.Join(path, "composer.json")) { - return "php" - } if coreio.Local.IsFile(filepath.Join(path, "package.json")) { return "node" } + if coreio.Local.IsFile(filepath.Join(path, "composer.json")) { + return "php" + } return "unknown" } diff --git a/cmd/setup/cmd_repo_test.go b/cmd/setup/cmd_repo_test.go index 8b971a6..ab2a493 100644 --- a/cmd/setup/cmd_repo_test.go +++ b/cmd/setup/cmd_repo_test.go @@ -20,3 +20,11 @@ func TestRunRepoSetup_CreatesCoreConfigs(t *testing.T) { require.NoErrorf(t, err, "expected %s to exist", path) } } + +func TestDetectProjectType_PrefersPackageOverComposer(t *testing.T) { + dir := t.TempDir() + require.NoError(t, os.WriteFile(filepath.Join(dir, "package.json"), []byte("{}\n"), 0o644)) + require.NoError(t, os.WriteFile(filepath.Join(dir, "composer.json"), []byte("{}\n"), 0o644)) + + require.Equal(t, "node", detectProjectType(dir)) +}