bitbucket.org/Aishee/synsec@v0.0.0-20210414005726-236fc01a153d/pkg/csconfig/config_test.go (about)

     1  package csconfig
     2  
     3  import (
     4  	"fmt"
     5  	"log"
     6  	"strings"
     7  	"testing"
     8  
     9  	"github.com/stretchr/testify/assert"
    10  )
    11  
    12  func TestNormalLoad(t *testing.T) {
    13  
    14  	_, err := NewConfig("./tests/config.yaml", false, false)
    15  	if err != nil {
    16  		t.Fatalf("unexpected error %s", err)
    17  	}
    18  
    19  	_, err = NewConfig("./tests/xxx.yaml", false, false)
    20  	if fmt.Sprintf("%s", err) != "failed to read config file: open ./tests/xxx.yaml: no such file or directory" {
    21  		t.Fatalf("unexpected error %s", err)
    22  	}
    23  
    24  	_, err = NewConfig("./tests/simulation.yaml", false, false)
    25  	if !strings.HasPrefix(fmt.Sprintf("%s", err), "yaml: unmarshal errors:") {
    26  		t.Fatalf("unexpected error %s", err)
    27  	}
    28  
    29  }
    30  
    31  func TestNewSynSecConfig(t *testing.T) {
    32  	tests := []struct {
    33  		name           string
    34  		expectedResult *Config
    35  		err            string
    36  	}{
    37  		{
    38  			name:           "new configuration: basic",
    39  			expectedResult: &Config{},
    40  			err:            "",
    41  		},
    42  	}
    43  	for _, test := range tests {
    44  		result := &Config{}
    45  		isOk := assert.Equal(t, test.expectedResult, result)
    46  		if !isOk {
    47  			t.Fatalf("TEST '%s': NOK", test.name)
    48  		} else {
    49  			fmt.Printf("TEST '%s': OK\n", test.name)
    50  		}
    51  	}
    52  
    53  }
    54  
    55  func TestDefaultConfig(t *testing.T) {
    56  	x := NewDefaultConfig()
    57  	if err := x.Dump(); err != nil {
    58  		log.Fatal(err)
    59  	}
    60  }