/** * Copyright (C) 2009 - present by OpenGamma Inc. and the OpenGamma group of companies * * Please see distribution for license. */ package com.opengamma.util.fudgemsg; import org.testng.annotations.Test; import com.google.common.base.Optional; import com.opengamma.util.test.AbstractFudgeBuilderTestCase; import com.opengamma.util.test.TestGroup; /** * Test Fudge encoding of Guava Optionals. */ @Test(groups = TestGroup.UNIT) public class OptionalEncodingTest extends AbstractFudgeBuilderTestCase { public void test_populated() { Optional<String> object = Optional.of("Hello"); assertEncodeDecodeCycle(Optional.class, object); } public void test_empty() { Optional<String> object = Optional.absent(); assertEncodeDecodeCycle(Optional.class, object); } public void test_nested_populated() { Optional<Optional<String>> object = Optional.of(Optional.of("Hello")); assertEncodeDecodeCycle(Optional.class, object); } public void test_nested_empty() { Optional<Optional<Object>> object = Optional.of(Optional.absent()); assertEncodeDecodeCycle(Optional.class, object); } }