File tree Expand file tree Collapse file tree 19 files changed +293
-292
lines changed
internal/test_helpers/fixtures Expand file tree Collapse file tree 19 files changed +293
-292
lines changed Original file line number Diff line number Diff line change @@ -23,8 +23,6 @@ copy_course_file:
2323 | base64 -d \
2424 > internal/test_helpers/course_definition.yml
2525
26- record_fixtures :
27- CODECRAFTERS_RECORD_FIXTURES=true make test
2826
2927update_tester_utils :
3028 go get -u github.com/codecrafters-io/tester-utils
Original file line number Diff line number Diff line change @@ -18,7 +18,7 @@ case "$1" in
1818 record_fixtures)
1919 echo " 📝 Recording fixtures using Docker container"
2020 docker_build
21- docker run --rm -it -v " $( pwd) " :/app -w /app redis-tester make record_fixtures
21+ docker run --rm -it -e CODECRAFTERS_RECORD_FIXTURES=true - v " $( pwd) " :/app -w /app redis-tester make test
2222 ;;
2323 * )
2424 echo " Usage:"
Original file line number Diff line number Diff line change @@ -5,7 +5,7 @@ go 1.24.0
55toolchain go1.24.2
66
77require (
8- github.com/codecrafters-io/tester-utils v0.4.9
8+ github.com/codecrafters-io/tester-utils v0.4.13
99 github.com/dustin/go-humanize v1.0.1
1010 github.com/hdt3213/rdb v1.2.0
1111 github.com/stretchr/testify v1.10.0
@@ -14,6 +14,7 @@ require (
1414)
1515
1616require (
17+ github.com/creack/pty v1.1.24 // indirect
1718 github.com/davecgh/go-spew v1.1.1 // indirect
1819 github.com/fatih/color v1.18.0 // indirect
1920 github.com/mattn/go-colorable v0.1.14 // indirect
Original file line number Diff line number Diff line change @@ -6,8 +6,10 @@ github.com/chenzhuoyu/base64x v0.0.0-20211019084208-fb5309c8db06/go.mod h1:DH46F
66github.com/chenzhuoyu/base64x v0.0.0-20221115062448-fe3a3abad311 /go.mod h1:b583jCggY9gE99b6G5LEC39OIiVsWj+R97kbl5odCEk =
77github.com/cloudwego/base64x v0.1.4 /go.mod h1:0zlkT4Wn5C6NdauXdJRhSKRlJvmclQ1hhJgA0rcu/8w =
88github.com/cloudwego/iasm v0.2.0 /go.mod h1:8rXZaNYT2n95jn+zTI1sDr+IgcD2GVs0nlbbQPiEFhY =
9- github.com/codecrafters-io/tester-utils v0.4.9 h1:4J9ZdYB8A2vktofPK9ZlaaXOXP1dZD9zSv6cwDZ9srU =
10- github.com/codecrafters-io/tester-utils v0.4.9 /go.mod h1:Fyrv4IebzjWtvKfpYf8ooYDoOtjYe2qx8bV7KAJpX+w =
9+ github.com/codecrafters-io/tester-utils v0.4.13 h1:6mX5QxR/yM17eW+TfI17iwtmOwTKQnjyDpWllzNrI8I =
10+ github.com/codecrafters-io/tester-utils v0.4.13 /go.mod h1:uhbl+sCQIv2Hg4QUZuKQarVR5cuhDbpVKId8KUF2cX8 =
11+ github.com/creack/pty v1.1.24 h1:bJrF4RRfyJnbTJqzRLHzcGaZK1NeM5kTC9jGgovnR1s =
12+ github.com/creack/pty v1.1.24 /go.mod h1:08sCNb52WyoAwi2QDyzUCTgcvVFhUzewun7wtTfvcwE =
1113github.com/davecgh/go-spew v1.1.0 /go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38 =
1214github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c =
1315github.com/davecgh/go-spew v1.1.1 /go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38 =
Original file line number Diff line number Diff line change @@ -2,9 +2,9 @@ Debug = true
22
33[33m[tester::#UV9] [0m[94mRunning tests for Stage #UV9 (uv9)[0m
44[33m[tester::#UV9] [0m[94m$ ./spawn_redis_server.sh[0m
5- [33m[your_program] [0mLogs from your program will appear here!
6- [33m[your_program] [0mThis server always replies with 'nopass' flag present for ACL GETUSER. See commands.go:handleAclGetUser()
7- [33m[your_program] [0mRedis server listening on 0.0.0.0:6379
5+ [33m[your_program] [0m[ 0mLogs from your program will appear here![0m
6+ [33m[your_program] [0m[ 0mThis server always replies with 'nopass' flag present for ACL GETUSER. See commands.go:handleAclGetUser()[0m
7+ [33m[your_program] [0m[ 0mRedis server listening on 0.0.0.0:6379[0m
88[33m[tester::#UV9] [client] [0m[94m$ redis-cli ACL GETUSER default[0m
99[33m[tester::#UV9] [client] [0m[36mSent bytes: "*3\r\n$3\r\nACL\r\n$7\r\nGETUSER\r\n$7\r\ndefault\r\n"[0m
1010[33m[tester::#UV9] [client] [0m[36mReceived bytes: "*4\r\n$5\r\nflags\r\n*1\r\n$6\r\nnopass\r\n$9\r\npasswords\r\n*0\r\n"[0m
Original file line number Diff line number Diff line change @@ -2,9 +2,9 @@ Debug = true
22
33[33m[tester::#PL7] [0m[94mRunning tests for Stage #PL7 (pl7)[0m
44[33m[tester::#PL7] [0m[94m$ ./spawn_redis_server.sh[0m
5- [33m[your_program] [0mLogs from your program will appear here!
6- [33m[your_program] [0mThis server always replies "password" instead of "passwords" for ACL GETUSER. See command.go:handleAclGetUser()
7- [33m[your_program] [0mRedis server listening on 0.0.0.0:6379
5+ [33m[your_program] [0m[ 0mLogs from your program will appear here![0m
6+ [33m[your_program] [0m[ 0mThis server always replies "password" instead of "passwords" for ACL GETUSER. See command.go:handleAclGetUser()[0m
7+ [33m[your_program] [0m[ 0mRedis server listening on 0.0.0.0:6379[0m
88[33m[tester::#PL7] [client] [0m[94m$ redis-cli ACL GETUSER default[0m
99[33m[tester::#PL7] [client] [0m[36mSent bytes: "*3\r\n$3\r\nACL\r\n$7\r\nGETUSER\r\n$7\r\ndefault\r\n"[0m
1010[33m[tester::#PL7] [client] [0m[36mReceived bytes: "*4\r\n$5\r\nflags\r\n*1\r\n$6\r\nnopass\r\n$8\r\npassword\r\n*0\r\n"[0m
Original file line number Diff line number Diff line change @@ -2,9 +2,9 @@ Debug = true
22
33[33m[tester::#UV9] [0m[94mRunning tests for Stage #UV9 (uv9)[0m
44[33m[tester::#UV9] [0m[94m$ ./spawn_redis_server.sh[0m
5- [33m[your_program] [0mLogs from your program will appear here!
6- [33m[your_program] [0mThis server always replies with an incorrect password hash in ACL GETUSER. See users.go:hashPassword()
7- [33m[your_program] [0mRedis server listening on 0.0.0.0:6379
5+ [33m[your_program] [0m[ 0mLogs from your program will appear here![0m
6+ [33m[your_program] [0m[ 0mThis server always replies with an incorrect password hash in ACL GETUSER. See users.go:hashPassword()[0m
7+ [33m[your_program] [0m[ 0mRedis server listening on 0.0.0.0:6379[0m
88[33m[tester::#UV9] [client] [0m[94m$ redis-cli ACL GETUSER default[0m
99[33m[tester::#UV9] [client] [0m[36mSent bytes: "*3\r\n$3\r\nACL\r\n$7\r\nGETUSER\r\n$7\r\ndefault\r\n"[0m
1010[33m[tester::#UV9] [client] [0m[36mReceived bytes: "*4\r\n$5\r\nflags\r\n*1\r\n$6\r\nnopass\r\n$9\r\npasswords\r\n*0\r\n"[0m
Original file line number Diff line number Diff line change 11[33m[tester::#JM1] [0m[94mRunning tests for Stage #JM1 (jm1)[0m
22[33m[tester::#JM1] [0m[94m$ ./spawn_redis_server.sh[0m
33[33m[tester::#JM1] [0m[94mConnecting to port 6379...[0m
4- [33m[your_program] [0mhey, not going to bind!
4+ [33m[your_program] [0m[ 0mhey, not going to bind![0m
55[33m[tester::#JM1] [0m[91mFailed to connect to port 6379.[0m
66[33m[tester::#JM1] [0m[91mTest failed[0m
Original file line number Diff line number Diff line change @@ -3,7 +3,7 @@ Debug = true
33[33m[tester::#JM1] [0m[94mRunning tests for Stage #JM1 (jm1)[0m
44[33m[tester::#JM1] [0m[94m$ ./spawn_redis_server.sh[0m
55[33m[tester::#JM1] [0m[94mConnecting to port 6379...[0m
6- [33m[your_program] [0mhey, binding to 6379
6+ [33m[your_program] [0m[ 0mhey, binding to 6379[0m
77[33m[tester::#JM1] [0m[36mConnection successful[0m
88[33m[tester::#JM1] [0m[92mTest passed.[0m
99[33m[tester::#JM1] [0m[36mTerminating program[0m
Original file line number Diff line number Diff line change 11[33m[tester::#JM1] [0m[94mRunning tests for Stage #JM1 (jm1)[0m
22[33m[tester::#JM1] [0m[94m$ ./spawn_redis_server.sh[0m
33[33m[tester::#JM1] [0m[94mConnecting to port 6379...[0m
4- [33m[your_program] [0mhey, not going to bind!
4+ [33m[your_program] [0m[ 0mhey, not going to bind![0m
55[33m[tester::#JM1] [0m[94mFailed to connect to port 6379, retrying in 1s[0m
66[33m[tester::#JM1] [0m[94mFailed to connect to port 6379, retrying in 1s[0m
77[33m[tester::#JM1] [0m[94mFailed to connect to port 6379, retrying in 1s[0m
You can’t perform that action at this time.
0 commit comments