From c1d9901b6c8c61d3cd9d678f2e35a75e2812ff85 Mon Sep 17 00:00:00 2001 From: stillya Date: Mon, 28 Aug 2023 01:00:34 +0600 Subject: [PATCH] Add new tests Exclude example directory from tests --- README.md | 4 +- {example => _example}/main.go | 4 +- {example => _example}/testdata/private.jwks | 0 {example => _example}/testdata/private.pem | 0 {example => _example}/testdata/public.jwks | 0 {example => _example}/testdata/public.pem | 0 logger/logger_test.go | 47 +++++++++++++++++++++ user/user_test.go | 42 ++++++++++++++++++ 8 files changed, 93 insertions(+), 4 deletions(-) rename {example => _example}/main.go (95%) rename {example => _example}/testdata/private.jwks (100%) rename {example => _example}/testdata/private.pem (100%) rename {example => _example}/testdata/public.jwks (100%) rename {example => _example}/testdata/public.pem (100%) create mode 100644 logger/logger_test.go create mode 100644 user/user_test.go diff --git a/README.md b/README.md index d7f2c98..8998716 100644 --- a/README.md +++ b/README.md @@ -68,8 +68,8 @@ func main() { goidc.Opts{ BaseURL: "http://localhost:8085", UseAsymmetricEnc: true, - PublicKey: "example/testdata/public.jwks", - PrivateKey: "example/testdata/private.jwks", + PublicKey: "_example/testdata/public.jwks", + PrivateKey: "_example/testdata/private.jwks", Issuer: "goidc", Audience: "goidc", AccessTokenLifetime: time.Minute * 15, diff --git a/example/main.go b/_example/main.go similarity index 95% rename from example/main.go rename to _example/main.go index cd30f06..fc8928e 100644 --- a/example/main.go +++ b/_example/main.go @@ -44,8 +44,8 @@ func main() { goidc.Opts{ BaseURL: "http://localhost:8085", UseAsymmetricEnc: true, - PublicKey: "example/testdata/public.jwks", - PrivateKey: "example/testdata/private.jwks", + PublicKey: "_example/testdata/public.jwks", + PrivateKey: "_example/testdata/private.jwks", Issuer: "goidc", Audience: "goidc", AccessTokenLifetime: time.Minute * 15, diff --git a/example/testdata/private.jwks b/_example/testdata/private.jwks similarity index 100% rename from example/testdata/private.jwks rename to _example/testdata/private.jwks diff --git a/example/testdata/private.pem b/_example/testdata/private.pem similarity index 100% rename from example/testdata/private.pem rename to _example/testdata/private.pem diff --git a/example/testdata/public.jwks b/_example/testdata/public.jwks similarity index 100% rename from example/testdata/public.jwks rename to _example/testdata/public.jwks diff --git a/example/testdata/public.pem b/_example/testdata/public.pem similarity index 100% rename from example/testdata/public.pem rename to _example/testdata/public.pem diff --git a/logger/logger_test.go b/logger/logger_test.go new file mode 100644 index 0000000..923ea2e --- /dev/null +++ b/logger/logger_test.go @@ -0,0 +1,47 @@ +package logger + +import ( + "bytes" + "fmt" + "log" + "os" + "strings" + "testing" +) + +func TestLogger(t *testing.T) { + buff := bytes.NewBufferString("") + lg := Func(func(format string, args ...interface{}) { + fmt.Fprintf(buff, format, args...) + }) + + lg.Logf("blah %s %d something", "str", 123) + + if !strings.HasSuffix(buff.String(), "blah str 123 something") { + t.Errorf("wrong log output: %s", buff.String()) + } +} + +func TestStd(t *testing.T) { + buff := bytes.NewBufferString("") + log.SetOutput(buff) + defer log.SetOutput(os.Stdout) + + Std.Logf("blah %s %d something", "str", 123) + + if !strings.HasSuffix(buff.String(), "blah str 123 something\n") { + t.Errorf("wrong log output: %s", buff.String()) + } +} + +func TestNoOp(t *testing.T) { + buff := bytes.NewBufferString("") + log.SetOutput(buff) + defer log.SetOutput(os.Stdout) + + NoOp.Logf("blah %s %d something", "str", 123) + + if buff.String() != "" { + t.Errorf("wrong log output: %s", buff.String()) + } +} diff --git a/user/user_test.go b/user/user_test.go new file mode 100644 index 0000000..623e5b2 --- /dev/null +++ b/user/user_test.go @@ -0,0 +1,42 @@ +package user + +import "testing" + +func TestUser_SetAttr(t *testing.T) { + type fields struct { + UserID string + Username string + Attributes map[string]interface{} + Disabled bool + } + tests := []struct { + name string + fields fields + }{ + { + name: "TestUser_SetAttr", + fields: fields{ + UserID: "test", + Username: "test", + Attributes: make(map[string]interface{}), + Disabled: false, + }, + }, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + u := &User{ + UserID: tt.fields.UserID, + Username: tt.fields.Username, + Attributes: tt.fields.Attributes, + Disabled: tt.fields.Disabled, + } + u.SetAttr("test", "test") + + if u.Attributes["test"] != "test" { + t.Errorf("SetAttr() error = %v", u.Attributes["test"]) + return + } + }) + } +}