From d9358c402006211ad05c0b34cd62701bc5df0cca Mon Sep 17 00:00:00 2001
From: naskya <m@naskya.net>
Date: Tue, 16 Jul 2024 08:40:45 +0900
Subject: [PATCH] test (backend-rs): make `ts_export`ed functions testable

---
 packages/backend-rs/src/federation/nodeinfo/generate.rs | 2 +-
 packages/backend-rs/src/misc/check_server_block.rs      | 6 +++---
 packages/macro-rs/macros/src/lib.rs                     | 3 +++
 3 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/packages/backend-rs/src/federation/nodeinfo/generate.rs b/packages/backend-rs/src/federation/nodeinfo/generate.rs
index c74fd55e10..6cad9e59ae 100644
--- a/packages/backend-rs/src/federation/nodeinfo/generate.rs
+++ b/packages/backend-rs/src/federation/nodeinfo/generate.rs
@@ -152,7 +152,7 @@ pub async fn nodeinfo_2_0() -> Result<Nodeinfo20, DbErr> {
     Ok(nodeinfo_2_1().await?.into())
 }
 
-#[cfg(feature = "napi")]
+#[cfg(any(test, doctest, feature = "napi"))]
 #[derive(thiserror::Error, Debug)]
 pub enum Error {
     #[doc = "database error"]
diff --git a/packages/backend-rs/src/misc/check_server_block.rs b/packages/backend-rs/src/misc/check_server_block.rs
index ecc50132ad..7456cc6f8a 100644
--- a/packages/backend-rs/src/misc/check_server_block.rs
+++ b/packages/backend-rs/src/misc/check_server_block.rs
@@ -8,7 +8,7 @@
 /// `host` - punycoded instance host
 ///
 /// # Example
-/// ```no_run
+/// ```ignore
 /// # use backend_rs::misc::check_server_block::is_blocked_server;
 /// # async fn f() -> Result<(), Box<dyn std::error::Error>> {
 /// assert_eq!(true, is_blocked_server("blocked.com").await?);
@@ -35,7 +35,7 @@ pub async fn is_blocked_server(host: &str) -> Result<bool, sea_orm::DbErr> {
 /// `host` - punycoded instance host
 ///
 /// # Example
-/// ```no_run
+/// ```ignore
 /// # use backend_rs::misc::check_server_block::is_silenced_server;
 /// # async fn f() -> Result<(), Box<dyn std::error::Error>> {
 /// assert_eq!(true, is_silenced_server("silenced.com").await?);
@@ -63,7 +63,7 @@ pub async fn is_silenced_server(host: &str) -> Result<bool, sea_orm::DbErr> {
 /// `host` - punycoded instance host
 ///
 /// # Example
-/// ```no_run
+/// ```ignore
 /// # use backend_rs::misc::check_server_block::is_allowed_server;
 /// # async fn f() -> Result<(), Box<dyn std::error::Error>> {
 /// assert_eq!(true, is_allowed_server("allowed.com").await?);
diff --git a/packages/macro-rs/macros/src/lib.rs b/packages/macro-rs/macros/src/lib.rs
index 6bc2c0ddc1..cadb00475d 100644
--- a/packages/macro-rs/macros/src/lib.rs
+++ b/packages/macro-rs/macros/src/lib.rs
@@ -71,6 +71,9 @@ define_wrapper_proc_macro_attributes! {
         #[cfg(feature = "napi")]
         #[macros::napi(#attr)]
         #item
+
+        #[cfg(any(test, doctest))]
+        #item
     }
 }