package io.airlift.airship.shared; import io.airlift.json.JsonCodec; import org.testng.annotations.Test; import static io.airlift.json.JsonCodec.jsonCodec; import static org.testng.Assert.assertEquals; public class TestUpgradeVersion { private final JsonCodec<UpgradeVersions> codec = jsonCodec(UpgradeVersions.class); private final UpgradeVersions expected = new UpgradeVersions("1.1", "2.2"); @Test public void testJsonRoundTrip() { String json = codec.toJson(expected); UpgradeVersions actual = codec.fromJson(json); assertUpgradeVersionsEquals(actual, expected); } @Test public void testJsonDecode() throws Exception { String json = "{\"binaryVersion\":\"1.1\",\"configVersion\":\"2.2\"}"; UpgradeVersions actual = codec.fromJson(json); assertUpgradeVersionsEquals(actual, expected); } private void assertUpgradeVersionsEquals(UpgradeVersions actual, UpgradeVersions expected) { assertEquals(actual.getBinaryVersion(), expected.getBinaryVersion()); assertEquals(actual.getConfigVersion(), this.expected.getConfigVersion()); } }