Package protobuf_unittest.UnittestProto

Examples of protobuf_unittest.UnittestProto.TestOneof2


  // ================================================================
  // oneof
  public void testOneofWireFormat() throws Exception {
    TestOneof2.Builder builder = TestOneof2.newBuilder();
    TestUtil.setOneof(builder);
    TestOneof2 message = builder.build();
    ByteString rawBytes = message.toByteString();

    assertEquals(rawBytes.size(), message.getSerializedSize());

    TestOneof2 message2 = TestOneof2.parseFrom(rawBytes);
    TestUtil.assertOneofSet(message2);
  }
View Full Code Here


  public void testOneofOnlyLastSet() throws Exception {
    TestOneofBackwardsCompatible source = TestOneofBackwardsCompatible
        .newBuilder().setFooInt(100).setFooString("101").build();

    ByteString rawBytes = source.toByteString();
    TestOneof2 message = TestOneof2.parseFrom(rawBytes);
    assertFalse(message.hasFooInt());
    assertTrue(message.hasFooString());
  }
View Full Code Here

  // test oneof

  public void testOneofTextFormat() throws Exception {
    TestOneof2.Builder builder = TestOneof2.newBuilder();
    TestUtil.setOneof(builder);
    TestOneof2 message = builder.build();
    TestOneof2.Builder dest = TestOneof2.newBuilder();
    TextFormat.merge(TextFormat.printToUnicodeString(message), dest);
    TestUtil.assertOneofSet(dest.build());
  }
View Full Code Here

  public void testOneofOverwriteAllowed() throws Exception {
    String input = "foo_string: \"stringvalue\" foo_int: 123";
    TestOneof2.Builder builder = TestOneof2.newBuilder();
    defaultParser.merge(input, TestUtil.getExtensionRegistry(), builder);
    // Only the last value sticks.
    TestOneof2 oneof = builder.build();
    assertFalse(oneof.hasFooString());
    assertTrue(oneof.hasFooInt());
  }
View Full Code Here

  }

  // =================================================================
  // oneof generated code test
  public void testOneofEnumCase() throws Exception {
    TestOneof2 message = TestOneof2.newBuilder()
        .setFooInt(123).setFooString("foo").setFooCord("bar").build();
    TestUtil.assertAtMostOneFieldSetOneof(message);
  }
View Full Code Here

    assertEquals(TestOneof2.FooCase.FOO_NOT_SET, builder.getFooCase());
  }

  public void testSetOneofClearsOthers() throws Exception {
    TestOneof2.Builder builder = TestOneof2.newBuilder();
    TestOneof2 message =
        builder.setFooInt(123).setFooString("foo").buildPartial();
    assertTrue(message.hasFooString());
    TestUtil.assertAtMostOneFieldSetOneof(message);

    message = builder.setFooCord("bar").buildPartial();
    assertTrue(message.hasFooCord());
    TestUtil.assertAtMostOneFieldSetOneof(message);

    message = builder.setFooStringPiece("baz").buildPartial();
    assertTrue(message.hasFooStringPiece());
    TestUtil.assertAtMostOneFieldSetOneof(message);

    message = builder.setFooBytes(TestUtil.toBytes("qux")).buildPartial();
    assertTrue(message.hasFooBytes());
    TestUtil.assertAtMostOneFieldSetOneof(message);

    message = builder.setFooEnum(TestOneof2.NestedEnum.FOO).buildPartial();
    assertTrue(message.hasFooEnum());
    TestUtil.assertAtMostOneFieldSetOneof(message);

    message = builder.setFooMessage(
        TestOneof2.NestedMessage.newBuilder().setQuxInt(234).build()).buildPartial();
    assertTrue(message.hasFooMessage());
    TestUtil.assertAtMostOneFieldSetOneof(message);

    message = builder.setFooInt(123).buildPartial();
    assertTrue(message.hasFooInt());
    TestUtil.assertAtMostOneFieldSetOneof(message);
  }
