From 533681e0f83ec4f69b3b8e9f1982ed9f089285b4 Mon Sep 17 00:00:00 2001 From: Clemens Fries Date: Tue, 1 Nov 2016 17:11:58 +0100 Subject: Initial commit --- common/util_test.go | 79 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 common/util_test.go (limited to 'common/util_test.go') diff --git a/common/util_test.go b/common/util_test.go new file mode 100644 index 0000000..201cfe0 --- /dev/null +++ b/common/util_test.go @@ -0,0 +1,79 @@ +/* util_test.go: unit tests for utility functions + * + * Copyright (C) 2016 Clemens Fries + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +package common + +import ( + "github.com/stretchr/testify/assert" + "testing" +) + +func TestSplitMessage(t *testing.T) { + message := []string{ + "to: me@example.com", + "subject: foo", + "", + "Dear Me,", + "", + "have a nice day.", + } + + conf, body := SplitMessage(message) + + expectedConf := []string{ + "to: me@example.com", + "subject: foo", + } + + expectedBody := []string{ + "Dear Me,", + "", + "have a nice day.", + } + + assert.Equal(t, expectedConf, conf) + assert.Equal(t, expectedBody, body) +} + +func TestParseTime(t *testing.T) { + d1 := "2061-07-28" + d2 := "2061-07-28 12:23" + invalid1 := "2061/07/28" + invalid2 := "2061-07-28 12:23:00" + + r, err := ParseTime(d1) + assert.Nil(t, err) + + if r.Hour() != 0 || r.Minute() != 0 { + t.Errorf("expected Hour and Minute to be 0, but was %s", r) + } + + r, err = ParseTime(d2) + assert.Nil(t, err) + + if r.Hour() != 12 || r.Minute() != 23 { + t.Errorf("expected Hour and Minute to be 12:23, but was %s", r) + } + + // Expected to fail + _, err = ParseTime(invalid1) + assert.NotNil(t, err) + + // Expected to fail + _, err = ParseTime(invalid2) + assert.NotNil(t, err) +} -- cgit