/* * Copyright Ericsson AB 2011-2014. All Rights Reserved. * * The contents of this file are subject to the Lesser GNU Public License, * (the "License"), either version 2.1 of the License, or * (at your option) any later version.; you may not use this file except in * compliance with the License. You should have received a copy of the * License along with this software. If not, it can be * retrieved online at https://www.gnu.org/licenses/lgpl.html. Moreover * it could also be requested from Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO * WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. * EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR * OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, * EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE * LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, * YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. * * IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING * WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR * REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR * DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL * DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY * (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED * INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE * OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH * HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. * */ package com.ericsson.deviceaccess.spi.schema; import com.ericsson.common.util.serialization.Format; import com.ericsson.deviceaccess.api.genericdevice.GDException; import org.jmock.integration.junit4.JUnit4Mockery; import org.jmock.lib.legacy.ClassImposteriser; import org.json.JSONException; import org.json.JSONObject; import org.junit.After; import static org.junit.Assert.fail; import org.junit.Before; import org.junit.Test; /** * ParameterSchema Tester. */ public class ParameterSchemaTest { private JUnit4Mockery context = new JUnit4Mockery() { { setImposteriser(ClassImposteriser.INSTANCE); } }; private ParameterSchema intParameterSchema; private ParameterSchema floatParameterSchema; private ParameterSchema stringParameterSchema; @Before public void setup() throws Exception { intParameterSchema = new ParameterSchema.Builder() .setName("intPar") .setType(Integer.class) .setDefault("10") .setMinValue("-10") .setMaxValue("10") .build(); floatParameterSchema = new ParameterSchema.Builder() .setName("floatPar") .setType(Float.class) .setDefault("42.0f") .setMinValue("-10.0") .setMaxValue("10.0") .build(); stringParameterSchema = new ParameterSchema.Builder() .setName("stringPar") .setType(String.class) .setDefault("apa") .setValidValues("apa", "banan") .build(); } @After public void tearDown() throws Exception { } @Test public void testSerializeInt() throws GDException { String json = intParameterSchema.serialize(Format.JSON); System.out.println(json); context.assertIsSatisfied(); // Just check that JSON parsing works try { JSONObject jsonObject = new JSONObject(json); System.out.println(jsonObject); } catch (JSONException e) { fail(e.getMessage()); } } @Test public void testSerializeFloat() throws GDException { String json = floatParameterSchema.serialize(Format.JSON); System.out.println(json); context.assertIsSatisfied(); // Just check that JSON parsing works try { JSONObject jsonObject = new JSONObject(json); System.out.println(jsonObject); } catch (JSONException e) { fail(e.getMessage()); } } @Test public void testSerializeString() throws GDException { String json = stringParameterSchema.serialize(Format.JSON); System.out.println(json); context.assertIsSatisfied(); // Just check that JSON parsing works try { JSONObject jsonObject = new JSONObject(json); System.out.println(jsonObject); } catch (JSONException e) { fail(e.getMessage()); } } }