compose_command_test.go 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. package tests
  2. import (
  3. "testing"
  4. "gotest.tools/v3/fs"
  5. "gotest.tools/v3/golden"
  6. "gotest.tools/v3/icmd"
  7. )
  8. const (
  9. composeFileName = "compose.yaml"
  10. )
  11. func TestSimpleConvert(t *testing.T) {
  12. cmd, cleanup := dockerCli.createTestCmd()
  13. defer cleanup()
  14. composeYAML := golden.Get(t, "input/simple-single-service.yaml")
  15. tmpDir := fs.NewDir(t, t.Name(),
  16. fs.WithFile(composeFileName, "", fs.WithBytes(composeYAML)),
  17. )
  18. defer tmpDir.Remove()
  19. cmd.Command = dockerCli.Command("ecs", "compose", "--file="+tmpDir.Join(composeFileName), "--project-name", t.Name(), "convert")
  20. result := icmd.RunCmd(cmd).Assert(t, icmd.Success).Combined()
  21. expected := "simple/simple-cloudformation-conversion.golden"
  22. golden.Assert(t, result, expected)
  23. }
  24. func TestSimpleWithOverrides(t *testing.T) {
  25. cmd, cleanup := dockerCli.createTestCmd()
  26. defer cleanup()
  27. composeYAML := golden.Get(t, "input/simple-single-service.yaml")
  28. overriddenComposeYAML := golden.Get(t, "input/simple-single-service-with-overrides.yaml")
  29. tmpDir := fs.NewDir(t, t.Name(),
  30. fs.WithFile(composeFileName, "", fs.WithBytes(composeYAML)),
  31. fs.WithFile("overriddenService.yaml", "", fs.WithBytes(overriddenComposeYAML)),
  32. )
  33. defer tmpDir.Remove()
  34. cmd.Command = dockerCli.Command("ecs", "compose", "--file="+tmpDir.Join(composeFileName), "--file",
  35. tmpDir.Join("overriddenService.yaml"), "--project-name", t.Name(), "convert")
  36. result := icmd.RunCmd(cmd).Assert(t, icmd.Success).Combined()
  37. expected := "simple/simple-cloudformation-with-overrides-conversion.golden"
  38. golden.Assert(t, result, expected)
  39. }