From 51f77754660ddcd29f61be293a8e405d8cd3ba18 Mon Sep 17 00:00:00 2001 From: Frédéric Guillot Date: Sat, 25 Nov 2017 19:06:02 -0800 Subject: Add unit tests for models --- model/entry_test.go | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 model/entry_test.go (limited to 'model/entry_test.go') diff --git a/model/entry_test.go b/model/entry_test.go new file mode 100644 index 0000000..3f2e196 --- /dev/null +++ b/model/entry_test.go @@ -0,0 +1,57 @@ +// Copyright 2017 Frédéric Guillot. All rights reserved. +// Use of this source code is governed by the Apache 2.0 +// license that can be found in the LICENSE file. + +package model + +import "testing" + +func TestValidateEntryStatus(t *testing.T) { + for _, status := range []string{EntryStatusRead, EntryStatusUnread, EntryStatusRemoved} { + if err := ValidateEntryStatus(status); err != nil { + t.Error(`A valid status should not generate any error`) + } + } + + if err := ValidateEntryStatus("invalid"); err == nil { + t.Error(`An invalid status should generate a error`) + } +} + +func TestValidateEntryOrder(t *testing.T) { + for _, status := range []string{"id", "status", "published_at", "category_title", "category_id"} { + if err := ValidateEntryOrder(status); err != nil { + t.Error(`A valid order should not generate any error`) + } + } + + if err := ValidateEntryOrder("invalid"); err == nil { + t.Error(`An invalid order should generate a error`) + } +} + +func TestValidateEntryDirection(t *testing.T) { + for _, status := range []string{"asc", "desc"} { + if err := ValidateDirection(status); err != nil { + t.Error(`A valid direction should not generate any error`) + } + } + + if err := ValidateDirection("invalid"); err == nil { + t.Error(`An invalid direction should generate a error`) + } +} + +func TestGetOppositeDirection(t *testing.T) { + if GetOppositeDirection("asc") != "desc" { + t.Errorf(`The opposite direction of "asc" should be "desc"`) + } + + if GetOppositeDirection("desc") != "asc" { + t.Errorf(`The opposite direction of "desc" should be "asc"`) + } + + if GetOppositeDirection("invalid") != "asc" { + t.Errorf(`An invalid direction should return "asc"`) + } +} -- cgit v1.2.3