package daemon import ( "reflect" "testing" ) func TestPatternsFromEnv_DefaultsWhenUnset(t *testing.T) { t.Setenv("MULTICA_GC_ARTIFACT_PATTERNS", "") defaults := []string{"node_modules", ".next", ".turbo"} got := patternsFromEnv("MULTICA_GC_ARTIFACT_PATTERNS", defaults) if !reflect.DeepEqual(got, defaults) { t.Fatalf("expected defaults %v, got %v", defaults, got) } // Ensure callers get a copy, not a shared backing array. got[0] = "mutated" if defaults[0] == "mutated" { t.Fatal("patternsFromEnv must not return a slice aliased with defaults") } } func TestPatternsFromEnv_DropsSeparatorBearingEntries(t *testing.T) { t.Setenv("MULTICA_GC_ARTIFACT_PATTERNS", "node_modules, .next ,foo/bar, ../etc, ,target") got := patternsFromEnv("MULTICA_GC_ARTIFACT_PATTERNS", nil) want := []string{"node_modules", ".next", "target"} if !reflect.DeepEqual(got, want) { t.Fatalf("expected %v, got %v", want, got) } }