kubemodel_codecs_test.go 765 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. package kubemodel
  2. import (
  3. "testing"
  4. "time"
  5. "github.com/stretchr/testify/require"
  6. )
  7. func TestKubeModelSetCodecRoundTrip(t *testing.T) {
  8. start := time.Now().UTC().Truncate(time.Hour)
  9. end := start.Add(time.Hour)
  10. t.Run("empty KubeModelSet", func(t *testing.T) {
  11. kms := NewKubeModelSet(start, end)
  12. b, err := kms.MarshalBinary()
  13. require.NoError(t, err)
  14. act := new(KubeModelSet)
  15. err = act.UnmarshalBinary(b)
  16. require.NoError(t, err)
  17. KubeModelSetEquals(t, kms, act)
  18. })
  19. t.Run("full KubeModelSet", func(t *testing.T) {
  20. kms := NewMockKubeModelSet(start, end)
  21. b, err := kms.MarshalBinary()
  22. require.NoError(t, err)
  23. act := new(KubeModelSet)
  24. err = act.UnmarshalBinary(b)
  25. require.NoError(t, err)
  26. KubeModelSetEquals(t, kms, act)
  27. })
  28. }