Commit Graph

154 Commits

Author SHA1 Message Date
80fb37371f update: fix go version and update alpine to 3.22 2025-11-23 10:44:28 +01:00
fea49fad8d fix: add missing method to mock 2025-11-21 17:07:26 +01:00
4b04461ebb style: minor formatting adjustments 2025-11-21 17:06:04 +01:00
533e8c3d46 feat: add GetByUsernamePrefixFn field and method to UserRepositoryStub 2025-11-21 17:05:48 +01:00
df568291f1 feat: add GetByUsernamePrefix implementation to MockUserRepository 2025-11-21 17:05:31 +01:00
81acce62b1 feat: add GetByUsernamePrefix method to interface and add implementation 2025-11-21 17:05:01 +01:00
989a61e7d5 feat: use getByUsernamePrefix to optimize findExistingSeedUser() 2025-11-21 17:04:35 +01:00
3ffd83b0fb feat: ignore docs in make format 2025-11-21 17:02:06 +01:00
62d466e4fa refactor: use go generics 2025-11-21 16:56:26 +01:00
0cd428d5d9 feat: use connection pooling instead of a single connection 2025-11-21 16:53:46 +01:00
5c239ad61d feat: add missing GetVoteCountsByPostID method to the errorVoteRepository test mock 2025-11-21 16:50:23 +01:00
01f2b1fe75 feat: remove loop and use GetVoteCountsByPostID 2025-11-21 16:48:48 +01:00
28134c101c feat: add GetVoteCountsByPostID to the mock for testing 2025-11-21 16:48:15 +01:00
2f78370d43 feat: GetVoteCountsByPostID: use a single sql query to returns up votes and down votes counts 2025-11-21 16:47:52 +01:00
39598a166d feat: remove redundat getbyemail call to reduce db query by 2 (1Q/user creation instead of 2) 2025-11-21 16:43:46 +01:00
fa9474d863 revert: db transaction use, avoiding the pgx RETURNING issue while maintaining data consistency 2025-11-21 16:31:06 +01:00
34a97994b3 feat: improve testing to use production code paths and better coverage 2025-11-21 16:26:21 +01:00
eb5f93ffd0 clean: remove duplicate sequential helpers 2025-11-21 16:25:27 +01:00
697f201d60 feat: use database transactions to ensure atomicity 2025-11-21 16:21:04 +01:00
f4ab8bda45 feat: transaction rollback test 2025-11-21 16:20:41 +01:00
65576cc623 feat: keep seeding fast and predictable even when parallelized 2025-11-21 16:16:35 +01:00
a5b4e9bf25 feat: update tests to pass precomputed hashes 2025-11-21 16:11:42 +01:00
c020517ccf feat: reduce hashing cost by removing redundant password hashing 2025-11-21 16:11:33 +01:00
4cdda3f944 feat: remove bcrypt and use a precompute hash 2025-11-21 16:11:08 +01:00
ff471cd5dd fix: loop 2025-11-21 15:39:08 +01:00
df5e67c7f3 feat: add idempotency tests 2025-11-21 15:34:08 +01:00
b2580d2380 feat: make seeding idempotente 2025-11-21 15:33:59 +01:00
4749213bf0 feat: update test to accept randomized seed user identities 2025-11-21 15:26:29 +01:00
6470425b96 feat: avoid unique constraint failures on repeat runs by randomizing seed identities 2025-11-21 15:26:05 +01:00
14ae6f815b feat: update tests to verify clamping 2025-11-21 15:21:05 +01:00
73083e4188 feat: check zero/negative value in seeding 2025-11-21 15:20:57 +01:00
c907c4812b feat: add tests covering negative values for the three flags 2025-11-21 14:56:09 +01:00
c7f30070c0 feat: reject negative/nonsensical flag values with a clear error instead of letting slice/channel allocations panic 2025-11-21 14:55:51 +01:00
0dcd5fec51 fix: Makefile fuzz target to enumerate fuzz functions per package and run each individually 2025-11-21 14:30:37 +01:00
96c054aa99 feat: add new parameter 2025-11-21 13:13:27 +01:00
bdd7766275 docs: update readme 2025-11-21 13:13:18 +01:00
0b1241d371 docs: update readme 2025-11-21 13:11:47 +01:00
b300fc2f5e feat: new test for json output flag from config 2025-11-21 13:11:43 +01:00
f49bea4138 feat(config): read a flag in .env to set or not json output 2025-11-21 13:11:16 +01:00
79e072fe6b feat(cli): read .env value to set or not the json output 2025-11-21 13:10:53 +01:00
7fca1f78dc feat(cli): add a json output and tests 2025-11-21 13:00:03 +01:00
30a2e88685 docs: update readme 2025-11-20 18:55:08 +01:00
10f7220fb6 feat: install pg 18 2025-11-20 18:55:05 +01:00
08a934e388 feat: migrate to postgres 18 2025-11-20 18:54:58 +01:00
87dadfa4a8 feat: modernize loops 2025-11-19 13:13:51 +01:00
53c76eee8b feat: modernize loop 2025-11-17 16:24:40 +01:00
446915d5ee feat: modernize loop 2025-11-17 15:59:24 +01:00
dceb305ac7 feat: modernize statement using max() 2025-11-17 15:37:03 +01:00
e5b1f18beb docs: update readme regarding our new linting configuration 2025-11-15 11:45:54 +01:00
513e0c05b2 feat: creating my own hell by adding a suitable configuration for golangci-lint 2025-11-15 11:45:42 +01:00