/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package oms3; import java.io.IOException; import java.util.HashMap; import java.util.Map; import java.util.logging.Logger; import oms3.ComponentAccess; import oms3.annotations.Execute; import oms3.annotations.In; import oms3.annotations.Range; import org.junit.Assert; import org.junit.Test; /** * * @author Olaf David */ public class ComponentAccessTest { static class TC { @In public double d; @In public int i; @Execute public void execute() { } } public static class TC1 { @Range(min=1.0, max=5.0) @In public double d; @Execute public void execute() { } } @Test public void testInputData() throws IOException { TC tc = new TC(); Map<String, Object> input = new HashMap<String, Object>(); input.put("d", "1.23"); input.put("i", "1"); ComponentAccess.setInputData(input, tc, Logger.getAnonymousLogger()); Assert.assertEquals(1.23, tc.d, 0.0); Assert.assertEquals(1, tc.i); } @Test public void testInputDataRange() throws IOException { TC1 tc = new TC1(); Map<String, Object> input = new HashMap<String, Object>(); input.put("d", "1.23"); ComponentAccess.setInputData(input, tc, Logger.getAnonymousLogger()); Assert.assertEquals(1.23, tc.d, 0.0); } @Test public void testInputDataRangeFail() throws IOException { TC1 tc = new TC1(); Map<String, Object> input = new HashMap<String, Object>(); input.put("d", ".9"); ComponentAccess.setInputData(input, tc, Logger.getAnonymousLogger()); Assert.assertEquals(.9, tc.d, 0.0); } }