account_billing_rate_multiplier_test.go 704 B

123456789101112131415161718192021222324252627
  1. package service
  2. import (
  3. "encoding/json"
  4. "testing"
  5. "github.com/stretchr/testify/require"
  6. )
  7. func TestAccount_BillingRateMultiplier_DefaultsToOneWhenNil(t *testing.T) {
  8. var a Account
  9. require.NoError(t, json.Unmarshal([]byte(`{"id":1,"name":"acc","status":"active"}`), &a))
  10. require.Nil(t, a.RateMultiplier)
  11. require.Equal(t, 1.0, a.BillingRateMultiplier())
  12. }
  13. func TestAccount_BillingRateMultiplier_AllowsZero(t *testing.T) {
  14. v := 0.0
  15. a := Account{RateMultiplier: &v}
  16. require.Equal(t, 0.0, a.BillingRateMultiplier())
  17. }
  18. func TestAccount_BillingRateMultiplier_NegativeFallsBackToOne(t *testing.T) {
  19. v := -1.0
  20. a := Account{RateMultiplier: &v}
  21. require.Equal(t, 1.0, a.BillingRateMultiplier())
  22. }