config_test.go 830 字节
Newer Older
1
package config
J
Jingwen Owen Ou 已提交
2 3 4

import (
	"github.com/bmizerany/assert"
5
	"os"
J
Jingwen Owen Ou 已提交
6
	"path/filepath"
J
Jingwen Owen Ou 已提交
7 8 9
	"testing"
)

10
func TestSave(t *testing.T) {
11 12
	config := Config{"jingweno", "123"}
	file := "./test_support/test"
J
Jingwen Owen Ou 已提交
13 14
	defer os.RemoveAll(filepath.Dir(file))

15
	err := saveTo(file, config)
J
Jingwen Owen Ou 已提交
16
	assert.Equal(t, nil, err)
17

J
Jingwen Owen Ou 已提交
18
	configs, err := loadFrom(file)
19
	assert.Equal(t, nil, err)
J
Jingwen Owen Ou 已提交
20 21 22
	assert.Equal(t, 1, len(configs))
	assert.Equal(t, "jingweno", configs[0].User)
	assert.Equal(t, "123", configs[0].Token)
23

J
Jingwen Owen Ou 已提交
24 25 26
	newConfig := Config{"foo", "456"}
	err = saveTo(file, newConfig)
	assert.Equal(t, nil, err)
27

J
Jingwen Owen Ou 已提交
28 29 30 31 32 33 34
	configs, err = loadFrom(file)
	assert.Equal(t, nil, err)
	assert.Equal(t, 2, len(configs))
	assert.Equal(t, "jingweno", configs[0].User)
	assert.Equal(t, "123", configs[0].Token)
	assert.Equal(t, "foo", configs[1].User)
	assert.Equal(t, "456", configs[1].Token)
35
}