Allow setting nil to pgtype.Bool

pull/424/head
Tarik Demirci 2018-05-17 12:20:11 +02:00
parent f42b0f65fc
commit 1149b0f015
No known key found for this signature in database
GPG Key ID: AA9AEBB7B79A04D6
2 changed files with 6 additions and 0 deletions

View File

@ -13,6 +13,11 @@ type Bool struct {
}
func (dst *Bool) Set(src interface{}) error {
if src == nil {
*dst = Bool{Status: Null}
return nil
}
switch value := src.(type) {
case bool:
*dst = Bool{Bool: value, Status: Present}

View File

@ -29,6 +29,7 @@ func TestBoolSet(t *testing.T) {
{source: "f", result: pgtype.Bool{Bool: false, Status: pgtype.Present}},
{source: _bool(true), result: pgtype.Bool{Bool: true, Status: pgtype.Present}},
{source: _bool(false), result: pgtype.Bool{Bool: false, Status: pgtype.Present}},
{source: nil, result: pgtype.Bool{Status: pgtype.Null}},
}
for i, tt := range successfulTests {