about summary refs log tree commit diff
path: root/tvix/eval/builtin-macros/tests/tests.rs
diff options
context:
space:
mode:
authorVincent Ambo <mail@tazj.in>2022-12-19T10·23+0300
committertazjin <tazjin@tvl.su>2022-12-21T23·05+0000
commit908cebf35c4e9be1fa91cb558389b7e80b6d0b77 (patch)
treefe5eab3dc31b963e799104983bddfac2eaddc4c0 /tvix/eval/builtin-macros/tests/tests.rs
parent270b1084e890d2c69456d342e6e2cad7e13ad9a7 (diff)
fix(tvix/builtin-macros): parse multi-line docstrings correctly r/5468
Having a multi-line docstring yields multiple doc-attributes in order,
however we were previously discarding all but the first one.

This reduces them into a single string instead, which can then be
displayed as multi-line documentation.

Change-Id: I1f237956cdea2e4c746d3f13744e0373c1c645a6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7594
Reviewed-by: grfn <grfn@gws.fyi>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Diffstat (limited to 'tvix/eval/builtin-macros/tests/tests.rs')
-rw-r--r--tvix/eval/builtin-macros/tests/tests.rs13
1 files changed, 11 insertions, 2 deletions
diff --git a/tvix/eval/builtin-macros/tests/tests.rs b/tvix/eval/builtin-macros/tests/tests.rs
index b270594b0f33..5705d9202f6e 100644
--- a/tvix/eval/builtin-macros/tests/tests.rs
+++ b/tvix/eval/builtin-macros/tests/tests.rs
@@ -7,7 +7,9 @@ mod builtins {
     use tvix_eval::internal::VM;
     use tvix_eval::{ErrorKind, Value};
 
-    /// Test docstring
+    /// Test docstring.
+    ///
+    /// It has multiple lines!
     #[builtin("identity")]
     pub fn builtin_identity(_vm: &mut VM, x: Value) -> Result<Value, ErrorKind> {
         Ok(x)
@@ -25,5 +27,12 @@ fn builtins() {
     assert_eq!(builtins.len(), 2);
 
     let identity = builtins.iter().find(|b| b.name() == "identity").unwrap();
-    assert_eq!(identity.documentation(), Some(" Test docstring"));
+    assert_eq!(
+        identity.documentation(),
+        Some(
+            r#" Test docstring.
+
+ It has multiple lines!"#
+        )
+    );
 }