1
0
mirror of https://github.com/actix/examples synced 2025-02-25 10:32:49 +01:00

Update database_interactions/diesel to v4 (#507)

This commit is contained in:
Luca Palmieri 2022-01-31 02:46:08 +00:00 committed by GitHub
parent 4d2b948bcf
commit 8fae03844c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 15 additions and 25 deletions

5
Cargo.lock generated
View File

@ -2257,11 +2257,10 @@ dependencies = [
name = "diesel-example" name = "diesel-example"
version = "1.0.0" version = "1.0.0"
dependencies = [ dependencies = [
"actix-rt 1.1.1", "actix-web 4.0.0-beta.21",
"actix-web 3.3.3",
"diesel", "diesel",
"dotenv", "dotenv",
"env_logger 0.8.4", "env_logger 0.9.0",
"failure", "failure",
"futures", "futures",
"serde 1.0.136", "serde 1.0.136",

View File

@ -8,15 +8,12 @@ authors = [
edition = "2018" edition = "2018"
[dependencies] [dependencies]
actix-web = "3" actix-web = "4.0.0-beta.21"
diesel = { version = "^1.1.0", features = ["sqlite", "r2d2"] } diesel = { version = "1.4.8", features = ["sqlite", "r2d2"] }
dotenv = "0.15" dotenv = "0.15"
env_logger = "0.8" env_logger = "0.9.0"
failure = "0.1.8" failure = "0.1.8"
futures = "0.3.1" futures = "0.3.1"
serde = { version = "1.0", features = ["derive"] } serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0" serde_json = "1.0"
uuid = { version = "0.8", features = ["serde", "v4"] } uuid = { version = "0.8", features = ["serde", "v4"] }
[dev-dependencies]
actix-rt = "1"

View File

@ -30,11 +30,8 @@ async fn get_user(
let conn = pool.get()?; let conn = pool.get()?;
actions::find_user_by_uid(user_uid, &conn) actions::find_user_by_uid(user_uid, &conn)
}) })
.await .await?
.map_err(|e| { .map_err(actix_web::error::ErrorInternalServerError)?;
eprintln!("{}", e);
HttpResponse::InternalServerError().finish()
})?;
if let Some(user) = user { if let Some(user) = user {
Ok(HttpResponse::Ok().json(user)) Ok(HttpResponse::Ok().json(user))
@ -56,11 +53,8 @@ async fn add_user(
let conn = pool.get()?; let conn = pool.get()?;
actions::insert_new_user(&form.name, &conn) actions::insert_new_user(&form.name, &conn)
}) })
.await .await?
.map_err(|e| { .map_err(actix_web::error::ErrorInternalServerError)?;
eprintln!("{}", e);
HttpResponse::InternalServerError().finish()
})?;
Ok(HttpResponse::Ok().json(user)) Ok(HttpResponse::Ok().json(user))
} }
@ -86,7 +80,7 @@ async fn main() -> std::io::Result<()> {
HttpServer::new(move || { HttpServer::new(move || {
App::new() App::new()
// set up DB pool to be used with web::Data<Pool> extractor // set up DB pool to be used with web::Data<Pool> extractor
.data(pool.clone()) .app_data(web::Data::new(pool.clone()))
.wrap(middleware::Logger::default()) .wrap(middleware::Logger::default())
.service(get_user) .service(get_user)
.service(add_user) .service(add_user)
@ -101,7 +95,7 @@ mod tests {
use super::*; use super::*;
use actix_web::test; use actix_web::test;
#[actix_rt::test] #[actix_web::test]
async fn user_routes() { async fn user_routes() {
std::env::set_var("RUST_LOG", "actix_web=debug"); std::env::set_var("RUST_LOG", "actix_web=debug");
env_logger::init(); env_logger::init();
@ -115,7 +109,7 @@ mod tests {
let mut app = test::init_service( let mut app = test::init_service(
App::new() App::new()
.data(pool.clone()) .app_data(web::Data::new(pool.clone()))
.wrap(middleware::Logger::default()) .wrap(middleware::Logger::default())
.service(get_user) .service(get_user)
.service(add_user), .service(add_user),
@ -130,7 +124,7 @@ mod tests {
}) })
.to_request(); .to_request();
let resp: models::User = test::read_response_json(&mut app, req).await; let resp: models::User = test::call_and_read_body_json(&mut app, req).await;
assert_eq!(resp.name, "Test user"); assert_eq!(resp.name, "Test user");
@ -139,7 +133,7 @@ mod tests {
.uri(&format!("/user/{}", resp.id)) .uri(&format!("/user/{}", resp.id))
.to_request(); .to_request();
let resp: models::User = test::read_response_json(&mut app, req).await; let resp: models::User = test::call_and_read_body_json(&mut app, req).await;
assert_eq!(resp.name, "Test user"); assert_eq!(resp.name, "Test user");