mirror of https://github.com/docker/docs.git
				
				
				
			
		
			
				
	
	
		
			59 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Go
		
	
	
	
			
		
		
	
	
			59 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Go
		
	
	
	
| package cluster
 | |
| 
 | |
| import (
 | |
| 	"testing"
 | |
| 
 | |
| 	"github.com/samalba/dockerclient"
 | |
| 	"github.com/stretchr/testify/assert"
 | |
| )
 | |
| 
 | |
| func TestContainersGet(t *testing.T) {
 | |
| 	containers := Containers([]*Container{{
 | |
| 		Container: dockerclient.Container{
 | |
| 			Id:    "container1-id",
 | |
| 			Names: []string{"/container1-name1", "/container1-name2"},
 | |
| 		},
 | |
| 		Engine: &Engine{ID: "test-engine"},
 | |
| 		Config: BuildContainerConfig(dockerclient.ContainerConfig{
 | |
| 			Labels: map[string]string{
 | |
| 				"com.docker.swarm.id": "swarm1-id",
 | |
| 			},
 | |
| 		}),
 | |
| 	}, {
 | |
| 		Container: dockerclient.Container{
 | |
| 			Id:    "container2-id",
 | |
| 			Names: []string{"/con"},
 | |
| 		},
 | |
| 		Engine: &Engine{ID: "test-engine"},
 | |
| 		Config: BuildContainerConfig(dockerclient.ContainerConfig{
 | |
| 			Labels: map[string]string{
 | |
| 				"com.docker.swarm.id": "swarm2-id",
 | |
| 			},
 | |
| 		}),
 | |
| 	}})
 | |
| 
 | |
| 	// Invalid lookup
 | |
| 	assert.Nil(t, containers.Get("invalid-id"))
 | |
| 	assert.Nil(t, containers.Get(""))
 | |
| 	// Container ID lookup.
 | |
| 	assert.NotNil(t, containers.Get("container1-id"))
 | |
| 	// Container ID prefix lookup.
 | |
| 	assert.NotNil(t, containers.Get("container1-"))
 | |
| 	assert.Nil(t, containers.Get("container"))
 | |
| 	// Container name lookup.
 | |
| 	assert.NotNil(t, containers.Get("container1-name1"))
 | |
| 	assert.NotNil(t, containers.Get("container1-name2"))
 | |
| 	// Container engine/name matching.
 | |
| 	assert.NotNil(t, containers.Get("test-engine/container1-name1"))
 | |
| 	assert.NotNil(t, containers.Get("test-engine/container1-name2"))
 | |
| 	// Swarm ID lookup.
 | |
| 	assert.NotNil(t, containers.Get("swarm1-id"))
 | |
| 	// Swarm ID prefix lookup.
 | |
| 	assert.NotNil(t, containers.Get("swarm1-"))
 | |
| 	assert.Nil(t, containers.Get("swarm"))
 | |
| 	// Get name before ID prefix
 | |
| 	cc := containers.Get("con")
 | |
| 	assert.NotNil(t, cc)
 | |
| 	assert.Equal(t, cc.Id, "container2-id")
 | |
| }
 |