MCPcopy
hub / github.com/redspread/spread / TestContainerWithImageDeployment

Function TestContainerWithImageDeployment

pkg/entity/container_test.go:12–59  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

10)
11
12func TestContainerWithImageDeployment(t *testing.T) {
13 const imageName = "busybox:latest"
14 kubeContainer := kube.Container{
15 Name: "simple-container",
16 Image: imageName,
17 Command: []string{"/bin/busybox", "ls"},
18 ImagePullPolicy: kube.PullAlways,
19 }
20
21 ctr, err := NewContainer(kubeContainer, kube.ObjectMeta{}, "simpleTest")
22 assert.NoError(t, err, "should be able to create container")
23 assert.NotNil(t, ctr.image, "an image should have been created")
24
25 // check images
26 images := ctr.Images()
27 assert.Len(t, images, 1, "should have single image")
28
29 expectedImage := newDockerImage(t, imageName)
30 actualImage := images[0]
31 assert.Equal(t, expectedImage.KubeImage(), actualImage.KubeImage(), "image should not have changed")
32
33 // check kube
34 kubectr, objects, err := ctr.data()
35 assert.NoError(t, err, "should be able to produce kube")
36 assert.True(t, kube.Semantic.DeepEqual(&kubectr, &kubeContainer), "kube should be same as container")
37 assert.Equal(t, objects.Len(), 0, "no objects should have been added")
38
39 pod := kube.Pod{
40 ObjectMeta: kube.ObjectMeta{
41 GenerateName: kubeContainer.Name,
42 Namespace: kube.NamespaceDefault,
43 },
44 Spec: kube.PodSpec{
45 Containers: []kube.Container{
46 kubeContainer,
47 },
48 RestartPolicy: kube.RestartPolicyAlways,
49 DNSPolicy: kube.DNSDefault,
50 },
51 }
52
53 expected := new(deploy.Deployment)
54 assert.NoError(t, expected.Add(&pod), "valid pod")
55 actual, err := ctr.Deployment()
56 assert.NoError(t, err, "deploy ok")
57
58 testDeploymentEqual(t, expected, actual)
59}
60
61func TestContainerNoImageDeployment(t *testing.T) {
62 kubeContainer := kube.Container{

Callers

nothing calls this directly

Calls 10

ImagesMethod · 0.95
dataMethod · 0.95
DeploymentMethod · 0.95
NewContainerFunction · 0.85
newDockerImageFunction · 0.85
testDeploymentEqualFunction · 0.85
KubeImageMethod · 0.80
LenMethod · 0.45
EqualMethod · 0.45
AddMethod · 0.45

Tested by

no test coverage detected