View Full Code Here

      TestOneof2.Builder builder = TestOneof2.newBuilder();
      assertEquals(builder.getFooInt(), 0);
      assertFalse(builder.hasFooInt());
      assertTrue(builder.setFooInt(123).hasFooInt());
      assertEquals(builder.getFooInt(), 123);
      TestOneof2 message = builder.buildPartial();
      assertTrue(message.hasFooInt());
      assertEquals(message.getFooInt(), 123);

      assertFalse(builder.clearFooInt().hasFooInt());
      TestOneof2 message2 = builder.build();
      assertFalse(message2.hasFooInt());
      assertEquals(message2.getFooInt(), 0);
    }

    // Enum
    {
      TestOneof2.Builder builder = TestOneof2.newBuilder();
      assertEquals(builder.getFooEnum(), TestOneof2.NestedEnum.FOO);
      assertTrue(builder.setFooEnum(TestOneof2.NestedEnum.BAR).hasFooEnum());
      assertEquals(builder.getFooEnum(), TestOneof2.NestedEnum.BAR);
      TestOneof2 message = builder.buildPartial();
      assertTrue(message.hasFooEnum());
      assertEquals(message.getFooEnum(), TestOneof2.NestedEnum.BAR);

      assertFalse(builder.clearFooEnum().hasFooEnum());
      TestOneof2 message2 = builder.build();
      assertFalse(message2.hasFooEnum());
      assertEquals(message2.getFooEnum(), TestOneof2.NestedEnum.FOO);
    }

    // String
    {
      TestOneof2.Builder builder = TestOneof2.newBuilder();
      assertEquals(builder.getFooString(), "");
      builder.setFooString("foo");
      assertTrue(builder.hasFooString());
      assertEquals(builder.getFooString(), "foo");
      TestOneof2 message = builder.buildPartial();
      assertTrue(message.hasFooString());
      assertEquals(message.getFooString(), "foo");
      assertEquals(message.getFooStringBytes(), TestUtil.toBytes("foo"));

      assertFalse(builder.clearFooString().hasFooString());
      TestOneof2 message2 = builder.buildPartial();
      assertFalse(message2.hasFooString());
      assertEquals(message2.getFooString(), "");
      assertEquals(message2.getFooStringBytes(), TestUtil.toBytes(""));

      // Get method should not change the oneof value.
      builder.setFooInt(123);
      assertEquals(builder.getFooString(), "");
      assertEquals(builder.getFooStringBytes(), TestUtil.toBytes(""));
      assertEquals(123, builder.getFooInt());

      message = builder.build();
      assertEquals(message.getFooString(), "");
      assertEquals(message.getFooStringBytes(), TestUtil.toBytes(""));
      assertEquals(123, message.getFooInt());
    }

    // Cord
    {
      TestOneof2.Builder builder = TestOneof2.newBuilder();
      assertEquals(builder.getFooCord(), "");
      builder.setFooCord("foo");
      assertTrue(builder.hasFooCord());
      assertEquals(builder.getFooCord(), "foo");
      TestOneof2 message = builder.buildPartial();
      assertTrue(message.hasFooCord());
      assertEquals(message.getFooCord(), "foo");
      assertEquals(message.getFooCordBytes(), TestUtil.toBytes("foo"));

      assertFalse(builder.clearFooCord().hasFooCord());
      TestOneof2 message2 = builder.build();
      assertFalse(message2.hasFooCord());
      assertEquals(message2.getFooCord(), "");
      assertEquals(message2.getFooCordBytes(), TestUtil.toBytes(""));
    }

    // StringPiece
    {
      TestOneof2.Builder builder = TestOneof2.newBuilder();
      assertEquals(builder.getFooStringPiece(), "");
      builder.setFooStringPiece("foo");
      assertTrue(builder.hasFooStringPiece());
      assertEquals(builder.getFooStringPiece(), "foo");
      TestOneof2 message = builder.buildPartial();
      assertTrue(message.hasFooStringPiece());
      assertEquals(message.getFooStringPiece(), "foo");
      assertEquals(message.getFooStringPieceBytes(), TestUtil.toBytes("foo"));

      assertFalse(builder.clearFooStringPiece().hasFooStringPiece());
      TestOneof2 message2 = builder.build();
      assertFalse(message2.hasFooStringPiece());
      assertEquals(message2.getFooStringPiece(), "");
      assertEquals(message2.getFooStringPieceBytes(), TestUtil.toBytes(""));
    }

    // Message
    {
      // set
      TestOneof2.Builder builder = TestOneof2.newBuilder();
      assertEquals(builder.getFooMessage().getQuxInt(), 0);
      builder.setFooMessage(
          TestOneof2.NestedMessage.newBuilder().setQuxInt(234).build());
      assertTrue(builder.hasFooMessage());
      assertEquals(builder.getFooMessage().getQuxInt(), 234);
      TestOneof2 message = builder.buildPartial();
      assertTrue(message.hasFooMessage());
      assertEquals(message.getFooMessage().getQuxInt(), 234);

      // clear
      assertFalse(builder.clearFooMessage().hasFooString());
      message = builder.build();
      assertFalse(message.hasFooMessage());
      assertEquals(message.getFooMessage().getQuxInt(), 0);

      // nested builder
      builder = TestOneof2.newBuilder();
      assertSame(builder.getFooMessageOrBuilder(),
          TestOneof2.NestedMessage.getDefaultInstance());
      assertFalse(builder.hasFooMessage());
      builder.getFooMessageBuilder().setQuxInt(123);
      assertTrue(builder.hasFooMessage());
      assertEquals(builder.getFooMessage().getQuxInt(), 123);
      message = builder.build();
      assertTrue(message.hasFooMessage());
      assertEquals(message.getFooMessage().getQuxInt(), 123);
    }

    // LazyMessage is tested in LazyMessageLiteTest.java
  }
