Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
canifa_note
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Vũ Hoàng Anh
canifa_note
Commits
8164986f
Commit
8164986f
authored
Mar 17, 2025
by
Steven
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
chore: move store test
parent
fdf9d9f5
Changes
15
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
51 additions
and
60 deletions
+51
-60
README.md
store/test/README.md
+0
-0
activity_test.go
store/test/activity_test.go
+0
-0
idp_test.go
store/test/idp_test.go
+0
-0
inbox_test.go
store/test/inbox_test.go
+0
-0
memo_relation_test.go
store/test/memo_relation_test.go
+0
-0
memo_test.go
store/test/memo_test.go
+0
-0
migrator_test.go
store/test/migrator_test.go
+0
-0
reaction_test.go
store/test/reaction_test.go
+0
-0
resource_test.go
store/test/resource_test.go
+0
-0
store.go
store/test/store.go
+51
-2
user_setting_test.go
store/test/user_setting_test.go
+0
-0
user_test.go
store/test/user_test.go
+0
-0
webhook_test.go
store/test/webhook_test.go
+0
-0
workspace_setting_test.go
store/test/workspace_setting_test.go
+0
-0
test.go
test/test.go
+0
-58
No files found.
test/store
/README.md
→
store/test
/README.md
View file @
8164986f
File moved
test/store
/activity_test.go
→
store/test
/activity_test.go
View file @
8164986f
File moved
test/store
/idp_test.go
→
store/test
/idp_test.go
View file @
8164986f
File moved
test/store
/inbox_test.go
→
store/test
/inbox_test.go
View file @
8164986f
File moved
test/store
/memo_relation_test.go
→
store/test
/memo_relation_test.go
View file @
8164986f
File moved
test/store
/memo_test.go
→
store/test
/memo_test.go
View file @
8164986f
File moved
test/store
/migrator_test.go
→
store/test
/migrator_test.go
View file @
8164986f
File moved
test/store
/reaction_test.go
→
store/test
/reaction_test.go
View file @
8164986f
File moved
test/store
/resource_test.go
→
store/test
/resource_test.go
View file @
8164986f
File moved
test/store
/store.go
→
store/test
/store.go
View file @
8164986f
...
...
@@ -2,20 +2,24 @@ package teststore
import
(
"context"
"fmt"
"log/slog"
"net"
"os"
"testing"
// sqlite driver.
_
"modernc.org/sqlite"
"github.com/joho/godotenv"
"github.com/usememos/memos/server/profile"
"github.com/usememos/memos/server/version"
"github.com/usememos/memos/store"
"github.com/usememos/memos/store/db"
"github.com/usememos/memos/test"
)
func
NewTestingStore
(
ctx
context
.
Context
,
t
*
testing
.
T
)
*
store
.
Store
{
profile
:=
test
.
G
etTestingProfile
(
t
)
profile
:=
g
etTestingProfile
(
t
)
dbDriver
,
err
:=
db
.
NewDBDriver
(
profile
)
if
err
!=
nil
{
slog
.
Error
(
"failed to create db driver"
,
slog
.
String
(
"error"
,
err
.
Error
()))
...
...
@@ -74,3 +78,48 @@ func resetTestingDB(ctx context.Context, profile *profile.Profile, dbDriver stor
}
}
}
func
getUnusedPort
()
int
{
// Get a random unused port
listener
,
err
:=
net
.
Listen
(
"tcp"
,
"localhost:0"
)
if
err
!=
nil
{
panic
(
err
)
}
defer
listener
.
Close
()
// Get the port number
port
:=
listener
.
Addr
()
.
(
*
net
.
TCPAddr
)
.
Port
return
port
}
func
getTestingProfile
(
t
*
testing
.
T
)
*
profile
.
Profile
{
if
err
:=
godotenv
.
Load
(
".env"
);
err
!=
nil
{
t
.
Log
(
"failed to load .env file, but it's ok"
)
}
// Get a temporary directory for the test data.
dir
:=
t
.
TempDir
()
mode
:=
"prod"
port
:=
getUnusedPort
()
driver
:=
getDriverFromEnv
()
dsn
:=
os
.
Getenv
(
"DSN"
)
if
driver
==
"sqlite"
{
dsn
=
fmt
.
Sprintf
(
"%s/memos_%s.db"
,
dir
,
mode
)
}
return
&
profile
.
Profile
{
Mode
:
mode
,
Port
:
port
,
Data
:
dir
,
DSN
:
dsn
,
Driver
:
driver
,
Version
:
version
.
GetCurrentVersion
(
mode
),
}
}
func
getDriverFromEnv
()
string
{
driver
:=
os
.
Getenv
(
"DRIVER"
)
if
driver
==
""
{
driver
=
"sqlite"
}
return
driver
}
test/store
/user_setting_test.go
→
store/test
/user_setting_test.go
View file @
8164986f
File moved
test/store
/user_test.go
→
store/test
/user_test.go
View file @
8164986f
File moved
test/store
/webhook_test.go
→
store/test
/webhook_test.go
View file @
8164986f
File moved
test/store
/workspace_setting_test.go
→
store/test
/workspace_setting_test.go
View file @
8164986f
File moved
test/test.go
deleted
100644 → 0
View file @
fdf9d9f5
package
test
import
(
"fmt"
"net"
"os"
"testing"
"github.com/joho/godotenv"
"github.com/usememos/memos/server/profile"
"github.com/usememos/memos/server/version"
)
func
getUnusedPort
()
int
{
// Get a random unused port
listener
,
err
:=
net
.
Listen
(
"tcp"
,
"localhost:0"
)
if
err
!=
nil
{
panic
(
err
)
}
defer
listener
.
Close
()
// Get the port number
port
:=
listener
.
Addr
()
.
(
*
net
.
TCPAddr
)
.
Port
return
port
}
func
GetTestingProfile
(
t
*
testing
.
T
)
*
profile
.
Profile
{
if
err
:=
godotenv
.
Load
(
".env"
);
err
!=
nil
{
t
.
Log
(
"failed to load .env file, but it's ok"
)
}
// Get a temporary directory for the test data.
dir
:=
t
.
TempDir
()
mode
:=
"prod"
port
:=
getUnusedPort
()
driver
:=
getDriverFromEnv
()
dsn
:=
os
.
Getenv
(
"DSN"
)
if
driver
==
"sqlite"
{
dsn
=
fmt
.
Sprintf
(
"%s/memos_%s.db"
,
dir
,
mode
)
}
return
&
profile
.
Profile
{
Mode
:
mode
,
Port
:
port
,
Data
:
dir
,
DSN
:
dsn
,
Driver
:
driver
,
Version
:
version
.
GetCurrentVersion
(
mode
),
}
}
func
getDriverFromEnv
()
string
{
driver
:=
os
.
Getenv
(
"DRIVER"
)
if
driver
==
""
{
driver
=
"sqlite"
}
return
driver
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment