1package config
2
3import (
4 "testing"
5
6 "github.com/charmbracelet/soft-serve/server/config"
7 "github.com/matryer/is"
8)
9
10func TestMultipleInitialKeys(t *testing.T) {
11 cfg, err := NewConfig(&config.Config{
12 RepoPath: t.TempDir(),
13 KeyPath: t.TempDir(),
14 InitialAdminKeys: []string{
15 "testdata/k1.pub",
16 "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFxIobhwtfdwN7m1TFt9wx3PsfvcAkISGPxmbmbauST8 a@b",
17 },
18 })
19 is := is.New(t)
20 is.NoErr(err)
21 err = cfg.Reload()
22 is.NoErr(err)
23 is.Equal(cfg.Users[0].PublicKeys, []string{
24 "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINMwLvyV3ouVrTysUYGoJdl5Vgn5BACKov+n9PlzfPwH a@b",
25 "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFxIobhwtfdwN7m1TFt9wx3PsfvcAkISGPxmbmbauST8 a@b",
26 }) // should have both keys
27}
28
29func TestEmptyInitialKeys(t *testing.T) {
30 cfg, err := NewConfig(&config.Config{
31 RepoPath: t.TempDir(),
32 KeyPath: t.TempDir(),
33 })
34 is := is.New(t)
35 is.NoErr(err)
36 is.Equal(len(cfg.Users), 0) // should not have any users
37}