forked from mirrors/kingfisher
29 lines
768 B
Rust
29 lines
768 B
Rust
use anyhow::Result;
|
|
use kingfisher::s3::visit_bucket_objects;
|
|
|
|
#[tokio::test]
|
|
async fn test_visit_public_bucket() -> Result<()> {
|
|
let mut objects = Vec::new();
|
|
visit_bucket_objects(
|
|
"awsglue-datasets",
|
|
Some("examples/us-legislators/all/"),
|
|
None,
|
|
None,
|
|
|key, data| {
|
|
objects.push((key, data));
|
|
Ok(())
|
|
},
|
|
)
|
|
.await?;
|
|
|
|
assert!(
|
|
objects.iter().any(|(k, _)| k.ends_with("events.json")),
|
|
"events.json object not found"
|
|
);
|
|
let creds =
|
|
objects.iter().find(|(k, _)| k.ends_with("events.json")).expect("events.json object");
|
|
|
|
let body = std::str::from_utf8(&creds.1)?;
|
|
assert!(body.contains("Q4450263"), "expected events.json file");
|
|
Ok(())
|
|
}
|