#forms #multipart-form #data #builder #actix #multipart

actix-multipart-test

一个简单的 actix 多部分表单数据构建器

3 个版本

0.0.3 2024 年 1 月 11 日
0.0.2 2023 年 11 月 21 日
0.0.1 2023 年 11 月 21 日

1629 in Web 编程

Download history • Rust 包仓库 11/week @ 2024-04-13 • Rust 包仓库 17/week @ 2024-04-20 • Rust 包仓库 13/week @ 2024-04-27 • Rust 包仓库 35/week @ 2024-05-04 • Rust 包仓库 22/week @ 2024-05-11 • Rust 包仓库 7/week @ 2024-05-18 • Rust 包仓库 5/week @ 2024-05-25 • Rust 包仓库 71/week @ 2024-06-01 • Rust 包仓库 5/week @ 2024-06-08 • Rust 包仓库 43/week @ 2024-06-15 • Rust 包仓库 27/week @ 2024-06-22 • Rust 包仓库 10/week @ 2024-06-29 • Rust 包仓库 8/week @ 2024-07-06 • Rust 包仓库 29/week @ 2024-07-13 • Rust 包仓库 85/week @ 2024-07-20 • Rust 包仓库 33/week @ 2024-07-27 • Rust 包仓库

每月 155 次下载

Apache-2.0

58KB
91

Actix Multipart 表单数据测试

这是使用 actix-web 端点测试多部分表单数据的一个简单示例。

用法

#[cfg(test)]
mod tests {

    use actix_multipart_test::MultiPartFormDataBuilder;
    use actix_web::{test, App};
    use super::*;

    #[actix_web::test]
    async fn test_should_upload_file() {
        
        let mut app =
            test::init_service(
                    App::new()
                    .service(yourmultipartformhandler)
                )
                .await;

        let mut multipart_form_data_builder = MultiPartFormDataBuilder::new();
        multipart_form_data_builder.with_file("tests/sample.png", "sample", "image/png", "sample.png");
        multipart_form_data_builder.with_text("name", "some_name");
        let (header, body) = multipart_form_data_builder.build();
        
        let req = test::TestRequest::post()
            .uri("/somerurl")
            .insert_header(header)
            .set_payload(body)
            .to_request();
        let resp = test::call_service(&mut app, req).await;

        assert!(resp.status().is_success());

    }
}

依赖项

~225KB