github.com/ngocphuongnb/tetua@v0.0.7-alpha/app/config/setting_test.go (about)

     1  package config
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/stretchr/testify/assert"
     7  )
     8  
     9  func TestSettings(t *testing.T) {
    10  	var newSettings = []*SettingItem{
    11  		{"app_name", "App Testing", "input"},
    12  		{"test_key", "Test value", "input"},
    13  	}
    14  	var overrideSettings = []*SettingItem{
    15  		{"app_name", "App Testing", "input"},
    16  		{"test_key", "Test value 2", "input"},
    17  	}
    18  
    19  	assert.Equal(t, "Tetua", Setting("app_desc"))
    20  
    21  	Settings(defaultSettings)
    22  	assert.Equal(t, "Tetua", Setting("app_name"))
    23  
    24  	Settings(newSettings)
    25  	assert.Equal(t, "App Testing", Setting("app_name"))
    26  	assert.Equal(t, "Test value", Setting("test_key"))
    27  
    28  	Settings(newSettings, overrideSettings)
    29  	assert.Equal(t, "Test value 2", Setting("test_key"))
    30  	assert.Equal(t, "Tetua", Setting("app_desc"))
    31  	assert.Equal(t, "", Setting("unknown"))
    32  	assert.Equal(t, "default", Setting("unknown", "default"))
    33  	assert.Equal(t, settings, AllSettings())
    34  }