Ejemplo n.º 1
0
 @Test
 public void testNullNamespaceAlias() throws Exception {
   Schema s = Schema.parse("{\"type\":\"record\",\"name\":\"Z\",\"fields\":[]}");
   Schema t =
       Schema.parse(
           "{\"type\":\"record\",\"name\":\"x.Y\",\"aliases\":[\".Z\"]," + "\"fields\":[]}");
   Schema u = Schema.applyAliases(s, t);
   assertEquals("x.Y", u.getFullName());
 }
Ejemplo n.º 2
0
  @Test
  public void testAliases() throws Exception {
    String t1 =
        "{\"type\":\"record\",\"name\":\"a.b\",\"fields\":["
            + "{\"name\":\"f\",\"type\":\"long\"},"
            + "{\"name\":\"h\",\"type\":\"int\"}]}";
    String t2 =
        "{\"type\":\"record\",\"name\":\"x.y\",\"aliases\":[\"a.b\"],"
            + "\"fields\":[{\"name\":\"g\",\"type\":\"long\",\"aliases\":[\"f\"]},"
            + "{\"name\":\"h\",\"type\":\"int\"}]}";
    Schema s1 = Schema.parse(t1);
    Schema s2 = Schema.parse(t2);

    assertEquals(s1.getAliases(), Collections.emptySet());
    assertEquals(s1.getField("f").aliases(), Collections.emptySet());
    assertEquals(s2.getAliases(), Collections.singleton("a.b"));
    assertEquals(s2.getField("g").aliases(), Collections.singleton("f"));

    Schema s3 = Schema.applyAliases(s1, s2);
    assertFalse(s2 == s3);
    assertEquals(s2, s3);

    t1 = "{\"type\":\"enum\",\"name\":\"a.b\"," + "\"symbols\":[\"x\"]}";
    t2 = "{\"type\":\"enum\",\"name\":\"a.c\",\"aliases\":[\"b\"]," + "\"symbols\":[\"x\"]}";
    s1 = Schema.parse(t1);
    s2 = Schema.parse(t2);
    s3 = Schema.applyAliases(s1, s2);
    assertFalse(s2 == s3);
    assertEquals(s2, s3);

    t1 = "{\"type\":\"fixed\",\"name\":\"a\"," + "\"size\": 5}";
    t2 = "{\"type\":\"fixed\",\"name\":\"b\",\"aliases\":[\"a\"]," + "\"size\": 5}";
    s1 = Schema.parse(t1);
    s2 = Schema.parse(t2);
    s3 = Schema.applyAliases(s1, s2);
    assertFalse(s2 == s3);
    assertEquals(s2, s3);
  }