Ctrl K
ComunidadGuías…

frontend_static_asset_guard_test.go

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
package main

import (
	"os"
	"strings"
	"testing"
)

// These are configuration drift guard tests: they assert repository hygiene
// markers, not runtime behavior.
func TestRepositoryDoesNotVendorManagementPanelBuildOutput(t *testing.T) {
	for _, path := range []string{
		"assets",
		"manage.html",
		"management.html",
		"panel-meta.json",
	} {
		if _, err := os.Stat(path); err == nil {
			t.Fatalf("backend repository must not vendor frontend panel build output: %s", path)
		} else if !os.IsNotExist(err) {
			t.Fatalf("stat %s: %v", path, err)
		}
	}
}

func TestGeneratedPanelAssetPathsAreIgnoredByGitAndDocker(t *testing.T) {
	for _, file := range []string{".gitignore", ".dockerignore"} {
		data, err := os.ReadFile(file)
		if err != nil {
			t.Fatalf("read %s: %v", file, err)
		}
		content := string(data)
		for _, want := range []string{
			"assets/",
			"manage.html",
			"management.html",
			"panel-meta.json",
			"dist/",
			"panel-dist.zip",
		} {
			if !strings.Contains(content, want) {
				t.Fatalf("%s missing generated panel asset ignore pattern %q", file, want)
			}
		}
	}
}