github.com/Racer159/jackal@v0.32.7-0.20240401174413-0bd2339e4f2e/src/test/e2e/26_simple_packages_test.go (about) 1 // SPDX-License-Identifier: Apache-2.0 2 // SPDX-FileCopyrightText: 2021-Present The Jackal Authors 3 4 // Package test provides e2e tests for Jackal. 5 package test 6 7 import ( 8 "fmt" 9 "net/http" 10 "path/filepath" 11 "testing" 12 13 "github.com/Racer159/jackal/src/pkg/cluster" 14 "github.com/stretchr/testify/require" 15 ) 16 17 func TestDosGames(t *testing.T) { 18 t.Log("E2E: Dos games") 19 e2e.SetupWithCluster(t) 20 21 path := filepath.Join("build", fmt.Sprintf("jackal-package-dos-games-%s-1.0.0.tar.zst", e2e.Arch)) 22 23 // Deploy the game 24 stdOut, stdErr, err := e2e.Jackal("package", "deploy", path, "--confirm") 25 require.NoError(t, err, stdOut, stdErr) 26 27 c, err := cluster.NewCluster() 28 require.NoError(t, err) 29 tunnel, err := c.Connect("doom") 30 require.NoError(t, err) 31 defer tunnel.Close() 32 33 // Check that 'curl' returns something. 34 resp, err := http.Get(tunnel.HTTPEndpoint()) 35 require.NoError(t, err, resp) 36 require.Equal(t, 200, resp.StatusCode) 37 38 stdOut, stdErr, err = e2e.Jackal("package", "remove", "dos-games", "--confirm") 39 require.NoError(t, err, stdOut, stdErr) 40 41 testCreate := filepath.Join("src", "test", "packages", "26-image-dos-games") 42 testDeploy := filepath.Join("build", fmt.Sprintf("jackal-package-dos-games-images-%s.tar.zst", e2e.Arch)) 43 44 // Create the game image test package 45 stdOut, stdErr, err = e2e.Jackal("package", "create", testCreate, "-o", "build", "--confirm") 46 require.NoError(t, err, stdOut, stdErr) 47 48 // Deploy the game image test package 49 stdOut, stdErr, err = e2e.Jackal("package", "deploy", testDeploy, "--confirm") 50 require.NoError(t, err, stdOut, stdErr) 51 } 52 53 func TestManifests(t *testing.T) { 54 t.Log("E2E: Local, Remote, and Kustomize Manifests") 55 e2e.SetupWithCluster(t) 56 57 path := filepath.Join("build", fmt.Sprintf("jackal-package-manifests-%s-0.0.1.tar.zst", e2e.Arch)) 58 59 // Deploy the package 60 stdOut, stdErr, err := e2e.Jackal("package", "deploy", path, "--confirm") 61 require.NoError(t, err, stdOut, stdErr) 62 63 // Remove the package 64 stdOut, stdErr, err = e2e.Jackal("package", "remove", "manifests", "--confirm") 65 require.NoError(t, err, stdOut, stdErr) 66 }