options_test.go 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. // Copyright 2020-2021 InfluxData, Inc. All rights reserved.
  2. // Use of this source code is governed by MIT
  3. // license that can be found in the LICENSE file.
  4. package write_test
  5. import (
  6. "github.com/stretchr/testify/assert"
  7. "testing"
  8. "time"
  9. "github.com/influxdata/influxdb-client-go/v2/api/write"
  10. )
  11. func TestDefaultOptions(t *testing.T) {
  12. opts := write.DefaultOptions()
  13. assert.EqualValues(t, 5_000, opts.BatchSize())
  14. assert.EqualValues(t, false, opts.UseGZip())
  15. assert.EqualValues(t, 1_000, opts.FlushInterval())
  16. assert.EqualValues(t, time.Nanosecond, opts.Precision())
  17. assert.EqualValues(t, 50_000, opts.RetryBufferLimit())
  18. assert.EqualValues(t, 5_000, opts.RetryInterval())
  19. assert.EqualValues(t, 5, opts.MaxRetries())
  20. assert.EqualValues(t, 125_000, opts.MaxRetryInterval())
  21. assert.EqualValues(t, 180_000, opts.MaxRetryTime())
  22. assert.EqualValues(t, 2, opts.ExponentialBase())
  23. assert.EqualValues(t, "", opts.Consistency())
  24. assert.Len(t, opts.DefaultTags(), 0)
  25. }
  26. func TestSettingsOptions(t *testing.T) {
  27. opts := write.DefaultOptions().
  28. SetBatchSize(5).
  29. SetUseGZip(true).
  30. SetFlushInterval(5_000).
  31. SetPrecision(time.Millisecond).
  32. SetRetryBufferLimit(5).
  33. SetRetryInterval(1_000).
  34. SetMaxRetries(7).
  35. SetMaxRetryInterval(150_000).
  36. SetExponentialBase(3).
  37. SetMaxRetryTime(200_000).
  38. AddDefaultTag("a", "1").
  39. AddDefaultTag("b", "2").
  40. SetConsistency(write.ConsistencyOne)
  41. assert.EqualValues(t, 5, opts.BatchSize())
  42. assert.EqualValues(t, true, opts.UseGZip())
  43. assert.EqualValues(t, 5000, opts.FlushInterval())
  44. assert.EqualValues(t, time.Millisecond, opts.Precision())
  45. assert.EqualValues(t, 5, opts.RetryBufferLimit())
  46. assert.EqualValues(t, 1000, opts.RetryInterval())
  47. assert.EqualValues(t, 7, opts.MaxRetries())
  48. assert.EqualValues(t, 150_000, opts.MaxRetryInterval())
  49. assert.EqualValues(t, 200_000, opts.MaxRetryTime())
  50. assert.EqualValues(t, 3, opts.ExponentialBase())
  51. assert.EqualValues(t, "one", opts.Consistency())
  52. assert.Len(t, opts.DefaultTags(), 2)
  53. }