LukeMathWalker / zero-to-production

Code for "Zero To Production In Rust", a book on API development using Rust.
https://www.zero2prod.com
Apache License 2.0
5.43k stars 470 forks source link

newsletter::newsletter_creation_is_idempotent at the end of 11.8 does not actually work #236

Open rlpowell opened 7 months ago

rlpowell commented 7 months ago

The test requires that the repeated response have a flash message, which is not in fact in the code; I had to add it like so:

    // Return early if we have a saved response in the database
    if let Some(saved_response) = get_saved_response(&pool, &idempotency_key, *user_id)
        .await
        .map_err(e500)?
    {
        FlashMessage::info("The newsletter issue has been published!").send();
        return Ok(saved_response);
    }

I believe this is the same method that https://github.com/LukeMathWalker/zero-to-production/blob/root-chapter-11/src/routes/admin/newsletter/post.rs#L50 uses later in the chapter.