View Full Code Here

  public void testOneofMerge() throws Exception {
    // Primitive Type
    {
      TestOneof2.Builder builder = TestOneof2.newBuilder();
      TestOneof2 message = builder.setFooInt(123).build();
      TestOneof2 message2 = TestOneof2.newBuilder().mergeFrom(message).build();
      assertTrue(message2.hasFooInt());
      assertEquals(message2.getFooInt(), 123);
    }

    // String
    {
      TestOneof2.Builder builder = TestOneof2.newBuilder();
      TestOneof2 message = builder.setFooString("foo").build();
      TestOneof2 message2 = TestOneof2.newBuilder().mergeFrom(message).build();
      assertTrue(message2.hasFooString());
      assertEquals(message2.getFooString(), "foo");
    }

    // Enum
    {
      TestOneof2.Builder builder = TestOneof2.newBuilder();
      TestOneof2 message = builder.setFooEnum(TestOneof2.NestedEnum.BAR).build();
      TestOneof2 message2 = TestOneof2.newBuilder().mergeFrom(message).build();
      assertTrue(message2.hasFooEnum());
      assertEquals(message2.getFooEnum(), TestOneof2.NestedEnum.BAR);
    }

    // Message
    {
      TestOneof2.Builder builder = TestOneof2.newBuilder();
      TestOneof2 message = builder.setFooMessage(
          TestOneof2.NestedMessage.newBuilder().setQuxInt(234).build()).build();
      TestOneof2 message2 = TestOneof2.newBuilder().mergeFrom(message).build();
      assertTrue(message2.hasFooMessage());
      assertEquals(message2.getFooMessage().getQuxInt(), 234);
    }
  }
View Full Code Here

  public void testOneofSerialization() throws Exception {
    // Primitive Type
    {
      TestOneof2.Builder builder = TestOneof2.newBuilder();
      TestOneof2 message = builder.setFooInt(123).build();
      ByteString serialized = message.toByteString();
      TestOneof2 message2 = TestOneof2.parseFrom(serialized);
      assertTrue(message2.hasFooInt());
      assertEquals(message2.getFooInt(), 123);
    }

    // String
    {
      TestOneof2.Builder builder = TestOneof2.newBuilder();
      TestOneof2 message = builder.setFooString("foo").build();
      ByteString serialized = message.toByteString();
      TestOneof2 message2 = TestOneof2.parseFrom(serialized);
      assertTrue(message2.hasFooString());
      assertEquals(message2.getFooString(), "foo");
    }

    // Enum
    {
      TestOneof2.Builder builder = TestOneof2.newBuilder();
      TestOneof2 message = builder.setFooEnum(TestOneof2.NestedEnum.BAR).build();
      ByteString serialized = message.toByteString();
      TestOneof2 message2 = TestOneof2.parseFrom(serialized);
      assertTrue(message2.hasFooEnum());
      assertEquals(message2.getFooEnum(), TestOneof2.NestedEnum.BAR);
    }

    // Message
    {
      TestOneof2.Builder builder = TestOneof2.newBuilder();
      TestOneof2 message = builder.setFooMessage(
          TestOneof2.NestedMessage.newBuilder().setQuxInt(234).build()).build();
      ByteString serialized = message.toByteString();
      TestOneof2 message2 = TestOneof2.parseFrom(serialized);
      assertTrue(message2.hasFooMessage());
      assertEquals(message2.getFooMessage().getQuxInt(), 234);
    }
  }
View Full Code Here

  // ================================================================
  // oneof
  public void testOneofWireFormat() throws Exception {
    TestOneof2.Builder builder = TestOneof2.newBuilder();
    TestUtil.setOneof(builder);
    TestOneof2 message = builder.build();
    ByteString rawBytes = message.toByteString();

    assertEquals(rawBytes.size(), message.getSerializedSize());

    TestOneof2 message2 = TestOneof2.parseFrom(rawBytes);
    TestUtil.assertOneofSet(message2);
  }
View Full Code Here

TOP

Related Classes of protobuf_unittest.UnittestProto.TestOneof2

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.