From d8c8a19d355fdd67a984fc696269521919bb58b5 Mon Sep 17 00:00:00 2001 From: Jesse Hallam Date: Thu, 9 Aug 2018 05:26:38 -0400 Subject: avoid t.Fatal() in tests (#9189) I've been burned a few times by tests that simply fatal, requiring me to run another build to learn more about what the mismatch was. Avoid this. This is part of a long running goal of mine to make testing "better". --- model/preference_test.go | 52 +++++++++++++++--------------------------------- 1 file changed, 16 insertions(+), 36 deletions(-) (limited to 'model/preference_test.go') diff --git a/model/preference_test.go b/model/preference_test.go index c56d46e2c..d4035125a 100644 --- a/model/preference_test.go +++ b/model/preference_test.go @@ -7,6 +7,8 @@ import ( "encoding/json" "strings" "testing" + + "github.com/stretchr/testify/require" ) func TestPreferenceIsValid(t *testing.T) { @@ -16,54 +18,34 @@ func TestPreferenceIsValid(t *testing.T) { Name: NewId(), } - if err := preference.IsValid(); err == nil { - t.Fatal() - } + require.NotNil(t, preference.IsValid()) preference.UserId = NewId() - if err := preference.IsValid(); err != nil { - t.Fatal(err) - } + require.Nil(t, preference.IsValid()) preference.Category = strings.Repeat("01234567890", 20) - if err := preference.IsValid(); err == nil { - t.Fatal() - } + require.NotNil(t, preference.IsValid()) preference.Category = PREFERENCE_CATEGORY_DIRECT_CHANNEL_SHOW - if err := preference.IsValid(); err != nil { - t.Fatal(err) - } + require.Nil(t, preference.IsValid()) preference.Name = strings.Repeat("01234567890", 20) - if err := preference.IsValid(); err == nil { - t.Fatal() - } + require.NotNil(t, preference.IsValid()) preference.Name = NewId() - if err := preference.IsValid(); err != nil { - t.Fatal(err) - } + require.Nil(t, preference.IsValid()) preference.Value = strings.Repeat("01234567890", 201) - if err := preference.IsValid(); err == nil { - t.Fatal() - } + require.NotNil(t, preference.IsValid()) preference.Value = "1234garbage" - if err := preference.IsValid(); err != nil { - t.Fatal(err) - } + require.Nil(t, preference.IsValid()) preference.Category = PREFERENCE_CATEGORY_THEME - if err := preference.IsValid(); err == nil { - t.Fatal() - } + require.NotNil(t, preference.IsValid()) preference.Value = `{"color": "#ff0000", "color2": "#faf"}` - if err := preference.IsValid(); err != nil { - t.Fatal(err) - } + require.Nil(t, preference.IsValid()) } func TestPreferencePreUpdate(t *testing.T) { @@ -79,11 +61,9 @@ func TestPreferencePreUpdate(t *testing.T) { t.Fatal(err) } - if props["color"] != "#ff0000" || props["color2"] != "#faf" || props["codeTheme"] != "github" { - t.Fatal("shouldn't have changed valid props") - } + require.Equal(t, "#ff0000", props["color"], "shouldn't have changed valid props") + require.Equal(t, "#faf", props["color2"], "shouldn't have changed valid props") + require.Equal(t, "github", props["codeTheme"], "shouldn't have changed valid props") - if props["invalid"] == "invalid" { - t.Fatal("should have changed invalid prop") - } + require.NotEqual(t, "invalid", props["invalid"], "should have changed invalid prop") } -- cgit v1.2.3-1-g7c22