/* * #%L * Wisdom-Framework * %% * Copyright (C) 2013 - 2014 Wisdom Framework * %% * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * #L% */ package controller; import com.fasterxml.jackson.databind.ObjectMapper; import controllers.FormObject; import org.junit.Test; import org.wisdom.test.http.HttpResponse; import org.wisdom.test.parents.WisdomBlackBoxTest; import static org.assertj.core.api.Assertions.assertThat; import static org.junit.Assert.assertEquals; public class FormIT extends WisdomBlackBoxTest { @Test public void testFormMapping() throws Exception { HttpResponse<String> response = post("/hello/form") .field("name", "wisdom") .field("email", "wisdom@wisdom-framework.org") .field("primInt", "593765") .field("objInt", "593766") .field("primLong", "-3957393") .field("objLong", "-3957394") .field("primFloat", "78.12") .field("objFloat", "79.22") .field("primDouble", "694.56") .field("objDouble", "696.76") .field("primBoolean", "false") .field("objBoolean", "true") .field("primByte", "111") .field("objByte", "112") .field("primShort", "32456") .field("objShort", "32455") .field("primChar", "Z") .field("objChar", "X") .asString(); assertThat(response.code()).isEqualTo(OK); ObjectMapper mapper = new ObjectMapper(); FormObject returnedObject = mapper.readValue(response.body(), FormObject.class); assertEquals("wisdom", returnedObject.name); assertEquals("wisdom@wisdom-framework.org", returnedObject.getEmail()); assertEquals(593765, returnedObject.primInt); assertEquals(593766, returnedObject.objInt.intValue()); assertEquals(-3957393, returnedObject.primLong); assertEquals(-3957394, returnedObject.objLong.longValue()); assertEquals(78.12, returnedObject.primFloat, 0.001); assertEquals(79.22, returnedObject.objFloat, 0.001); assertEquals(694.56, returnedObject.primDouble, 0.001); assertEquals(696.76, returnedObject.objDouble, 0.001); assertEquals(false, returnedObject.isPrimBoolean()); assertEquals(true, returnedObject.getObjBoolean()); assertEquals(111, returnedObject.getPrimByte()); assertEquals(112, returnedObject.getObjByte().byteValue()); assertEquals(32456, returnedObject.getPrimShort()); assertEquals(32455, returnedObject.getObjShort().shortValue()); assertEquals('Z', returnedObject.getPrimChar()); assertEquals('X', returnedObject.getObjChar().charValue()); } }