/** * Test for method {@link ParameterOperation#extractMowsParameters(String, String, MowField)} . * * @throws ClientMowException */ @Test(expected = ClientMowException.class) public void testExtractMowsParametersWithoutActionKo() throws ClientMowException { final String moveMessage = "1 0 N\n\n"; parameterOperation.extractMowsParameters( moveMessage, DataGenerator.generateDefaultMowField(5, 5)); }
/** * Test for method {@link ParameterOperation#extractMowsParameters(String, String, MowField)} . * * @throws ClientMowException */ @Test public void testExtractMowsParametersOk() throws ClientMowException { final MowField resultField = DataGenerator.generateDefaultMowField(5, 5); final MowsParameters resultMowsParameters = new MowsParameters(); final MowParameters resultMowParameters1 = new MowParameters(1, 0, EnumDirection.N); final Actions actions1 = new Actions(); actions1.getList().add(EnumAction.D); actions1.getList().add(EnumAction.A); resultMowParameters1.setMowField(resultField); resultMowParameters1.setActions(actions1); final MowParameters resultMowParameters2 = new MowParameters(5, 0, EnumDirection.S); final Actions actions2 = new Actions(); actions2.getList().add(EnumAction.G); actions2.getList().add(EnumAction.A); resultMowParameters2.setMowField(resultField); resultMowParameters2.setActions(actions2); resultMowsParameters.getList().add(resultMowParameters1); resultMowsParameters.getList().add(resultMowParameters2); final String moveMessage = "5 5\n1 0 N\nDA\n5 0 S\nGA\n"; MowsParameters mowParameters = parameterOperation.extractMowsParameters( moveMessage, DataGenerator.generateDefaultMowField(5, 5)); Assert.assertEquals(resultMowsParameters, mowParameters); }
/** * Test for method {@link ParameterOperation#extractLimitTopRightCoordinates(String)}. * * @throws ClientMowException */ @Test public void testExtractLimitTopRightCoordinatesOk() throws ClientMowException { Coordinates resultCoordinates = new Coordinates(5, 5); String moveMessage = "5 5\n1 0 N\n\n"; Coordinates extractCoordinates = parameterOperation.extractLimitTopRightCoordinates(moveMessage); Assert.assertEquals(resultCoordinates, extractCoordinates); }
/** Test for method {@link ParameterOperation#extractPatternMatcher(String, String)}. */ @Test public void testExtractPatternMatcherMowOk() { final List<String> resultParams = new ArrayList<>(); resultParams.add("1 0 N\nD\n"); final String moveMessage = "5 5\n1 0 N\nD\n"; final List<String> extractParams = parameterOperation.extractPatternMatcher(moveMessage, Constant.MSG_MOW_PARAMS_REGEX); Assert.assertEquals(resultParams, extractParams); }
/** Test for method {@link ParameterOperation#extractPatternMatcher(String, String)}. */ @Test public void testExtractPatternMatcherFieldOk() { final List<String> resultParams = new ArrayList<>(); resultParams.add("5 5"); final String moveMessage = "5 5\n1 0 N\n\n"; final List<String> extractParams = parameterOperation.extractPatternMatcher(moveMessage, Constant.MSG_LIMIT_FIELD_REGEX); Assert.assertEquals(resultParams, extractParams); }
/** * Test for method {@link ParameterOperation#extractMowParameters(String, String, MowField)} . * * @throws ClientMowException */ @Test public void testExtractMowParametersOk() { final MowParameters resultParameters = new MowParameters(1, 0, EnumDirection.N); final Actions actions = new Actions(); actions.getList().add(EnumAction.D); resultParameters.setActions(actions); resultParameters.setMowField(DataGenerator.generateDefaultMowField(5, 5)); final String mowPosition = "1 0 N"; final String mowAction = "D"; final MowParameters mowParameters = parameterOperation.extractMowParameters( mowPosition, mowAction, DataGenerator.generateDefaultMowField(5, 5)); Assert.assertEquals(resultParameters, mowParameters); }
/** * Test for method {@link ParameterOperation#getParamaters(String)}. * * @throws ClientMowException */ @Test public void testGetParamaters() throws ClientMowException { String move = "5 5\n1 0 N\nD\n"; // Field MowField resultField = DataGenerator.generateDefaultMowField(5, 5); // Mower MowsParameters resultsPositions = new MowsParameters(); MowParameters resultParameters = new MowParameters(1, 0, EnumDirection.N); Actions actions = new Actions(); actions.getList().add(EnumAction.D); resultParameters.setMowField(resultField); resultParameters.setActions(actions); resultsPositions.getList().add(resultParameters); MowsParameters parameters = parameterOperation.getParamaters(move); Assert.assertEquals(resultsPositions, parameters); }
/** * Test for method {@link ParameterOperation#checkParametersFormat(String)}. * * @throws ClientMowException */ @Test public void testCheckFormatKo() throws ClientMowException { String move = "5 5\n1 0 N\n\nD\n"; boolean chekFormat = parameterOperation.checkParametersFormat(move); Assert.assertEquals(Boolean.FALSE, chekFormat); }
/** * Test for method {@link ParameterOperation#extractMowsParameters(String, String, MowField)} . * * @throws ClientMowException */ @Test(expected = IllegalArgumentException.class) public void testExtractMowsParametersWithoutFieldKo() throws ClientMowException { final String moveMessage = "1 0 N\nD\n"; parameterOperation.extractMowsParameters(moveMessage, null); }
/** * Test for method {@link ParameterOperation#extractLimitTopRightCoordinates(String)}. * * @throws ClientMowException */ @Test(expected = ClientMowException.class) public void testExtractLimitTopRightCoordinatesKo() throws ClientMowException { String moveMessage = "5 \n1 0 N\n\n"; parameterOperation.extractLimitTopRightCoordinates(moveMessage); }
/** * Test for method {@link ParameterOperation#checkParametersFormat(String)}. * * @throws ClientMowException */ @Test(expected = NullPointerException.class) public void testCheckNPE() throws ClientMowException { String move = null; parameterOperation.checkParametersFormat(move); }