1package cmd
 2
 3import (
 4	"os"
 5	"testing"
 6
 7	"github.com/charmbracelet/soft-serve/config"
 8	sconfig "github.com/charmbracelet/soft-serve/server/config"
 9	"github.com/charmbracelet/wish/testsession"
10	"github.com/gliderlabs/ssh"
11	"github.com/matryer/is"
12)
13
14var ()
15
16func TestMiddleware(t *testing.T) {
17	t.Cleanup(func() {
18		os.RemoveAll("testmiddleware")
19	})
20	is := is.New(t)
21	appCfg, err := config.NewConfig(&sconfig.Config{
22		Host:     "localhost",
23		Port:     22223,
24		RepoPath: "testmiddleware/repos",
25		KeyPath:  "testmiddleware/key",
26	})
27	is.NoErr(err)
28	_ = testsession.New(t, &ssh.Server{
29		Handler: Middleware(appCfg)(func(s ssh.Session) {
30			t.Run("TestCatConfig", func(t *testing.T) {
31				_, err := s.Write([]byte("cat config/config.json"))
32				if err == nil {
33					t.Errorf("Expected error, got nil")
34				}
35			})
36		}),
37	}, nil)
38}