/** * Copyright (c) 2012 BMW Car IT and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html */ package org.jnario.jnario.tests.unit.jnario; import java.util.Arrays; import org.eclipse.xtext.xbase.lib.Procedures.Procedure1; import org.jnario.jnario.tests.unit.jnario.StringsSpec; import org.jnario.jnario.tests.unit.jnario.StringsTrailingWhitespaceSpecExamples; import org.jnario.lib.Assert; import org.jnario.lib.Each; import org.jnario.lib.ExampleTable; import org.jnario.lib.Should; import org.jnario.runner.ExampleGroupRunner; import org.jnario.runner.Named; import org.jnario.runner.Order; import org.jnario.util.Strings; import org.junit.Test; import org.junit.runner.RunWith; @Named("trailingWhitespace") @RunWith(ExampleGroupRunner.class) @SuppressWarnings("all") public class StringsTrailingWhitespaceSpec extends StringsSpec { public ExampleTable<StringsTrailingWhitespaceSpecExamples> _initStringsTrailingWhitespaceSpecExamples() { return ExampleTable.create("examples", Arrays.asList("string", "result"), new StringsTrailingWhitespaceSpecExamples( Arrays.asList("null", "\"\""), null, _initStringsTrailingWhitespaceSpecExamplesCell1()), new StringsTrailingWhitespaceSpecExamples( Arrays.asList("\"\"", "\"\""), _initStringsTrailingWhitespaceSpecExamplesCell2(), _initStringsTrailingWhitespaceSpecExamplesCell3()), new StringsTrailingWhitespaceSpecExamples( Arrays.asList("\"no whitespace\"", "\"\""), _initStringsTrailingWhitespaceSpecExamplesCell4(), _initStringsTrailingWhitespaceSpecExamplesCell5()), new StringsTrailingWhitespaceSpecExamples( Arrays.asList("\"space at the end \"", "\" \""), _initStringsTrailingWhitespaceSpecExamplesCell6(), _initStringsTrailingWhitespaceSpecExamplesCell7()), new StringsTrailingWhitespaceSpecExamples( Arrays.asList("\"tab at the end\\t\"", "\"\\t\""), _initStringsTrailingWhitespaceSpecExamplesCell8(), _initStringsTrailingWhitespaceSpecExamplesCell9()), new StringsTrailingWhitespaceSpecExamples( Arrays.asList("\"new line at the end\\r\"", "\"\\r\""), _initStringsTrailingWhitespaceSpecExamplesCell10(), _initStringsTrailingWhitespaceSpecExamplesCell11()), new StringsTrailingWhitespaceSpecExamples( Arrays.asList("\"new line at the end\\n\"", "\"\\n\""), _initStringsTrailingWhitespaceSpecExamplesCell12(), _initStringsTrailingWhitespaceSpecExamplesCell13()), new StringsTrailingWhitespaceSpecExamples( Arrays.asList("\"multiple whitespaces\\t \\n\"", "\"\\t \\n\""), _initStringsTrailingWhitespaceSpecExamplesCell14(), _initStringsTrailingWhitespaceSpecExamplesCell15()), new StringsTrailingWhitespaceSpecExamples( Arrays.asList("\"\\t \\n\"", "\"\\t \\n\""), _initStringsTrailingWhitespaceSpecExamplesCell16(), _initStringsTrailingWhitespaceSpecExamplesCell17()) ); } protected ExampleTable<StringsTrailingWhitespaceSpecExamples> examples = _initStringsTrailingWhitespaceSpecExamples(); public Object _initStringsTrailingWhitespaceSpecExamplesCell0() { return null; } public String _initStringsTrailingWhitespaceSpecExamplesCell1() { return ""; } public String _initStringsTrailingWhitespaceSpecExamplesCell2() { return ""; } public String _initStringsTrailingWhitespaceSpecExamplesCell3() { return ""; } public String _initStringsTrailingWhitespaceSpecExamplesCell4() { return "no whitespace"; } public String _initStringsTrailingWhitespaceSpecExamplesCell5() { return ""; } public String _initStringsTrailingWhitespaceSpecExamplesCell6() { return "space at the end "; } public String _initStringsTrailingWhitespaceSpecExamplesCell7() { return " "; } public String _initStringsTrailingWhitespaceSpecExamplesCell8() { return "tab at the end\t"; } public String _initStringsTrailingWhitespaceSpecExamplesCell9() { return "\t"; } public String _initStringsTrailingWhitespaceSpecExamplesCell10() { return "new line at the end\r"; } public String _initStringsTrailingWhitespaceSpecExamplesCell11() { return "\r"; } public String _initStringsTrailingWhitespaceSpecExamplesCell12() { return "new line at the end\n"; } public String _initStringsTrailingWhitespaceSpecExamplesCell13() { return "\n"; } public String _initStringsTrailingWhitespaceSpecExamplesCell14() { return "multiple whitespaces\t \n"; } public String _initStringsTrailingWhitespaceSpecExamplesCell15() { return "\t \n"; } public String _initStringsTrailingWhitespaceSpecExamplesCell16() { return "\t \n"; } public String _initStringsTrailingWhitespaceSpecExamplesCell17() { return "\t \n"; } @Test @Named("returns whitespaces at the end") @Order(1) public void _returnsWhitespacesAtTheEnd() throws Exception { final Procedure1<StringsTrailingWhitespaceSpecExamples> _function = new Procedure1<StringsTrailingWhitespaceSpecExamples>() { public void apply(final StringsTrailingWhitespaceSpecExamples it) { String _string = it.getString(); String _trailingWhitespace = Strings.trailingWhitespace(_string); String _result = it.getResult(); Assert.assertTrue("\nExpected string.trailingWhitespace => result but" + "\n string.trailingWhitespace is " + new org.hamcrest.StringDescription().appendValue(_trailingWhitespace).toString() + "\n string is " + new org.hamcrest.StringDescription().appendValue(_string).toString() + "\n result is " + new org.hamcrest.StringDescription().appendValue(_result).toString() + "\n", Should.<String>operator_doubleArrow(_trailingWhitespace, _result)); } }; Each.<StringsTrailingWhitespaceSpecExamples>forEach(this.examples, _function); } }