mirror of
				https://github.com/docker/compose.git
				synced 2025-10-30 18:53:51 +01:00 
			
		
		
		
	Add test for ACI start
This commit is contained in:
		
							parent
							
								
									1a3182fb7f
								
							
						
					
					
						commit
						aa8bf1daaa
					
				| @ -30,7 +30,7 @@ import ( | |||||||
| 	"github.com/docker/api/client" | 	"github.com/docker/api/client" | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| // StartCommand deletes containers | // StartCommand starts containers | ||||||
| func StartCommand() *cobra.Command { | func StartCommand() *cobra.Command { | ||||||
| 	cmd := &cobra.Command{ | 	cmd := &cobra.Command{ | ||||||
| 		Use:   "start", | 		Use:   "start", | ||||||
|  | |||||||
| @ -385,8 +385,18 @@ func TestContainerRunAttached(t *testing.T) { | |||||||
| 		assert.Assert(t, is.Len(out, 2)) | 		assert.Assert(t, is.Len(out, 2)) | ||||||
| 	}) | 	}) | ||||||
| 
 | 
 | ||||||
|  | 	t.Run("start container", func(t *testing.T) { | ||||||
|  | 		res := c.RunDockerCmd("start", container) | ||||||
|  | 		res.Assert(t, icmd.Expected{Out: container}) | ||||||
|  | 		waitForStatus(t, c, container, "Running") | ||||||
|  | 	}) | ||||||
|  | 
 | ||||||
| 	t.Run("rm stopped container", func(t *testing.T) { | 	t.Run("rm stopped container", func(t *testing.T) { | ||||||
| 		res := c.RunDockerCmd("rm", container) | 		res := c.RunDockerCmd("stop", container) | ||||||
|  | 		res.Assert(t, icmd.Expected{Out: container}) | ||||||
|  | 		waitForStatus(t, c, container, "Terminated") | ||||||
|  | 
 | ||||||
|  | 		res = c.RunDockerCmd("rm", container) | ||||||
| 		res.Assert(t, icmd.Expected{Out: container}) | 		res.Assert(t, icmd.Expected{Out: container}) | ||||||
| 	}) | 	}) | ||||||
| } | } | ||||||
| @ -653,3 +663,15 @@ func getContainerName(stdout string) string { | |||||||
| 	out := strings.Split(strings.TrimSpace(stdout), "\n") | 	out := strings.Split(strings.TrimSpace(stdout), "\n") | ||||||
| 	return strings.TrimSpace(out[len(out)-1]) | 	return strings.TrimSpace(out[len(out)-1]) | ||||||
| } | } | ||||||
|  | 
 | ||||||
|  | func waitForStatus(t *testing.T, c *E2eCLI, containerID string, status string) { | ||||||
|  | 	checkStopped := func(t poll.LogT) poll.Result { | ||||||
|  | 		res := c.RunDockerCmd("inspect", containerID) | ||||||
|  | 		if strings.Contains(res.Stdout(), status) { | ||||||
|  | 			return poll.Success() | ||||||
|  | 		} | ||||||
|  | 		return poll.Continue("waiting for container to stop") | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	poll.WaitOn(t, checkStopped, poll.WithDelay(5*time.Second), poll.WithTimeout(60*time.Second)) | ||||||
|  | } | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user