options_test.go 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. package mon
  2. import (
  3. "testing"
  4. "time"
  5. "github.com/stretchr/testify/assert"
  6. mopt "go.mongodb.org/mongo-driver/mongo/options"
  7. )
  8. func TestSetSlowThreshold(t *testing.T) {
  9. assert.Equal(t, defaultSlowThreshold, slowThreshold.Load())
  10. SetSlowThreshold(time.Second)
  11. assert.Equal(t, time.Second, slowThreshold.Load())
  12. }
  13. func Test_defaultTimeoutOption(t *testing.T) {
  14. opts := mopt.Client()
  15. defaultTimeoutOption()(opts)
  16. assert.Equal(t, defaultTimeout, *opts.Timeout)
  17. }
  18. func TestWithTimeout(t *testing.T) {
  19. opts := mopt.Client()
  20. WithTimeout(time.Second)(opts)
  21. assert.Equal(t, time.Second, *opts.Timeout)
  22. }
  23. func TestDisableLog(t *testing.T) {
  24. assert.True(t, logMon.True())
  25. assert.True(t, logSlowMon.True())
  26. defer func() {
  27. logMon.Set(true)
  28. logSlowMon.Set(true)
  29. }()
  30. DisableLog()
  31. assert.False(t, logMon.True())
  32. assert.False(t, logSlowMon.True())
  33. }
  34. func TestDisableInfoLog(t *testing.T) {
  35. assert.True(t, logMon.True())
  36. assert.True(t, logSlowMon.True())
  37. defer func() {
  38. logMon.Set(true)
  39. logSlowMon.Set(true)
  40. }()
  41. DisableInfoLog()
  42. assert.False(t, logMon.True())
  43. assert.True(t, logSlowMon.True())
  44. }