From fd8d4b6170738879533e36e3dd50a9c3eb2fd67d Mon Sep 17 00:00:00 2001 From: Christian Jantz Date: Sat, 28 Apr 2018 17:41:40 +0200 Subject: [PATCH] added test for stopsignal command implementation --- pkg/commands/stopsignal_test.go | 60 +++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 pkg/commands/stopsignal_test.go diff --git a/pkg/commands/stopsignal_test.go b/pkg/commands/stopsignal_test.go new file mode 100644 index 000000000..c6e717f76 --- /dev/null +++ b/pkg/commands/stopsignal_test.go @@ -0,0 +1,60 @@ +/* +Copyright 2018 Google LLC + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ +package commands + +import ( + "testing" + + "github.com/GoogleContainerTools/kaniko/testutil" + "github.com/docker/docker/builder/dockerfile/instructions" + "github.com/google/go-containerregistry/v1" +) + +var stopsignalTests = []struct { + signal string + expectedSignal string +}{ + { + signal: "SIGKILL", + expectedSignal: "SIGKILL", + }, + { + signal: "${STOPSIG}", + expectedSignal: "SIGKILL", + }, + { + signal: "1", + expectedSignal: "1", + }, +} + +func TestStopsignalExecuteCmd(t *testing.T) { + + cfg := &v1.Config{ + StopSignal: "", + Env: []string{"STOPSIG=SIGKILL"}, + } + + for _, test := range stopsignalTests { + cmd := StopSignalCommand{ + &instructions.StopSignalCommand{ + Signal: test.signal, + }, + } + err := cmd.ExecuteCommand(cfg) + testutil.CheckErrorAndDeepEqual(t, false, err, test.expectedSignal, cfg.StopSignal) + } +}