load_test.go 666 B

12345678910111213141516171819202122232425262728293031323334353637
  1. package tarexport
  2. import (
  3. "testing"
  4. "gotest.tools/v3/assert"
  5. is "gotest.tools/v3/assert/cmp"
  6. )
  7. func TestValidateManifest(t *testing.T) {
  8. cases := map[string]struct {
  9. manifest []manifestItem
  10. valid bool
  11. errContains string
  12. }{
  13. "nil": {
  14. manifest: nil,
  15. valid: false,
  16. errContains: "manifest cannot be null",
  17. },
  18. "non-nil": {
  19. manifest: []manifestItem{},
  20. valid: true,
  21. },
  22. }
  23. for name, tc := range cases {
  24. t.Run(name, func(t *testing.T) {
  25. err := validateManifest(tc.manifest)
  26. if tc.valid {
  27. assert.Check(t, is.Nil(err))
  28. } else {
  29. assert.Check(t, is.ErrorContains(err, tc.errContains))
  30. }
  31. })
  32. }
  33. }