macros.rs 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. use tracing_core::{
  2. callsite::Callsite,
  3. metadata,
  4. metadata::{Kind, Level, Metadata},
  5. subscriber::Interest,
  6. };
  7. #[test]
  8. fn metadata_macro_api() {
  9. // This test should catch any inadvertent breaking changes
  10. // caused by changes to the macro.
  11. struct TestCallsite;
  12. impl Callsite for TestCallsite {
  13. fn set_interest(&self, _: Interest) {
  14. unimplemented!("test")
  15. }
  16. fn metadata(&self) -> &Metadata<'_> {
  17. unimplemented!("test")
  18. }
  19. }
  20. static CALLSITE: TestCallsite = TestCallsite;
  21. let _metadata = metadata! {
  22. name: "test_metadata",
  23. target: "test_target",
  24. level: Level::DEBUG,
  25. fields: &["foo", "bar", "baz"],
  26. callsite: &CALLSITE,
  27. kind: Kind::SPAN,
  28. };
  29. let _metadata = metadata! {
  30. name: "test_metadata",
  31. target: "test_target",
  32. level: Level::TRACE,
  33. fields: &[],
  34. callsite: &CALLSITE,
  35. kind: Kind::EVENT,
  36. };
  37. let _metadata = metadata! {
  38. name: "test_metadata",
  39. target: "test_target",
  40. level: Level::INFO,
  41. fields: &[],
  42. callsite: &CALLSITE,
  43. kind: Kind::EVENT
  44. };
  45. }