diff options
| author | Carlos Martín Nieto <[email protected]> | 2014-04-01 12:43:28 +0200 |
|---|---|---|
| committer | Carlos Martín Nieto <[email protected]> | 2014-04-01 12:43:28 +0200 |
| commit | fa41ce8575cc277ef2b4790c34657a50fa181bff (patch) | |
| tree | 48c5387770a3d4bcb6b4e43125d37271a9d7b589 /settings/settings_test.go | |
| parent | 1b4962cafe384148c4aed89b76e7edaa12ed9291 (diff) | |
| parent | b2a2a279d96890c9578370ec4db50c1da31f18d7 (diff) | |
Merge pull request #73 from libgit2/cmn/settings
Add a settings package
Diffstat (limited to 'settings/settings_test.go')
| -rw-r--r-- | settings/settings_test.go | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/settings/settings_test.go b/settings/settings_test.go new file mode 100644 index 0000000..55b08c8 --- /dev/null +++ b/settings/settings_test.go @@ -0,0 +1,66 @@ +package settings + +import ( + "testing" + "runtime" + "github.com/libgit2/git2go" +) + +type pathPair struct { + Level git.ConfigLevel + Path string +} + +func TestSearchPath(t *testing.T) { + paths := []pathPair{ + pathPair{git.ConfigLevelSystem, "/tmp/system"}, + pathPair{git.ConfigLevelGlobal, "/tmp/global"}, + pathPair{git.ConfigLevelXDG, "/tmp/xdg"}, + } + + for _, pair := range paths { + err := SetSearchPath(pair.Level, pair.Path) + checkFatal(t, err) + + actual, err := SearchPath(pair.Level) + checkFatal(t, err) + + if pair.Path != actual { + t.Fatal("Search paths don't match") + } + } +} + +func TestMmapSizes(t *testing.T) { + size := 42 * 1024 + + err := SetMwindowSize(size) + checkFatal(t, err) + + actual, err := MwindowSize() + if size != actual { + t.Fatal("Sizes don't match") + } + + err = SetMwindowMappedLimit(size) + checkFatal(t, err) + + actual, err = MwindowMappedLimit() + if size != actual { + t.Fatal("Sizes don't match") + } +} + +func checkFatal(t *testing.T, err error) { + if err == nil { + return + } + + // The failure happens at wherever we were called, not here + _, file, line, ok := runtime.Caller(1) + if !ok { + t.Fatal() + } + + t.Fatalf("Fail at %v:%v; %v", file, line, err) +} |
