alamb commented on code in PR #7783:
URL: https://github.com/apache/arrow-rs/pull/7783#discussion_r2178211552


##########
parquet-variant/tests/test_json_to_variant.rs:
##########
@@ -166,281 +247,291 @@ fn test_json_to_variant() -> Result<(), ArrowError> {
             28,
         )?),
     }
-    .run()?;
-    // Double
+    .run()
+}
+
+#[test]
+fn test_json_to_variant_double_precision() -> Result<(), ArrowError> {
     JsonToVariantTest {
         json: "0.79228162514264337593543950335",
         expected: Variant::Double(0.792_281_625_142_643_3_f64),
     }
-    .run()?;
+    .run()
+}
+
+#[test]
+fn test_json_to_variant_double_scientific_positive() -> Result<(), ArrowError> 
{
     JsonToVariantTest {
         json: "15e-1",
         expected: Variant::Double(15e-1f64),
     }
-    .run()?;
+    .run()
+}
+
+#[test]
+fn test_json_to_variant_double_scientific_negative() -> Result<(), ArrowError> 
{
     JsonToVariantTest {
         json: "-15e-1",
         expected: Variant::Double(-15e-1f64),
     }
-    .run()?;
-    // short strings
-    // random short string
+    .run()
+}
+
+#[test]
+fn test_json_to_variant_short_string() -> Result<(), ArrowError> {
     JsonToVariantTest {
         json: "\"harsh\"",
         expected: Variant::ShortString(ShortString::try_new("harsh")?),
     }
-    .run()?;
-    // longest short string
+    .run()
+}
+
+#[test]
+fn test_json_to_variant_short_string_max_length() -> Result<(), ArrowError> {
     JsonToVariantTest {
         json: &format!("\"{}\"", "a".repeat(63)),
         expected: Variant::ShortString(ShortString::try_new(&"a".repeat(63))?),
     }
-    .run()?;
-    // long strings
+    .run()
+}
+
+#[test]
+fn test_json_to_variant_long_string() -> Result<(), ArrowError> {
     JsonToVariantTest {
         json: &format!("\"{}\"", "a".repeat(64)),
         expected: Variant::String(&"a".repeat(64)),
     }
-    .run()?;
+    .run()
+}
+
+#[test]
+fn test_json_to_variant_very_long_string() -> Result<(), ArrowError> {
     JsonToVariantTest {
         json: &format!("\"{}\"", "b".repeat(100000)),
         expected: Variant::String(&"b".repeat(100000)),
     }
-    .run()?;
+    .run()
+}
 
