Envtest based integration tests for Fission (#2858)
* skeleton for envtest fission * Refactor code and add CLI test * hack * Update server test * remove skip-ci for lint tests * Pass client go storagesvc * Add clientGen interface across code * Fix storagesvc test * Fix cmd client * add retry in server test * Fix concurrenct access to pool deployment * Remove old executor test * get rid of ginkgo/gomega * disable flaky test * flaky test * revert ci change * handle err from ParseBool --------- Signed-off-by: Sanket Sudake <sanketsudake@gmail.com> Co-authored-by: Pranoy Kundu <pranoy1998k@gmail.com>
This commit is contained in:
co-authored by
Pranoy Kundu
parent
15e16fcc82
commit
8a17d391c5
@@ -0,0 +1,59 @@
|
||||
package cli_test
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/require"
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
|
||||
"github.com/fission/fission/test/e2e/framework"
|
||||
"github.com/fission/fission/test/e2e/framework/cli"
|
||||
"github.com/fission/fission/test/e2e/framework/services"
|
||||
)
|
||||
|
||||
func TestFissionCLI(t *testing.T) {
|
||||
f := framework.NewFramework()
|
||||
ctx, cancel := context.WithCancel(context.Background())
|
||||
defer cancel()
|
||||
err := f.Start(ctx)
|
||||
require.NoError(t, err)
|
||||
|
||||
err = services.StartServices(ctx, f)
|
||||
require.NoError(t, err)
|
||||
|
||||
fissionClient, err := f.ClientGen().GetFissionClient()
|
||||
require.NoError(t, err)
|
||||
|
||||
t.Run("environment", func(t *testing.T) {
|
||||
t.Run("create", func(t *testing.T) {
|
||||
_, err := cli.ExecCommand(f, ctx, "env", "create", "--name", "test-env", "--image", "fission/python-env")
|
||||
require.NoError(t, err)
|
||||
|
||||
env, err := fissionClient.CoreV1().Environments(metav1.NamespaceDefault).Get(ctx, "test-env", metav1.GetOptions{})
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, env)
|
||||
require.Equal(t, "test-env", env.Name)
|
||||
require.Equal(t, "fission/python-env", env.Spec.Runtime.Image)
|
||||
})
|
||||
|
||||
t.Run("update", func(t *testing.T) {
|
||||
_, err := cli.ExecCommand(f, ctx, "env", "update", "--name", "test-env", "--image", "fission/python-env:v2")
|
||||
require.NoError(t, err)
|
||||
|
||||
env, err := fissionClient.CoreV1().Environments(metav1.NamespaceDefault).Get(ctx, "test-env", metav1.GetOptions{})
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, env)
|
||||
require.Equal(t, "test-env", env.Name)
|
||||
require.Equal(t, "fission/python-env:v2", env.Spec.Runtime.Image)
|
||||
})
|
||||
|
||||
t.Run("delete", func(t *testing.T) {
|
||||
_, err := cli.ExecCommand(f, ctx, "env", "delete", "--name", "test-env")
|
||||
require.NoError(t, err)
|
||||
|
||||
_, err = fissionClient.CoreV1().Environments(metav1.NamespaceDefault).Get(ctx, "test-env", metav1.GetOptions{})
|
||||
require.Error(t, err)
|
||||
})
|
||||
})
|
||||
}
|
||||
Reference in New Issue
Block a user