예제 #1
0
  public void testWriteServicePropertiesWithoutKey() throws Exception {
    OsgiRepresentationHelper.writeServiceProperties(
        generator, serviceReferenceWithProperties(mapBuilder().put("matrix", "4x4")));

    JSONObject actual = outputAsObject();
    assertTrue("Missing sole key", actual.has("matrix"));
    assertEquals("Missing value", "4x4", actual.get("matrix"));
  }
예제 #2
0
  public void testWriteServicePropertiesWithKey() throws Exception {
    generator.writeStartObject();
    OsgiRepresentationHelper.writeServiceProperties(
        generator, "props", serviceReferenceWithProperties(mapBuilder().put("matrix", "4x4")));
    generator.writeEndObject();

    JSONObject actual = outputAsObject();
    assertTrue("Missing key", actual.has("props"));
    assertTrue("Missing properties", actual.getJSONObject("props").has("matrix"));
  }
예제 #3
0
  public void testWriteSingleLevelNestedProperties() throws Exception {
    OsgiRepresentationHelper.writeServiceProperties(
        generator,
        serviceReferenceWithProperties(
            mapBuilder()
                .put("service.pid", "com.sun.java.foo")
                .put("service.description", "Metasyntax")));

    JSONObject actual = outputAsObject();
    assertTrue("Missing nested property root", actual.has("service"));
    assertEquals(
        "Missing nested PID", "com.sun.java.foo", actual.getJSONObject("service").get("pid"));
    assertEquals(
        "Missing nested desc", "Metasyntax", actual.getJSONObject("service").get("description"));
  }
예제 #4
0
  public void testManyLevelNestedProperties() throws Exception {
    OsgiRepresentationHelper.writeServiceProperties(
        generator,
        serviceReferenceWithProperties(
            mapBuilder()
                .put("a.b.c.d", 4)
                .put("a.b.f", "3.0")
                .put("a.g.h", 3.1)
                .put("a.g.i.j.k", "5.0")
                .put("a.g.i.j.l", 5.25f)
                .put("m.n", "two")
                .put("o", "one")));

    JSONObject actual = outputAsObject();
    assertEquals(
        "Missing four-level nest",
        4,
        actual.getJSONObject("a").getJSONObject("b").getJSONObject("c").get("d"));
    assertEquals(
        "Missing three-level nest", "3.0", actual.getJSONObject("a").getJSONObject("b").get("f"));
    assertEquals(
        "Missing three-level nest", 3.1, actual.getJSONObject("a").getJSONObject("g").get("h"));
    assertEquals(
        "Missing five-level nest",
        "5.0",
        actual
            .getJSONObject("a")
            .getJSONObject("g")
            .getJSONObject("i")
            .getJSONObject("j")
            .get("k"));
    assertEquals(
        "Missing five-level nest",
        5.25,
        actual
            .getJSONObject("a")
            .getJSONObject("g")
            .getJSONObject("i")
            .getJSONObject("j")
            .get("l"));
    assertEquals("Missing two-level nest", "two", actual.getJSONObject("m").get("n"));
    assertEquals("Missing flat property", "one", actual.get("o"));
  }