From ed6dd5ade6e7303ef2bfdcbf9b2beb05deafb9b5 Mon Sep 17 00:00:00 2001 From: txgruppi Date: Wed, 19 Nov 2014 18:08:49 +0000 Subject: [PATCH] Updated to return bool false only for zero --- cast_test.go | 3 ++- caste.go | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/cast_test.go b/cast_test.go index 56623de..2b3761b 100644 --- a/cast_test.go +++ b/cast_test.go @@ -53,7 +53,7 @@ func TestToBool(t *testing.T) { assert.Equal(t, ToBool("F"), false) assert.Equal(t, ToBool(false), false) assert.Equal(t, ToBool("foo"), false) - + assert.Equal(t, ToBool("true"), true) assert.Equal(t, ToBool("TRUE"), true) assert.Equal(t, ToBool("True"), true) @@ -61,4 +61,5 @@ func TestToBool(t *testing.T) { assert.Equal(t, ToBool("T"), true) assert.Equal(t, ToBool(1), true) assert.Equal(t, ToBool(true), true) + assert.Equal(t, ToBool(-1), true) } diff --git a/caste.go b/caste.go index d8b1aa9..4cec35f 100644 --- a/caste.go +++ b/caste.go @@ -41,7 +41,7 @@ func ToBoolE(i interface{}) (bool, error) { case nil: return false, nil case int: - if i.(int) > 0 { + if i.(int) != 0 { return true, nil } return false, nil