summaryrefslogtreecommitdiff
path: root/systems/asset/macros/src/lib.rs
diff options
context:
space:
mode:
Diffstat (limited to 'systems/asset/macros/src/lib.rs')
-rw-r--r--systems/asset/macros/src/lib.rs43
1 files changed, 0 insertions, 43 deletions
diff --git a/systems/asset/macros/src/lib.rs b/systems/asset/macros/src/lib.rs
deleted file mode 100644
index 1535af0..0000000
--- a/systems/asset/macros/src/lib.rs
+++ /dev/null
@@ -1,43 +0,0 @@
-use proc_macro::TokenStream;
-use quote::quote;
-use string_proc::snake_case;
-use syn::parse_macro_input;
-
-#[proc_macro_derive(RWDataTest)]
-pub fn rw_data_test_derive(input: TokenStream) -> TokenStream {
- let input = parse_macro_input!(input as syn::DeriveInput);
- let name = &input.ident;
- let test_mod_name = syn::Ident::new(
- &format!("{}_rw_test", snake_case!(name.to_string())),
- name.span(),
- );
-
- let expanded = quote! {
- #[cfg(test)]
- mod #test_mod_name {
- use super::*;
- use asset_system::rw::RWData;
-
- #[tokio::test]
- async fn test() {
- let temp_dir = std::env::current_dir().unwrap().join(".temp/");
- tokio::fs::create_dir_all(&temp_dir)
- .await
- .expect("Create dir failed!");
- let temp_file = temp_dir.join(stringify!(#name));
-
- #name::write(#name::test_data(), &temp_file)
- .await
- .expect("Write test data failed!");
-
- let read_data = #name::read(&temp_file)
- .await
- .expect("Re-read data failed!");
-
- assert!(#name::verify_data(#name::test_data(), read_data));
- }
- }
- };
-
- TokenStream::from(expanded)
-}