func TestNewBoolean(t *testing.T) { t.Parallel() value := forge.NewBoolean(true) if value.GetType() != forge.BOOLEAN { t.Error("value is not a BOOLEAN") return } rawVal := value.GetValue() switch rawVal.(type) { case bool: // this is what we want to happen default: t.Error("expected value.GetValue() to be a bool") return } if rawVal.(bool) != true { t.Error("expected value.GetValue() to be equal to 'true'") } }
func TestAsBoolean(t *testing.T) { t.Parallel() // Boolean true value := forge.NewBoolean(true) val, err := value.AsBoolean() if err != nil { t.Error(err) return } if val != true { t.Error("expected value to be 'true'") return } // Boolean false err = value.UpdateValue(false) if err != nil { t.Error(err) return } val, err = value.AsBoolean() if err != nil { t.Error(err) return } if val != false { t.Error("expected value to be 'false'") return } // Int true err = value.UpdateValue(1) if err != nil { t.Error(err) return } val, err = value.AsBoolean() if err != nil { t.Error(err) return } if val != true { t.Error("expected value to be 'true'") return } // Int false err = value.UpdateValue(0) if err != nil { t.Error(err) return } val, err = value.AsBoolean() if err != nil { t.Error(err) return } if val != false { t.Error("expected value to be 'false'") return } // Float true err = value.UpdateValue(float64(1)) if err != nil { t.Error(err) return } val, err = value.AsBoolean() if err != nil { t.Error(err) return } if val != true { t.Error("expected value to be 'true'") return } // Float false err = value.UpdateValue(float64(0)) if err != nil { t.Error(err) return } val, err = value.AsBoolean() if err != nil { t.Error(err) return } if val != false { t.Error("expected value to be 'false'") return } // Null true err = value.UpdateValue(nil) if err != nil { t.Error(err) return } val, err = value.AsBoolean() if err != nil { t.Error(err) return } if val != false { t.Error("expected value to be 'false'") return } // String true err = value.UpdateValue("anything") if err != nil { t.Error(err) return } val, err = value.AsBoolean() if err != nil { t.Error(err) return } if val != true { t.Error("expected value to be 'true'") return } // String false err = value.UpdateValue("") if err != nil { t.Error(err) return } val, err = value.AsBoolean() if err != nil { t.Error(err) return } if val != false { t.Error("expected value to be 'false'") return } }