-    // arrays
-    // u8 offset
-    {
-        let mut variant_builder = VariantBuilder::new();
-        let mut list_builder = variant_builder.new_list();
-        list_builder.append_value(Variant::Int8(127));
-        list_builder.append_value(Variant::Int16(128));
-        list_builder.append_value(Variant::Int32(-32767431));
-        list_builder.finish();
-        let (metadata, value) = variant_builder.finish();
-        let variant = Variant::try_new(&metadata, &value)?;
+#[test]
+fn test_json_to_variant_array_simple() -> Result<(), ArrowError> {
+    let mut variant_builder = VariantBuilder::new();
+    let mut list_builder = variant_builder.new_list();
+    list_builder.append_value(Variant::Int8(127));
+    list_builder.append_value(Variant::Int16(128));
+    list_builder.append_value(Variant::Int32(-32767431));
+    list_builder.finish();
+    let (metadata, value) = variant_builder.finish();
+    let variant = Variant::try_new(&metadata, &value)?;
 
-        JsonToVariantTest {
-            json: "[127, 128, -32767431]",
-            expected: variant,
-        }
-        .run()?;
+    JsonToVariantTest {
+        json: "[127, 128, -32767431]",
+        expected: variant,
     }
-    {
-        let mut variant_builder = VariantBuilder::new();
-        let mut list_builder = variant_builder.new_list();
-        let mut object_builder_inner = list_builder.new_object();
-        object_builder_inner.insert("age", Variant::Int8(32));
-        object_builder_inner.finish().unwrap();
-        list_builder.append_value(Variant::Int16(128));
-        list_builder.append_value(Variant::BooleanFalse);
-        list_builder.finish();
-        let (metadata, value) = variant_builder.finish();
-        let variant = Variant::try_new(&metadata, &value)?;
+    .run()
+}
 
-        JsonToVariantTest {
-            json: "[{\"age\": 32}, 128, false]",
-            expected: variant,
-        }
-        .run()?;
+#[test]
+fn test_json_to_variant_array_with_object() -> Result<(), ArrowError> {
+    let mut variant_builder = VariantBuilder::new();
+    let mut list_builder = variant_builder.new_list();
+    let mut object_builder_inner = list_builder.new_object();
+    object_builder_inner.insert("age", Variant::Int8(32));
+    object_builder_inner.finish().unwrap();
+    list_builder.append_value(Variant::Int16(128));
+    list_builder.append_value(Variant::BooleanFalse);
+    list_builder.finish();
+    let (metadata, value) = variant_builder.finish();
+    let variant = Variant::try_new(&metadata, &value)?;
+
+    JsonToVariantTest {
+        json: "[{\"age\": 32}, 128, false]",
+        expected: variant,
     }
+    .run()
+}
+
+#[test]
+fn test_json_to_variant_array_large_u16_offset() -> Result<(), ArrowError> {
     // u16 offset - 128 i8's + 1 "true" = 257 bytes
-    {
-        let mut variant_builder = VariantBuilder::new();
-        let mut list_builder = variant_builder.new_list();
-        for _ in 0..128 {
-            list_builder.append_value(Variant::Int8(1));
-        }
-        list_builder.append_value(Variant::BooleanTrue);
-        list_builder.finish();
-        let (metadata, value) = variant_builder.finish();
-        let variant = Variant::try_new(&metadata, &value)?;
+    let mut variant_builder = VariantBuilder::new();
+    let mut list_builder = variant_builder.new_list();
+    for _ in 0..128 {
+        list_builder.append_value(Variant::Int8(1));
+    }
+    list_builder.append_value(Variant::BooleanTrue);
+    list_builder.finish();
+    let (metadata, value) = variant_builder.finish();
+    let variant = Variant::try_new(&metadata, &value)?;
 
-        JsonToVariantTest {
-            json: &format!("[{} true]", "1, ".repeat(128)),
-            expected: variant,
-        }
-        .run()?;
+    JsonToVariantTest {
+        json: &format!("[{} true]", "1, ".repeat(128)),
+        expected: variant,
     }
+    .run()
+}
+
+#[test]
+fn test_json_to_variant_array_nested_large() -> Result<(), ArrowError> {
     // verify u24, and large_size
-    {
-        let mut variant_builder = VariantBuilder::new();
-        let mut list_builder = variant_builder.new_list();
-        for _ in 0..256 {
-            let mut list_builder_inner = list_builder.new_list();
-            for _ in 0..255 {
-                list_builder_inner.append_value(Variant::Null);
-            }
-            list_builder_inner.finish();
+    let mut variant_builder = VariantBuilder::new();
+    let mut list_builder = variant_builder.new_list();
+    for _ in 0..256 {
+        let mut list_builder_inner = list_builder.new_list();
+        for _ in 0..255 {
+            list_builder_inner.append_value(Variant::Null);
         }
-        list_builder.finish();
-        let (metadata, value) = variant_builder.finish();
-        let variant = Variant::try_new(&metadata, &value)?;
-        let intermediate = format!("[{}]", vec!["null"; 255].join(", "));
-        let json = format!("[{}]", vec![intermediate; 256].join(", "));
-        JsonToVariantTest {
-            json: json.as_str(),
-            expected: variant,
-        }
-        .run()?;
+        list_builder_inner.finish();
     }
+    list_builder.finish();
+    let (metadata, value) = variant_builder.finish();
+    let variant = Variant::try_new(&metadata, &value)?;
+    let intermediate = format!("[{}]", vec!["null"; 255].join(", "));
+    let json = format!("[{}]", vec![intermediate; 256].join(", "));
+    JsonToVariantTest {
+        json: json.as_str(),
+        expected: variant,
+    }
+    .run()
+}
 
-    // objects
-    {
-        let mut variant_builder = VariantBuilder::new();
-        let mut object_builder = variant_builder.new_object();
-        object_builder.insert("b", Variant::Int8(2));
-        object_builder.insert("a", Variant::Int8(3));
-        object_builder.finish().unwrap();
-        let (metadata, value) = variant_builder.finish();
-        let variant = Variant::try_new(&metadata, &value)?;
-        JsonToVariantTest {
-            json: "{\"b\": 2, \"a\": 1, \"a\": 3}",
-            expected: variant,
-        }
-        .run()?;
+#[test]
+fn test_json_to_variant_object_simple() -> Result<(), ArrowError> {
+    let mut variant_builder = VariantBuilder::new();
+    let mut object_builder = variant_builder.new_object();
+    object_builder.insert("b", Variant::Int8(2));
+    object_builder.insert("a", Variant::Int8(3));
+    object_builder.finish().unwrap();
+    let (metadata, value) = variant_builder.finish();
+    let variant = Variant::try_new(&metadata, &value)?;
+    JsonToVariantTest {
+        json: "{\"b\": 2, \"a\": 1, \"a\": 3}",
+        expected: variant,
     }
-    {

Review Comment:
   this one was copy/paste duplicated (found by claude / copilot)



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscr...@arrow.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to