github.com/insolar/vanilla@v0.0.0-20201023172447-248fdf805322/throw/severe_test.go (about) 1 // Copyright 2020 Insolar Network Ltd. 2 // All rights reserved. 3 // This material is licensed under the Insolar License version 1.0, 4 // available at https://github.com/insolar/assured-ledger/blob/master/LICENSE.md. 5 6 package throw 7 8 import ( 9 "testing" 10 11 "github.com/stretchr/testify/require" 12 ) 13 14 func TestSeverityOf(t *testing.T) { 15 require.Equal(t, NormalSeverity, SeverityOf(New("test"))) 16 require.Equal(t, NormalSeverity, SeverityOf(Severe(NormalSeverity, "test"))) 17 require.Equal(t, BlameSeverity, SeverityOf(Blame("test"))) 18 require.Equal(t, ViolationSeverity, SeverityOf(Violation("test"))) 19 require.Equal(t, FraudSeverity, SeverityOf(Fraud("test"))) 20 require.Equal(t, RemoteBreachSeverity, SeverityOf(RemoteBreach("test"))) 21 require.Equal(t, LocalBreachSeverity, SeverityOf(LocalBreach("test"))) 22 require.Equal(t, LocalBreachSeverity, SeverityOf(DeadCanary("test"))) 23 require.Equal(t, FatalSeverity, SeverityOf(Fatal("test"))) 24 } 25 26 func TestWithSeverity(t *testing.T) { 27 require.Equal(t, NormalSeverity, SeverityOf(New("test"))) 28 require.Equal(t, FraudSeverity, SeverityOf(WithSeverity(Blame("test"), FraudSeverity))) 29 require.Equal(t, NormalSeverity, SeverityOf(WithSeverity(Blame("test"), NormalSeverity))) 30 } 31 32 func TestWithDefaultSeverity(t *testing.T) { 33 require.Equal(t, BlameSeverity, SeverityOf(WithDefaultSeverity(Blame("test"), FraudSeverity))) 34 require.Equal(t, BlameSeverity, SeverityOf(WithDefaultSeverity(Blame("test"), NormalSeverity))) 35 } 36 37 func TestWithEscalatedSeverity(t *testing.T) { 38 require.Equal(t, FraudSeverity, SeverityOf(WithEscalatedSeverity(Blame("test"), FraudSeverity))) 39 require.Equal(t, BlameSeverity, SeverityOf(WithEscalatedSeverity(Blame("test"), NormalSeverity))) 40 } 41 42 func TestGetSeverity(t *testing.T) { 43 s, ok := GetSeverity(New("test")) 44 require.False(t, ok) 45 require.Equal(t, NormalSeverity, s) 46 47 s, ok = GetSeverity(Blame("test")) 48 require.True(t, ok) 49 require.Equal(t, BlameSeverity, s) 50 }