From 76275010a84eee859c083c054a4845fa0201b211 Mon Sep 17 00:00:00 2001 From: Ivan Reshetnikov Date: Mon, 25 Mar 2024 16:09:55 +0500 Subject: [PATCH] test: check parsing of templates --- Makefile | 9 ++++++--- testutils/workingdir.go | 15 +++++++++++++++ views/pages/templates_test.go | 18 ++++++++++++++++++ 3 files changed, 39 insertions(+), 3 deletions(-) create mode 100644 testutils/workingdir.go create mode 100644 views/pages/templates_test.go diff --git a/Makefile b/Makefile index 0802ee3..3b92889 100644 --- a/Makefile +++ b/Makefile @@ -1,10 +1,13 @@ -all: fmt vet +all: fmt test fmt: gofmt -s -w . -vet: - go vet ./... +test: + go test ./... + +run: + go run . favicons: convert -background none assets/favicons/favicon.svg -resize 16x16 assets/favicons/favicon-16.png diff --git a/testutils/workingdir.go b/testutils/workingdir.go new file mode 100644 index 0000000..a71f9a7 --- /dev/null +++ b/testutils/workingdir.go @@ -0,0 +1,15 @@ +package testutils + +import ( + "os" + "path" + "runtime" +) + +// Change the current directory to the project directory. +// Useful for tests that work with files. +func ResetWorkingDir() error { + _, filename, _, _ := runtime.Caller(0) + dir := path.Join(path.Dir(filename), "..") + return os.Chdir(dir) +} diff --git a/views/pages/templates_test.go b/views/pages/templates_test.go new file mode 100644 index 0000000..c548e96 --- /dev/null +++ b/views/pages/templates_test.go @@ -0,0 +1,18 @@ +package pages + +import ( + "testing" + + "github.com/ordinary-dev/phoenix/testutils" +) + +// Check that all templates can be loaded. +func TestLoadTemplates(t *testing.T) { + if err := testutils.ResetWorkingDir(); err != nil { + t.Fatal(err) + } + + if err := LoadTemplates(); err != nil { + t.Fatal(err) + } +}