MCPcopy Create free account
hub / github.com/apache/datafusion / oss_object_store_builder

Function oss_object_store_builder

datafusion-cli/src/object_storage.rs:824–853  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

822
823 #[tokio::test]
824 async fn oss_object_store_builder() -> Result<()> {
825 let access_key_id = "fake_access_key_id";
826 let secret_access_key = "fake_secret_access_key";
827 let endpoint = "fake_endpoint";
828 let location = "oss://bucket/path/file.parquet";
829
830 let table_url = ListingTableUrl::parse(location)?;
831 let scheme = table_url.scheme();
832 let sql = format!(
833 "CREATE EXTERNAL TABLE test STORED AS PARQUET OPTIONS('aws.access_key_id' '{access_key_id}', 'aws.secret_access_key' '{secret_access_key}', 'aws.oss.endpoint' '{endpoint}') LOCATION '{location}'"
834 );
835
836 let ctx = SessionContext::new();
837 ctx.register_table_options_extension_from_scheme(scheme);
838 let table_options = get_table_options(&ctx, &sql).await;
839
840 let aws_options = table_options.extensions.get::<AwsOptions>().unwrap();
841 let builder = get_oss_object_store_builder(table_url.as_ref(), aws_options)?;
842 // get the actual configuration information, then assert_eq!
843 let config = [
844 (AmazonS3ConfigKey::AccessKeyId, access_key_id),
845 (AmazonS3ConfigKey::SecretAccessKey, secret_access_key),
846 (AmazonS3ConfigKey::Endpoint, endpoint),
847 ];
848 for (key, value) in config {
849 assert_eq!(value, builder.get_config_value(&key).unwrap());
850 }
851
852 Ok(())
853 }
854
855 #[tokio::test]
856 async fn gcs_object_store_builder() -> Result<()> {

Callers

nothing calls this directly

Calls 6

newFunction · 0.85
get_table_optionsFunction · 0.85
schemeMethod · 0.80
as_refMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…