Adding support for boolean params

This commit is contained in:
spf13 2014-01-28 23:24:59 -05:00
parent 1da3fd039a
commit 1882ffabc6
2 changed files with 8 additions and 0 deletions

View file

@ -412,6 +412,8 @@ func (page *Page) update(f interface{}) error {
default:
// If not one of the explicit values, store in Params
switch vv := v.(type) {
case bool:
page.Params[loki] = vv
case string:
page.Params[loki] = vv
case int64, int32, int16, int8, int:
@ -444,6 +446,8 @@ func (page *Page) GetParam(key string) interface{} {
}
switch v.(type) {
case bool:
return interfaceToBool(v)
case string:
return interfaceToString(v)
case int64, int32, int16, int8, int:

View file

@ -209,6 +209,7 @@ var PAGE_WITH_VARIOUS_FRONTMATTER_TYPES = `+++
a_string = "bar"
an_integer = 1
a_float = 1.3
a_bool = false
a_date = 1979-05-27T07:32:00Z
+++
Front Matter with various frontmatter types`
@ -458,6 +459,9 @@ func TestDifferentFrontMatterVarTypes(t *testing.T) {
if page.GetParam("a_float") != 1.3 {
t.Errorf("frontmatter not handling floats correctly should be %s, got: %s", 1.3, page.GetParam("a_float"))
}
if page.GetParam("a_bool") != false {
t.Errorf("frontmatter not handling bools correctly should be %s, got: %s", false, page.GetParam("a_bool"))
}
if page.GetParam("a_date") != dateval {
t.Errorf("frontmatter not handling dates correctly should be %s, got: %s", dateval, page.GetParam("a_date"))
}