Skip to content
Snippets Groups Projects
Commit b9102839 authored by Theo's avatar Theo :troll:
Browse files

Merge branch 'dev' into 'main'

refactor: user_test

See merge request tss24/useradm!3
parents 987f21d1 e9f362fe
Branches
No related tags found
1 merge request!3refactor: user_test
...@@ -11,6 +11,8 @@ var groupCmd = &cobra.Command{ ...@@ -11,6 +11,8 @@ var groupCmd = &cobra.Command{
} }
func init() { func init() {
groupCmd.AddCommand(group.CreateCmd) groupCmd.AddCommand(
groupCmd.AddCommand(group.DeleteCmd) group.CreateCmd,
group.DeleteCmd,
)
} }
...@@ -28,7 +28,9 @@ func Execute() { ...@@ -28,7 +28,9 @@ func Execute() {
} }
func init() { func init() {
rootCmd.AddCommand(userCmd) rootCmd.AddCommand(
rootCmd.AddCommand(groupCmd) userCmd,
rootCmd.AddCommand(bulkCmd) groupCmd,
bulkCmd,
)
} }
...@@ -12,13 +12,15 @@ var userCmd = &cobra.Command{ ...@@ -12,13 +12,15 @@ var userCmd = &cobra.Command{
} }
func init() { func init() {
userCmd.AddCommand(user.ModCmd) userCmd.AddCommand(
userCmd.AddCommand(user.ShowCmd) user.ModCmd,
userCmd.AddCommand(user.TempCmd) user.ShowCmd,
//userCmd.AddCommand(user.BulkCmd) user.TempCmd,
userCmd.AddCommand(user.ResetCmd) //user.BulkCmd,
userCmd.AddCommand(user.CreateCmd) user.ResetCmd,
userCmd.AddCommand(user.RemoveCmd) user.CreateCmd,
userCmd.AddCommand(user.BlockCmd) user.RemoveCmd,
userCmd.AddCommand(user.UnblockCmd) user.BlockCmd,
user.UnblockCmd,
)
} }
...@@ -11,6 +11,7 @@ import ( ...@@ -11,6 +11,7 @@ import (
var BlockCmd = &cobra.Command{ var BlockCmd = &cobra.Command{
Use: "block [username]", Use: "block [username]",
Short: "Block a user", Short: "Block a user",
Example: " useradm block bpt22",
Args: cobra.ExactArgs(1), Args: cobra.ExactArgs(1),
RunE: BlockUserCmd, RunE: BlockUserCmd,
} }
......
package extras
import (
"reflect"
"testing"
"gitlab.c3sl.ufpr.br/tss24/useradm/model"
)
func assertEqual(t *testing.T, a any, b any) {
if !reflect.DeepEqual(a, b) {
t.Fatalf("%s != %s", a, b)
}
}
func TestGenLogin(t *testing.T) {
assertEqual(t, genLogin("", "20241982", model.Initials, 0), "_")
assertEqual(t, genLogin("", "20241982", model.Initials, 1), "_")
assertEqual(t, genLogin("", "20241982", model.Initials, 2), "_")
assertEqual(t, genLogin("", "20241982", model.Initials, 3), "_")
assertEqual(t, genLogin("", "20241982", model.FirstName, 0), "_")
assertEqual(t, genLogin("", "20241982", model.FirstName, 1), "_")
assertEqual(t, genLogin("", "20241982", model.FirstName, 2), "_")
assertEqual(t, genLogin("", "20241982", model.FirstName, 3), "_")
assertEqual(t, genLogin("", "20241982", model.LastName, 0), "_")
assertEqual(t, genLogin("", "20241982", model.LastName, 1), "_")
assertEqual(t, genLogin("", "20241982", model.LastName, 2), "_")
assertEqual(t, genLogin("", "20241982", model.LastName, 3), "_")
assertEqual(t, genLogin("de", "20241982", model.Initials, 0), "_")
assertEqual(t, genLogin("de", "20241982", model.Initials, 1), "_")
assertEqual(t, genLogin("de", "20241982", model.Initials, 2), "_")
assertEqual(t, genLogin("de", "20241982", model.Initials, 3), "_")
assertEqual(t, genLogin("de", "20241982", model.FirstName, 0), "_")
assertEqual(t, genLogin("de", "20241982", model.FirstName, 1), "_")
assertEqual(t, genLogin("de", "20241982", model.FirstName, 2), "_")
assertEqual(t, genLogin("de", "20241982", model.FirstName, 3), "_")
assertEqual(t, genLogin("de", "20241982", model.LastName, 0), "_")
assertEqual(t, genLogin("de", "20241982", model.LastName, 1), "_")
assertEqual(t, genLogin("de", "20241982", model.LastName, 2), "_")
assertEqual(t, genLogin("de", "20241982", model.LastName, 3), "_")
assertEqual(t, genLogin("da de", "20241982", model.Initials, 0), "_")
assertEqual(t, genLogin("da de", "20241982", model.Initials, 1), "_")
assertEqual(t, genLogin("da de", "20241982", model.Initials, 2), "_")
assertEqual(t, genLogin("da de", "20241982", model.Initials, 3), "_")
assertEqual(t, genLogin("da de", "20241982", model.FirstName, 0), "_")
assertEqual(t, genLogin("da de", "20241982", model.FirstName, 1), "_")
assertEqual(t, genLogin("da de", "20241982", model.FirstName, 2), "_")
assertEqual(t, genLogin("da de", "20241982", model.FirstName, 3), "_")
assertEqual(t, genLogin("da de", "20241982", model.LastName, 0), "_")
assertEqual(t, genLogin("da de", "20241982", model.LastName, 1), "_")
assertEqual(t, genLogin("da de", "20241982", model.LastName, 2), "_")
assertEqual(t, genLogin("da de", "20241982", model.LastName, 3), "_")
assertEqual(t, genLogin("Fabiano", "20241982", model.Initials, 0), "f24")
assertEqual(t, genLogin("Fabiano", "20241982", model.Initials, 1), "fa24")
assertEqual(t, genLogin("Fabiano", "20241982", model.Initials, 2), "fab24")
assertEqual(t, genLogin("Fabiano", "20241982", model.Initials, 3), "fabi24")
assertEqual(t, genLogin("Fabiano", "20241982", model.FirstName, 0), "fabiano")
assertEqual(t, genLogin("Fabiano", "20241982", model.FirstName, 1), "fabiano")
assertEqual(t, genLogin("Fabiano", "20241982", model.FirstName, 2), "fabiano")
assertEqual(t, genLogin("Fabiano", "20241982", model.FirstName, 3), "fabiano")
assertEqual(t, genLogin("Fabiano", "20241982", model.LastName, 0), "fabiano")
assertEqual(t, genLogin("Fabiano", "20241982", model.LastName, 1), "fabiano")
assertEqual(t, genLogin("Fabiano", "20241982", model.LastName, 2), "fabiano")
assertEqual(t, genLogin("Fabiano", "20241982", model.LastName, 3), "fabiano")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.Initials, 0), "faps24")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.Initials, 1), "faaps24")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.Initials, 2), "faanps24")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.Initials, 3), "faanpes24")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.Initials, 14), "fabiaantunperesouz24")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.Initials, 18), "fabianantunepereisouza24")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.Initials, 19), "fabianantunepereirsouza24")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.Initials, 20), "fabianoantunepereirsouza24")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.Initials, 21), "fabianoantunespereirsouza24")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.Initials, 22), "fabianoantunespereirasouza24")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.Initials, 40), "fabianoantunespereirasouza24")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.Initials, 50), "fabianoantunespereirasouza24")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.FirstName, 0), "fabiano")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.FirstName, 1), "fabianoa")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.FirstName, 2), "fabianoap")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.FirstName, 3), "fabianoaps")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.FirstName, 4), "fabianoanps")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.FirstName, 16), "fabianoantunepereisouza")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.FirstName, 17), "fabianoantunepereirsouza")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.FirstName, 18), "fabianoantunespereirsouza")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.FirstName, 19), "fabianoantunespereirasouza")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.FirstName, 20), "fabianoantunespereirasouza")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.FirstName, 50), "fabianoantunespereirasouza")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.LastName, 0), "fapsouza")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.LastName, 1), "faapsouza")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.LastName, 2), "faanpsouza")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.LastName, 3), "faanpesouza")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.LastName, 15), "fabianantunepereirsouza")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.LastName, 16), "fabianoantunepereirsouza")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.LastName, 17), "fabianoantunespereirsouza")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.LastName, 18), "fabianoantunespereirasouza")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.LastName, 19), "fabianoantunespereirasouza")
assertEqual(t, genLogin("Fabiano Antunes Pereira de Souza", "20241982", model.LastName, 100), "fabianoantunespereirasouza")
}
...@@ -9,10 +9,13 @@ require ( ...@@ -9,10 +9,13 @@ require (
require ( require (
github.com/Azure/go-ntlmssp v0.0.0-20221128193559-754e69321358 // indirect github.com/Azure/go-ntlmssp v0.0.0-20221128193559-754e69321358 // indirect
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/go-asn1-ber/asn1-ber v1.5.7 // indirect github.com/go-asn1-ber/asn1-ber v1.5.7 // indirect
github.com/google/uuid v1.6.0 // indirect github.com/google/uuid v1.6.0 // indirect
github.com/inconshreveable/mousetrap v1.1.0 // indirect github.com/inconshreveable/mousetrap v1.1.0 // indirect
github.com/pmezard/go-difflib v1.0.0 // indirect
github.com/spf13/pflag v1.0.5 // indirect github.com/spf13/pflag v1.0.5 // indirect
github.com/stretchr/testify v1.10.0 // indirect
golang.org/x/crypto v0.31.0 // indirect golang.org/x/crypto v0.31.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect
) )
...@@ -47,6 +47,8 @@ github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/ ...@@ -47,6 +47,8 @@ github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/
github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
github.com/stretchr/testify v1.8.1 h1:w7B6lhMri9wdJUVmEZPGGhZzrYTPvgJArz7wNPgYKsk= github.com/stretchr/testify v1.8.1 h1:w7B6lhMri9wdJUVmEZPGGhZzrYTPvgJArz7wNPgYKsk=
github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=
github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=
github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
......
package model
import (
"testing"
"github.com/stretchr/testify/assert"
)
func TestGenLogin(t *testing.T) {
userTable := []struct {
name string
grr string
ltype LoginType
variance int
expected string
}{
{"", "20241982", Initials, 0, "_"},
{"", "20241982", Initials, 1, "_"},
{"", "20241982", Initials, 2, "_"},
{"", "20241982", Initials, 3, "_"},
{"", "20241982", FirstName, 0, "_"},
{"", "20241982", FirstName, 1, "_"},
{"", "20241982", FirstName, 2, "_"},
{"", "20241982", FirstName, 3, "_"},
{"", "20241982", LastName, 0, "_"},
{"", "20241982", LastName, 1, "_"},
{"", "20241982", LastName, 2, "_"},
{"", "20241982", LastName, 3, "_"},
{"de", "20241982", Initials, 0, "_"},
{"de", "20241982", Initials, 1, "_"},
{"de", "20241982", Initials, 2, "_"},
{"de", "20241982", Initials, 3, "_"},
{"de", "20241982", FirstName, 0, "_"},
{"de", "20241982", FirstName, 1, "_"},
{"de", "20241982", FirstName, 2, "_"},
{"de", "20241982", FirstName, 3, "_"},
{"de", "20241982", LastName, 0, "_"},
{"de", "20241982", LastName, 1, "_"},
{"de", "20241982", LastName, 2, "_"},
{"de", "20241982", LastName, 3, "_"},
{"da de", "20241982", Initials, 0, "_"},
{"da de", "20241982", Initials, 1, "_"},
{"da de", "20241982", Initials, 2, "_"},
{"da de", "20241982", Initials, 3, "_"},
{"da de", "20241982", FirstName, 0, "_"},
{"da de", "20241982", FirstName, 1, "_"},
{"da de", "20241982", FirstName, 2, "_"},
{"da de", "20241982", FirstName, 3, "_"},
{"da de", "20241982", LastName, 0, "_"},
{"da de", "20241982", LastName, 1, "_"},
{"da de", "20241982", LastName, 2, "_"},
{"da de", "20241982", LastName, 3, "_"},
{"Fabiano", "20241982", Initials, 0, "f24"},
{"Fabiano", "20241982", Initials, 1, "fa24"},
{"Fabiano", "20241982", Initials, 2, "fab24"},
{"Fabiano", "20241982", Initials, 3, "fabi24"},
{"Fabiano", "20241982", FirstName, 0, "fabiano"},
{"Fabiano", "20241982", FirstName, 1, "fabiano"},
{"Fabiano", "20241982", FirstName, 2, "fabiano"},
{"Fabiano", "20241982", FirstName, 3, "fabiano"},
{"Fabiano", "20241982", LastName, 0, "fabiano"},
{"Fabiano", "20241982", LastName, 1, "fabiano"},
{"Fabiano", "20241982", LastName, 2, "fabiano"},
{"Fabiano", "20241982", LastName, 3, "fabiano"},
{"Fabiano Antunes Pereira de Souza", "20241982", Initials, 0, "faps24"},
{"Fabiano Antunes Pereira de Souza", "20241982", Initials, 1, "faaps24"},
{"Fabiano Antunes Pereira de Souza", "20241982", Initials, 2, "faanps24"},
{"Fabiano Antunes Pereira de Souza", "20241982", Initials, 3, "faanpes24"},
{"Fabiano Antunes Pereira de Souza", "20241982", Initials, 14, "fabiaantunperesouz24"},
{"Fabiano Antunes Pereira de Souza", "20241982", Initials, 18, "fabianantunepereisouza24"},
{"Fabiano Antunes Pereira de Souza", "20241982", Initials, 19, "fabianantunepereirsouza24"},
{"Fabiano Antunes Pereira de Souza", "20241982", Initials, 20, "fabianoantunepereirsouza24"},
{"Fabiano Antunes Pereira de Souza", "20241982", Initials, 21, "fabianoantunespereirsouza24"},
{"Fabiano Antunes Pereira de Souza", "20241982", Initials, 22, "fabianoantunespereirasouza24"},
{"Fabiano Antunes Pereira de Souza", "20241982", Initials, 40, "fabianoantunespereirasouza24"},
{"Fabiano Antunes Pereira de Souza", "20241982", Initials, 50, "fabianoantunespereirasouza24"},
{"Fabiano Antunes Pereira de Souza", "20241982", FirstName, 0, "fabiano"},
{"Fabiano Antunes Pereira de Souza", "20241982", FirstName, 1, "fabianoa"},
{"Fabiano Antunes Pereira de Souza", "20241982", FirstName, 2, "fabianoap"},
{"Fabiano Antunes Pereira de Souza", "20241982", FirstName, 3, "fabianoaps"},
{"Fabiano Antunes Pereira de Souza", "20241982", FirstName, 4, "fabianoanps"},
{"Fabiano Antunes Pereira de Souza", "20241982", FirstName, 16, "fabianoantunepereisouza"},
{"Fabiano Antunes Pereira de Souza", "20241982", FirstName, 17, "fabianoantunepereirsouza"},
{"Fabiano Antunes Pereira de Souza", "20241982", FirstName, 18, "fabianoantunespereirsouza"},
{"Fabiano Antunes Pereira de Souza", "20241982", FirstName, 19, "fabianoantunespereirasouza"},
{"Fabiano Antunes Pereira de Souza", "20241982", FirstName, 20, "fabianoantunespereirasouza"},
{"Fabiano Antunes Pereira de Souza", "20241982", FirstName, 50, "fabianoantunespereirasouza"},
{"Fabiano Antunes Pereira de Souza", "20241982", LastName, 0, "fapsouza"},
{"Fabiano Antunes Pereira de Souza", "20241982", LastName, 1, "faapsouza"},
{"Fabiano Antunes Pereira de Souza", "20241982", LastName, 2, "faanpsouza"},
{"Fabiano Antunes Pereira de Souza", "20241982", LastName, 3, "faanpesouza"},
{"Fabiano Antunes Pereira de Souza", "20241982", LastName, 15, "fabianantunepereirsouza"},
{"Fabiano Antunes Pereira de Souza", "20241982", LastName, 16, "fabianoantunepereirsouza"},
{"Fabiano Antunes Pereira de Souza", "20241982", LastName, 17, "fabianoantunespereirsouza"},
{"Fabiano Antunes Pereira de Souza", "20241982", LastName, 18, "fabianoantunespereirasouza"},
{"Fabiano Antunes Pereira de Souza", "20241982", LastName, 19, "fabianoantunespereirasouza"},
{"Fabiano Antunes Pereira de Souza", "20241982", LastName, 100, "fabianoantunespereirasouza"},
}
for _, u := range userTable {
user := &User{
Name: u.name,
GRR: u.grr,
Ltype: u.ltype,
}
login := user.genLogin(u.variance)
assert.Equal(t, u.expected, login)
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment