yq/yaml_test.go

42 lines
670 B
Go
Raw Normal View History

2015-09-28 01:39:16 +00:00
package main
import (
2015-09-28 02:00:38 +00:00
"fmt"
"gopkg.in/yaml.v2"
"os"
"testing"
2015-09-28 01:39:16 +00:00
)
2015-09-28 02:00:38 +00:00
var raw_data = `
2015-09-28 01:39:16 +00:00
a: Easy!
b:
c: 2
d: [3, 4]
`
var parsed_data map[interface{}]interface{}
func TestMain(m *testing.M) {
2015-09-28 02:00:38 +00:00
err := yaml.Unmarshal([]byte(raw_data), &parsed_data)
if err != nil {
fmt.Println("Error parsing yaml: %v", err)
os.Exit(1)
}
2015-09-28 01:39:16 +00:00
2015-09-28 02:00:38 +00:00
os.Exit(m.Run())
2015-09-28 01:39:16 +00:00
}
func TestRead_map_simple(t *testing.T) {
2015-09-28 02:00:38 +00:00
result := read_map(parsed_data, "b", []string{"c"})
if result != 2 {
t.Error("Excpted 2 but got ", result)
}
2015-09-28 01:39:16 +00:00
}
func TestRead_map_array(t *testing.T) {
2015-09-28 02:00:38 +00:00
result := read_map(parsed_data, "b", []string{"d", "1"})
if result != 4 {
t.Error("Excpted 4 but got ", result)
}
2015-09-28 01:39:16 +00:00
}