diff --git a/lib/web/static_test.go b/lib/web/static_test.go
index 6ea4d05afc9..6c688c37fe1 100644
--- a/lib/web/static_test.go
+++ b/lib/web/static_test.go
@@ -20,73 +20,73 @@ import (
"io"
"os"
"strings"
+ "testing"
"github.com/gravitational/trace"
- "gopkg.in/check.v1"
+ "github.com/stretchr/testify/require"
)
-type StaticSuite struct {
-}
+func TestLocalFS(t *testing.T) {
+ t.Parallel()
-var _ = check.Suite(&StaticSuite{})
-
-func (s *StaticSuite) TestLocalFS(c *check.C) {
fs, err := NewDebugFileSystem("../../webassets/teleport")
- c.Assert(err, check.IsNil)
- c.Assert(fs, check.NotNil)
+ require.NoError(t, err)
+ require.NotNil(t, fs)
f, err := fs.Open("/index.html")
- c.Assert(err, check.IsNil)
+ require.NoError(t, err)
bytes, err := io.ReadAll(f)
- c.Assert(err, check.IsNil)
+ require.NoError(t, err)
html := string(bytes[:])
- c.Assert(f.Close(), check.IsNil)
- c.Assert(strings.Contains(html, ``), check.Equals, true)
- c.Assert(strings.Contains(html, `content="{{ .XCSRF }}"`), check.Equals, true)
+ require.NoError(t, f.Close())
+ require.Equal(t, strings.Contains(html, ``), true)
+ require.Equal(t, strings.Contains(html, `content="{{ .XCSRF }}"`), true)
}
-func (s *StaticSuite) TestZipFS(c *check.C) {
+func TestZipFS(t *testing.T) {
+ t.Parallel()
+
fs, err := readZipArchiveAt("../../fixtures/assets.zip")
- c.Assert(err, check.IsNil)
- c.Assert(fs, check.NotNil)
+ require.NoError(t, err)
+ require.NotNil(t, fs)
// test simple full read:
f, err := fs.Open("/index.html")
- c.Assert(err, check.IsNil)
+ require.NoError(t, err)
bytes, err := io.ReadAll(f)
- c.Assert(err, check.IsNil)
- c.Assert(len(bytes), check.Equals, 813)
- c.Assert(f.Close(), check.IsNil)
+ require.NoError(t, err)
+ require.Equal(t, len(bytes), 813)
+ require.NoError(t, f.Close())
// seek + read
f, err = fs.Open("/index.html")
- c.Assert(err, check.IsNil)
+ require.NoError(t, err)
defer f.Close()
n, err := f.Seek(10, io.SeekStart)
- c.Assert(err, check.IsNil)
- c.Assert(n, check.Equals, int64(10))
+ require.NoError(t, err)
+ require.Equal(t, n, int64(10))
bytes, err = io.ReadAll(f)
- c.Assert(err, check.IsNil)
- c.Assert(len(bytes), check.Equals, 803)
+ require.NoError(t, err)
+ require.Equal(t, len(bytes), 803)
n, err = f.Seek(-50, io.SeekEnd)
- c.Assert(err, check.IsNil)
- c.Assert(n, check.Equals, int64(763))
+ require.NoError(t, err)
+ require.Equal(t, n, int64(763))
bytes, err = io.ReadAll(f)
- c.Assert(err, check.IsNil)
- c.Assert(len(bytes), check.Equals, 50)
+ require.NoError(t, err)
+ require.Equal(t, len(bytes), 50)
_, err = f.Seek(-50, io.SeekEnd)
- c.Assert(err, check.IsNil)
+ require.NoError(t, err)
n, err = f.Seek(-50, io.SeekCurrent)
- c.Assert(err, check.IsNil)
- c.Assert(n, check.Equals, int64(713))
+ require.NoError(t, err)
+ require.Equal(t, n, int64(713))
bytes, err = io.ReadAll(f)
- c.Assert(err, check.IsNil)
- c.Assert(len(bytes), check.Equals, 100)
+ require.NoError(t, err)
+ require.Equal(t, len(bytes), 100)
}
func readZipArchiveAt(path string) (ResourceMap, error) {
diff --git a/lib/web/ui/perf_test.go b/lib/web/ui/perf_test.go
index ce8786979ae..ef2c3e0f342 100644
--- a/lib/web/ui/perf_test.go
+++ b/lib/web/ui/perf_test.go
@@ -27,7 +27,6 @@ import (
"github.com/gravitational/teleport/api/types"
"github.com/gravitational/teleport/lib/auth"
"github.com/gravitational/teleport/lib/backend"
- "github.com/gravitational/teleport/lib/backend/lite"
"github.com/gravitational/teleport/lib/backend/memory"
"github.com/gravitational/teleport/lib/reversetunnel"
"github.com/gravitational/teleport/lib/services"
@@ -77,8 +76,8 @@ func BenchmarkGetClusterDetails(b *testing.B) {
bk, err = memory.New(memory.Config{})
require.NoError(b, err)
} else {
- bk, err = lite.NewWithConfig(context.TODO(), lite.Config{
- Path: b.TempDir(),
+ bk, err = memory.New(memory.Config{
+ Context: ctx,
})
require.NoError(b, err)
}
diff --git a/lib/web/ui/usercontext_test.go b/lib/web/ui/usercontext_test.go
index 0acf761555f..bc2e0f53393 100644
--- a/lib/web/ui/usercontext_test.go
+++ b/lib/web/ui/usercontext_test.go
@@ -1,36 +1,35 @@
-// Copyright 2021 Gravitational, Inc
-//
-// 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.
+/*
+Copyright 2022 Gravitational, Inc.
+
+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 ui
import (
"testing"
+ "github.com/google/go-cmp/cmp"
"github.com/gravitational/teleport/api/client/proto"
apidefaults "github.com/gravitational/teleport/api/defaults"
"github.com/gravitational/teleport/api/types"
"github.com/gravitational/teleport/lib/services"
- "gopkg.in/check.v1"
+ "github.com/stretchr/testify/require"
)
-type UserContextSuite struct{}
+func TestNewUserContext(t *testing.T) {
+ t.Parallel()
-var _ = check.Suite(&UserContextSuite{})
-
-func TestUserContext(t *testing.T) { check.TestingT(t) }
-
-func (s *UserContextSuite) TestNewUserContext(c *check.C) {
user := &types.UserV2{
Metadata: types.Metadata{
Name: "root",
@@ -79,55 +78,58 @@ func (s *UserContextSuite) TestNewUserContext(c *check.C) {
roleSet := []types.Role{role1, role2}
userContext, err := NewUserContext(user, roleSet, proto.Features{}, true)
- c.Assert(err, check.IsNil)
+ require.NoError(t, err)
allowed := access{true, true, true, true, true}
denied := access{false, false, false, false, false}
// test user name and acl
- c.Assert(userContext.Name, check.Equals, "root")
- c.Assert(userContext.ACL.AuthConnectors, check.DeepEquals, allowed)
- c.Assert(userContext.ACL.TrustedClusters, check.DeepEquals, allowed)
- c.Assert(userContext.ACL.AppServers, check.DeepEquals, denied)
- c.Assert(userContext.ACL.DBServers, check.DeepEquals, denied)
- c.Assert(userContext.ACL.KubeServers, check.DeepEquals, denied)
- c.Assert(userContext.ACL.Events, check.DeepEquals, denied)
- c.Assert(userContext.ACL.RecordedSessions, check.DeepEquals, denied)
- c.Assert(userContext.ACL.Roles, check.DeepEquals, denied)
- c.Assert(userContext.ACL.Users, check.DeepEquals, denied)
- c.Assert(userContext.ACL.Tokens, check.DeepEquals, denied)
- c.Assert(userContext.ACL.Nodes, check.DeepEquals, denied)
- c.Assert(userContext.ACL.AccessRequests, check.DeepEquals, denied)
- c.Assert(userContext.ACL.Desktops, check.DeepEquals, allowed)
- c.Assert(userContext.ACL.WindowsLogins, check.DeepEquals, []string{"a", "b", "d"})
- c.Assert(userContext.AccessStrategy, check.DeepEquals, accessStrategy{
+ require.Equal(t, userContext.Name, "root")
+ require.Empty(t, cmp.Diff(userContext.ACL.AuthConnectors, allowed))
+ require.Empty(t, cmp.Diff(userContext.ACL.TrustedClusters, allowed))
+ require.Empty(t, cmp.Diff(userContext.ACL.AppServers, denied))
+ require.Empty(t, cmp.Diff(userContext.ACL.DBServers, denied))
+ require.Empty(t, cmp.Diff(userContext.ACL.KubeServers, denied))
+ require.Empty(t, cmp.Diff(userContext.ACL.Events, denied))
+ require.Empty(t, cmp.Diff(userContext.ACL.RecordedSessions, denied))
+ require.Empty(t, cmp.Diff(userContext.ACL.Roles, denied))
+ require.Empty(t, cmp.Diff(userContext.ACL.Users, denied))
+ require.Empty(t, cmp.Diff(userContext.ACL.Tokens, denied))
+ require.Empty(t, cmp.Diff(userContext.ACL.Nodes, denied))
+ require.Empty(t, cmp.Diff(userContext.ACL.AccessRequests, denied))
+ require.Empty(t, cmp.Diff(userContext.ACL.Desktops, allowed))
+ require.Empty(t, cmp.Diff(userContext.ACL.WindowsLogins, []string{"a", "b", "d"}))
+ require.Empty(t, cmp.Diff(userContext.AccessStrategy, accessStrategy{
Type: types.RequestStrategyOptional,
Prompt: "",
- })
- c.Assert(userContext.ACL.Billing, check.DeepEquals, denied)
- c.Assert(userContext.ACL.Clipboard, check.Equals, true)
- c.Assert(userContext.ACL.DesktopSessionRecording, check.Equals, true)
+ }))
+
+ require.Empty(t, cmp.Diff(userContext.ACL.Billing, denied))
+ require.Equal(t, userContext.ACL.Clipboard, true)
+ require.Equal(t, userContext.ACL.DesktopSessionRecording, true)
// test local auth type
- c.Assert(userContext.AuthType, check.Equals, authLocal)
+ require.Equal(t, userContext.AuthType, authLocal)
// test sso auth type
user.Spec.GithubIdentities = []types.ExternalIdentity{{ConnectorID: "foo", Username: "bar"}}
userContext, err = NewUserContext(user, roleSet, proto.Features{}, true)
- c.Assert(err, check.IsNil)
- c.Assert(userContext.AuthType, check.Equals, authSSO)
+ require.NoError(t, err)
+ require.Equal(t, userContext.AuthType, authSSO)
userContext, err = NewUserContext(user, roleSet, proto.Features{Cloud: true}, true)
- c.Assert(err, check.IsNil)
- c.Assert(userContext.ACL.Billing, check.DeepEquals, access{true, true, false, false, false})
+ require.NoError(t, err)
+ require.Empty(t, cmp.Diff(userContext.ACL.Billing, access{true, true, false, false, false}))
// test that desktopRecordingEnabled being false overrides the roleSet.RecordDesktopSession() returning true
userContext, err = NewUserContext(user, roleSet, proto.Features{}, false)
- c.Assert(err, check.IsNil)
- c.Assert(userContext.ACL.DesktopSessionRecording, check.Equals, false)
+ require.NoError(t, err)
+ require.Equal(t, userContext.ACL.DesktopSessionRecording, false)
}
-func (s *UserContextSuite) TestNewUserContextCloud(c *check.C) {
+func TestNewUserContextCloud(t *testing.T) {
+ t.Parallel()
+
user := &types.UserV2{
Metadata: types.Metadata{
Name: "root",
@@ -151,30 +153,31 @@ func (s *UserContextSuite) TestNewUserContextCloud(c *check.C) {
allowed := access{true, true, true, true, true}
userContext, err := NewUserContext(user, roleSet, proto.Features{Cloud: true}, true)
- c.Assert(err, check.IsNil)
+ require.NoError(t, err)
- c.Assert(userContext.Name, check.Equals, "root")
- c.Assert(userContext.ACL.AuthConnectors, check.DeepEquals, allowed)
- c.Assert(userContext.ACL.TrustedClusters, check.DeepEquals, allowed)
- c.Assert(userContext.ACL.AppServers, check.DeepEquals, allowed)
- c.Assert(userContext.ACL.DBServers, check.DeepEquals, allowed)
- c.Assert(userContext.ACL.KubeServers, check.DeepEquals, allowed)
- c.Assert(userContext.ACL.Events, check.DeepEquals, allowed)
- c.Assert(userContext.ACL.RecordedSessions, check.DeepEquals, allowed)
- c.Assert(userContext.ACL.Roles, check.DeepEquals, allowed)
- c.Assert(userContext.ACL.Users, check.DeepEquals, allowed)
- c.Assert(userContext.ACL.Tokens, check.DeepEquals, allowed)
- c.Assert(userContext.ACL.Nodes, check.DeepEquals, allowed)
- c.Assert(userContext.ACL.AccessRequests, check.DeepEquals, allowed)
- c.Assert(userContext.ACL.WindowsLogins, check.DeepEquals, []string{"a", "b"})
- c.Assert(userContext.AccessStrategy, check.DeepEquals, accessStrategy{
+ require.Equal(t, userContext.Name, "root")
+ require.Empty(t, cmp.Diff(userContext.ACL.AuthConnectors, allowed))
+ require.Empty(t, cmp.Diff(userContext.ACL.TrustedClusters, allowed))
+ require.Empty(t, cmp.Diff(userContext.ACL.AppServers, allowed))
+ require.Empty(t, cmp.Diff(userContext.ACL.DBServers, allowed))
+ require.Empty(t, cmp.Diff(userContext.ACL.KubeServers, allowed))
+ require.Empty(t, cmp.Diff(userContext.ACL.Events, allowed))
+ require.Empty(t, cmp.Diff(userContext.ACL.RecordedSessions, allowed))
+ require.Empty(t, cmp.Diff(userContext.ACL.Roles, allowed))
+ require.Empty(t, cmp.Diff(userContext.ACL.Users, allowed))
+ require.Empty(t, cmp.Diff(userContext.ACL.Tokens, allowed))
+ require.Empty(t, cmp.Diff(userContext.ACL.Nodes, allowed))
+ require.Empty(t, cmp.Diff(userContext.ACL.AccessRequests, allowed))
+ require.Empty(t, cmp.Diff(userContext.ACL.WindowsLogins, []string{"a", "b"}))
+ require.Empty(t, cmp.Diff(userContext.AccessStrategy, accessStrategy{
Type: types.RequestStrategyOptional,
Prompt: "",
- })
- c.Assert(userContext.ACL.Clipboard, check.Equals, true)
- c.Assert(userContext.ACL.DesktopSessionRecording, check.Equals, true)
+ }))
+
+ require.Equal(t, userContext.ACL.Clipboard, true)
+ require.Equal(t, userContext.ACL.DesktopSessionRecording, true)
// cloud-specific asserts
- c.Assert(userContext.ACL.Billing, check.DeepEquals, allowed)
- c.Assert(userContext.ACL.Desktops, check.DeepEquals, allowed)
+ require.Empty(t, cmp.Diff(userContext.ACL.Billing, allowed))
+ require.Empty(t, cmp.Diff(userContext.ACL.Desktops, allowed))
}