You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
memos/store/test
Steven 8770b186e4 fix: add Unicode case-insensitive search for SQLite (#5559)
Add custom memos_unicode_lower() SQLite function to enable proper
case-insensitive text search for non-English languages (Cyrillic,
Greek, CJK, etc.).

Previously, SQLite's LOWER() only worked for ASCII characters due to
modernc.org/sqlite lacking ICU extension. This caused searches for
non-English text to be case-sensitive (e.g., searching 'блины' wouldn't
find 'Блины').

Changes:
- Add store/db/sqlite/functions.go with Unicode case folding function
- Register custom function using golang.org/x/text/cases.Fold()
- Update filter renderer to use custom function for SQLite dialect
- Add test for Unicode case-insensitive search
- Make golang.org/x/text a direct dependency

Fixes #5559
4 months ago
..
README.md chore: move store test 1 year ago
activity_test.go perf: enable parallel execution for all store tests 5 months ago
attachment_filter_test.go perf: enable parallel execution for all store tests 5 months ago
attachment_test.go perf: enable parallel execution for all store tests 5 months ago
containers.go fix: resolve flaky migration tests and add stable upgrade test (#5514) 4 months ago
filter_helpers_test.go chore: add store tests (#5397) 5 months ago
idp_test.go perf: enable parallel execution for all store tests 5 months ago
inbox_test.go perf: enable parallel execution for all store tests 5 months ago
instance_setting_test.go test: enhance memo filter tests with COALESCE for JSON extraction and add migration data persistence tests 4 months ago
main_test.go fix: resolve flaky migration tests and add stable upgrade test (#5514) 4 months ago
memo_filter_test.go fix: add Unicode case-insensitive search for SQLite (#5559) 4 months ago
memo_relation_test.go perf: enable parallel execution for all store tests 5 months ago
memo_test.go perf: enable parallel execution for all store tests 5 months ago
migrator_test.go fix: resolve flaky migration tests and add stable upgrade test (#5514) 4 months ago
reaction_test.go perf: enable parallel execution for all store tests 5 months ago
store.go refactor: migrate HOST roles to ADMIN 4 months ago
user_setting_test.go chore(test): add edge case tests for user settings shortcuts and JSON fields 4 months ago
user_test.go refactor: migrate HOST roles to ADMIN 4 months ago

README.md

Store tests

How to test store with MySQL?

  1. Create a database in your MySQL server.
  2. Run the following command with two environment variables set:
DRIVER=mysql DSN=root@/memos_test go test -v ./test/store/...
  • DRIVER should be set to mysql.
  • DSN should be set to the DSN of your MySQL server.