package com.opower.rest.client.generator.core; import com.google.common.base.Optional; import com.opower.rest.client.generator.specimpl.MultivaluedMapImpl; import org.junit.Before; import org.junit.Test; import javax.ws.rs.core.MultivaluedMap; import static org.junit.Assert.assertEquals; /** * Unit tests for {@link ClientRequest} * @author sachin.nene */ public class TestClientRequest { private ClientRequest request; private MultivaluedMap<String,String> expectedValues = new MultivaluedMapImpl<>(); @Before public void setUp() { request = new ClientRequest("http://dummy", null, null, null); } @Test public void testFormParameterOptionalPresent() { this.expectedValues.putSingle("key1", "asdf"); this.request.formParameter("key1", Optional.of("asdf")); assertEquals("Form parameters don't match.", this.expectedValues, this.request.getFormParameters()); } @Test public void testQueryParameterOptionalPresent() { this.expectedValues.putSingle("key1", "asdf"); this.request.queryParameter("key1", Optional.of("asdf")); assertEquals("Query parameters don't match.", this.expectedValues, this.request.getQueryParameters()); } @Test public void testMatrixParameterOptionalPresent() { this.expectedValues.putSingle("key1", "asdf"); this.request.matrixParameter("key1", Optional.of("asdf")); assertEquals("Matrix parameters don't match.", this.expectedValues, this.request.getMatrixParameters()); } @Test public void testFormParameterOptionalAbsent() { this.request.formParameter("key1", Optional.absent()); assertEquals("Form parameters don't match.", this.expectedValues, this.request.getFormParameters()); } @Test public void testQueryParameterOptionalAbsent() { this.request.queryParameter("key1", Optional.absent()); assertEquals("Query parameters don't match.", this.expectedValues, this.request.getQueryParameters()); } @Test public void testMatrixParameterOptionalAbsent() { this.request.matrixParameter("key1", Optional.absent()); assertEquals("Matrix parameters don't match.", this.expectedValues, this.request.getMatrixParameters()); } }