1diff --git a/pkg/database/sql/user_test.go b/pkg/database/sql/user_test.go
2index db436767045e01cc9b20d03e3bee2576e01c6707..fda744038a8cb5ee639b4ec1dfc0132466904578 100644
3--- a/pkg/database/sql/user_test.go
4+++ b/pkg/database/sql/user_test.go
5@@ -12,69 +12,101 @@ "git.sr.ht/~gabrielgio/img/pkg/database/repository"
6 )
7
8 func TestCreate(t *testing.T) {
9- t.Parallel()
10- db, tearDown := setup(t)
11- defer tearDown()
12+ testCases := []struct {
13+ name string
14+ createUser *repository.CreateUser
15+ want *repository.User
16+ }{
17+ {
18+ name: "Normal",
19+ createUser: &repository.CreateUser{
20+ Username: "new_username",
21+ Name: "new_name",
22+ },
23+ want: &repository.User{
24+ ID: 1, // since the database is being created I can assume 1
25+ Username: "new_username",
26+ Name: "new_name",
27+ },
28+ },
29+ }
30
31- userRepository := NewUserRepository(db)
32+ for _, tc := range testCases {
33+ t.Run(tc.name, func(t *testing.T) {
34+ db, tearDown := setup(t)
35+ defer tearDown()
36
37- id, err := userRepository.Create(context.Background(), &repository.CreateUser{
38- Username: "new_username",
39- Name: "new_name",
40- })
41- if err != nil {
42- t.Fatalf("Error creating: %s", err.Error())
43- }
44+ userRepository := NewUserRepository(db)
45+ id, err := userRepository.Create(context.Background(), tc.createUser)
46+ if err != nil {
47+ t.Fatalf("Error creating: %s", err.Error())
48+ }
49
50- got, err := userRepository.Get(context.Background(), id)
51- if err != nil {
52- t.Fatalf("Error getting: %s", err.Error())
53- }
54- want := &repository.User{
55- ID: id,
56- Username: "new_username",
57- Name: "new_name",
58- }
59+ got, err := userRepository.Get(context.Background(), id)
60+ if err != nil {
61+ t.Fatalf("Error getting: %s", err.Error())
62+ }
63
64- if diff := cmp.Diff(want, got); diff != "" {
65- t.Errorf("%s() mismatch (-want +got):\n%s", "Update", diff)
66+ if diff := cmp.Diff(tc.want, got); diff != "" {
67+ t.Errorf("%s() mismatch (-want +got):\n%s", "Update", diff)
68+ }
69+ })
70 }
71 }
72
73 func TestUpdate(t *testing.T) {
74- t.Parallel()
75- db, tearDown := setup(t)
76- defer tearDown()
77+ testCases := []struct {
78+ name string
79+ createUser *repository.CreateUser
80+ want *repository.User
81+ }{
82+ {
83+ name: "Normal creation",
84+ createUser: &repository.CreateUser{
85+ Username: "username",
86+ Name: "name",
87+ IsAdmin: true,
88+ Path: "/tmp/new_folder",
89+ },
90+ want: &repository.User{
91+ ID: 1, // since the database is being created I can assume 1
92+ Username: "new_username",
93+ Name: "new_name",
94+ IsAdmin: true,
95+ Path: "/tmp/new_folder",
96+ },
97+ },
98+ }
99
100- userRepository := NewUserRepository(db)
101+ for _, tc := range testCases {
102+ t.Run(tc.name, func(t *testing.T) {
103+ db, tearDown := setup(t)
104+ defer tearDown()
105
106- id, err := userRepository.Create(context.Background(), &repository.CreateUser{
107- Username: "username",
108- Name: "name",
109- })
110- if err != nil {
111- t.Fatalf("Error creating user: %s", err.Error())
112- }
113+ userRepository := NewUserRepository(db)
114+
115+ id, err := userRepository.Create(context.Background(), tc.createUser)
116+ if err != nil {
117+ t.Fatalf("Error creating user: %s", err.Error())
118+ }
119+
120+ err = userRepository.Update(context.Background(), id, &repository.UpdateUser{
121+ Username: "new_username",
122+ Name: "new_name",
123+ })
124+ if err != nil {
125+ t.Fatalf("Error update user: %s", err.Error())
126+ }
127
128- err = userRepository.Update(context.Background(), id, &repository.UpdateUser{
129- Username: "new_username",
130- Name: "new_name",
131- })
132- if err != nil {
133- t.Fatalf("Error update user: %s", err.Error())
134- }
135+ got, err := userRepository.Get(context.Background(), 1)
136+ if err != nil {
137+ t.Fatalf("Error getting user: %s", err.Error())
138+ }
139
140- got, err := userRepository.Get(context.Background(), 1)
141- if err != nil {
142- t.Fatalf("Error getting user: %s", err.Error())
143- }
144- want := &repository.User{
145- ID: id,
146- Username: "new_username",
147- Name: "new_name",
148- }
149+ if diff := cmp.Diff(tc.want, got); diff != "" {
150+ t.Errorf("%s() mismatch (-want +got):\n%s", "Update", diff)
151+ }
152
153- if diff := cmp.Diff(want, got); diff != "" {
154- t.Errorf("%s() mismatch (-want +got):\n%s", "Update", diff)
155+ })
156 }
157 }
158diff --git a/templates/user.qtpl b/templates/user.qtpl
159index ba2f071537abbcc25f8ec2d3fc1eb18f05b9ac1c..6ec783d6d9bbc32dcb34efe3deba29230cdc3e39 100644
160--- a/templates/user.qtpl
161+++ b/templates/user.qtpl
162@@ -9,7 +9,7 @@ }
163
164 %}
165
166-{% func (p *UserPage) Title() %}Login{% endfunc %}
167+{% func (p *UserPage) Title() %}User{% endfunc %}
168
169 {% func (p *UserPage) Content() %}
170 <h1>Initial Setup</h1>