You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@avro.apache.org by mg...@apache.org on 2022/03/03 12:04:27 UTC

[avro] 01/01: AVRO-1965: Add the unit test from the patch attached to AVRO-1965

This is an automated email from the ASF dual-hosted git repository.

mgrigorov pushed a commit to branch avro-1965-dont-mutate-schema
in repository https://gitbox.apache.org/repos/asf/avro.git

commit 02c4450d909e60922972a18ee3a1a0bd55f9d24a
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
AuthorDate: Thu Mar 3 14:03:23 2022 +0200

    AVRO-1965: Add the unit test from the patch attached to AVRO-1965
    
    Signed-off-by: Martin Tzvetanov Grigorov <mg...@apache.org>
---
 .../src/test/java/org/apache/avro/TestSchemaBuilder.java  | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/lang/java/avro/src/test/java/org/apache/avro/TestSchemaBuilder.java b/lang/java/avro/src/test/java/org/apache/avro/TestSchemaBuilder.java
index 77ee588..9334142 100644
--- a/lang/java/avro/src/test/java/org/apache/avro/TestSchemaBuilder.java
+++ b/lang/java/avro/src/test/java/org/apache/avro/TestSchemaBuilder.java
@@ -841,4 +841,19 @@ public class TestSchemaBuilder {
     Assert.assertEquals("Schema is able to be successfully created as is without validation", defaultValue,
         schema.getField(fieldName).defaultValue().asText());
   }
+
+  /**
+   * https://issues.apache.org/jira/browse/AVRO-1965
+   */
+  @Test
+  public void testNamespaceDefaulting() {
+    Schema d = SchemaBuilder.builder().intType();
+    Schema c = SchemaBuilder.record("c").fields().name("d").type(d).noDefault().endRecord();
+    Schema b = SchemaBuilder.record("b").fields().name("c").type(c).noDefault().endRecord();
+
+    Schema a1 = SchemaBuilder.record("default.a").fields().name("b").type(b).noDefault().endRecord();
+    Schema a2 = new Schema.Parser().parse(a1.toString());
+
+    Assert.assertEquals(a2, a1);
+  }
 }