Example #1
0
func (t *TestSuite) TestErrCode_UnmarshalJSON(c *C) {
	var ec minfraud.ErrorCode
	var err error

	data := []byte(`""`)
	err = ec.UnmarshalJSON(data)
	c.Assert(err, IsNil)
	c.Check(ec, Equals, minfraud.ErrUnknown)

	data = []byte(`"IP_ADDRESS_INVALID"`)
	err = ec.UnmarshalJSON(data)
	c.Assert(err, IsNil)
	c.Check(ec, Equals, minfraud.ErrIPAddressInvalid)

	data = []byte(`"IP_ADDRESS_REQUIRED"`)
	err = ec.UnmarshalJSON(data)
	c.Assert(err, IsNil)
	c.Check(ec, Equals, minfraud.ErrIPAddressRequired)

	data = []byte(`"IP_ADDRESS_RESERVED"`)
	err = ec.UnmarshalJSON(data)
	c.Assert(err, IsNil)
	c.Check(ec, Equals, minfraud.ErrIPAddressReserved)

	data = []byte(`"JSON_INVALID"`)
	err = ec.UnmarshalJSON(data)
	c.Assert(err, IsNil)
	c.Check(ec, Equals, minfraud.ErrJSONInvalid)

	data = []byte(`"AUTHORIZATION_INVALID"`)
	err = ec.UnmarshalJSON(data)
	c.Assert(err, IsNil)
	c.Check(ec, Equals, minfraud.ErrAuthorizationInvalid)

	data = []byte(`"LICENSE_KEY_REQUIRED"`)
	err = ec.UnmarshalJSON(data)
	c.Assert(err, IsNil)
	c.Check(ec, Equals, minfraud.ErrLicenseKeyRequired)

	data = []byte(`"USER_ID_REQUIRED"`)
	err = ec.UnmarshalJSON(data)
	c.Assert(err, IsNil)
	c.Check(ec, Equals, minfraud.ErrUserIDRequired)

	data = []byte(`"INSUFFICIENT_FUNDS"`)
	err = ec.UnmarshalJSON(data)
	c.Assert(err, IsNil)
	c.Check(ec, Equals, minfraud.ErrInsufficientFunds)

	data = []byte(`"UNKNOWN_ERROR"`)
	err = ec.UnmarshalJSON(data)
	c.Assert(err, IsNil)
	c.Check(ec, Equals, minfraud.ErrUnknown)
}