diff options
Diffstat (limited to 'lambda-calcul/haskell/test')
| -rw-r--r-- | lambda-calcul/haskell/test/Minilang/ServerSpec.hs | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/lambda-calcul/haskell/test/Minilang/ServerSpec.hs b/lambda-calcul/haskell/test/Minilang/ServerSpec.hs index e109977..a60c232 100644 --- a/lambda-calcul/haskell/test/Minilang/ServerSpec.hs +++ b/lambda-calcul/haskell/test/Minilang/ServerSpec.hs @@ -64,6 +64,15 @@ spec = with (app testSeed) $ do postJSON "/api/register" alice `shouldRespondWith` 400 + it "DELETE /api/register returns 200 and deletes user score given user is registered" $ do + void $ postJSON "/api/register" alice + + request "DELETE" ("/api/register?token=" <> LBS.toStrict token) [] "" + `shouldRespondWith` 200 + + get ("/api/score?token=" <> LBS.toStrict token) + `shouldRespondWith` 404 + it "GET /api/challenge returns next challenge given user is registered" $ do let expected = LT.unpack $ decodeUtf8 $ encode $ Challenge {level = 0, expr = "x"} postJSON "/api/register" alice @@ -134,9 +143,9 @@ spec = with (app testSeed) $ do Left err -> Just $ "Failed to decode JSON: " ++ err } - it "GET /api/score returns 400 given token is not registered" $ do + it "GET /api/score returns 404 given token is not registered" $ do get ("/api/score?token=" <> LBS.toStrict token) - `shouldRespondWith` 400 + `shouldRespondWith` 404 it "GET /api/score returns score with success given last challenge succeeded" $ do void $ postJSON "/api/register" alice |
