config_test.go 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. package config
  2. import (
  3. "testing"
  4. )
  5. // TestModify 测试动态修改配置文件,比较值是否修改,修改后是否有Modify属性
  6. func TestModify(t *testing.T) {
  7. t.Run(t.Name(), func(t *testing.T) {
  8. var defaultValue struct{
  9. Subscribe
  10. }
  11. defaultValue.SubAudio = false
  12. var conf Config
  13. conf.Parse(&defaultValue)
  14. conf.ParseModifyFile(map[string]any{
  15. "subscribe": map[string]any{
  16. "subaudio": false,
  17. },
  18. })
  19. if conf.Modify != nil {
  20. t.Fail()
  21. }
  22. conf.ParseModifyFile(map[string]any{
  23. "subscribe": map[string]any{
  24. "subaudio": true,
  25. },
  26. })
  27. if conf.Modify == nil {
  28. t.Fail()
  29. }
  30. })
  31. }
  32. // TestGlobal 测试全局配置
  33. func TestGlobal(t *testing.T) {
  34. t.Run(t.Name(), func(t *testing.T) {
  35. var defaultValue struct{
  36. Publish
  37. }
  38. var globalValue struct {
  39. Publish
  40. }
  41. globalValue.Publish.KickExist = true
  42. var conf Config
  43. var globalConf Config
  44. globalConf.Parse(&globalValue)
  45. conf.Parse(&defaultValue)
  46. conf.ParseGlobal(&globalConf)
  47. if defaultValue.Publish.KickExist != true {
  48. t.Fail()
  49. }
  50. })
  51. }