/** * 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.spec.tests.unit.naming; import java.util.Arrays; import org.eclipse.xtext.xbase.lib.InputOutput; import org.eclipse.xtext.xbase.lib.Procedures.Procedure1; import org.jnario.lib.Assert; import org.jnario.lib.ExampleTable; import org.jnario.lib.ExampleTableIterators; import org.jnario.lib.Should; import org.jnario.runner.ExampleGroupRunner; import org.jnario.runner.Named; import org.jnario.runner.Order; import org.jnario.spec.spec.Example; import org.jnario.spec.tests.unit.naming.ExampleNameSpecExamples; import org.jnario.spec.tests.unit.naming.ExampleSpec; import org.junit.Test; import org.junit.runner.RunWith; @Named("name") @RunWith(ExampleGroupRunner.class) @SuppressWarnings("all") public class ExampleNameSpec extends ExampleSpec { public ExampleTable<ExampleNameSpecExamples> _initExampleNameSpecExamples() { return ExampleTable.create("examples", Arrays.asList("example", "name"), new ExampleNameSpecExamples( Arrays.asList("\"fact \'with description\'\"", "\"with description\""), _initExampleNameSpecExamplesCell0(), _initExampleNameSpecExamplesCell1()), new ExampleNameSpecExamples( Arrays.asList("\"fact \'with code\' => \'with code\'\"", "\"\'with code\' => \'with code\'\""), _initExampleNameSpecExamplesCell2(), _initExampleNameSpecExamplesCell3()), new ExampleNameSpecExamples( Arrays.asList("\"fact \'multiline code\' => \\n\'with code\'\"", "\"\'multiline code\' => \'with code\'\""), _initExampleNameSpecExamplesCell4(), _initExampleNameSpecExamplesCell5()) ); } protected ExampleTable<ExampleNameSpecExamples> examples = _initExampleNameSpecExamples(); public String _initExampleNameSpecExamplesCell0() { return "fact \'with description\'"; } public String _initExampleNameSpecExamplesCell1() { return "with description"; } public String _initExampleNameSpecExamplesCell2() { return "fact \'with code\' => \'with code\'"; } public String _initExampleNameSpecExamplesCell3() { return "\'with code\' => \'with code\'"; } public String _initExampleNameSpecExamplesCell4() { return "fact \'multiline code\' => \n\'with code\'"; } public String _initExampleNameSpecExamplesCell5() { return "\'multiline code\' => \'with code\'"; } @Test @Named("examples.forEach[println[example.parse.name] should be name]") @Order(1) public void _examplesForEachPrintlnExampleParseNameShouldBeName() throws Exception { final Procedure1<ExampleNameSpecExamples> _function = new Procedure1<ExampleNameSpecExamples>() { public void apply(final ExampleNameSpecExamples it) { String _example = it.getExample(); Example _parse = ExampleNameSpec.this.parse(_example); String _name = _parse.getName(); String _println = InputOutput.<String>println(_name); String _name_1 = it.getName(); Assert.assertTrue("\nExpected println(example.parse.name) should be name but" + "\n println(example.parse.name) is " + new org.hamcrest.StringDescription().appendValue(_println).toString() + "\n example.parse.name is " + new org.hamcrest.StringDescription().appendValue(_name).toString() + "\n example.parse is " + new org.hamcrest.StringDescription().appendValue(_parse).toString() + "\n example is " + new org.hamcrest.StringDescription().appendValue(_example).toString() + "\n name is " + new org.hamcrest.StringDescription().appendValue(_name_1).toString() + "\n", Should.<String>should_be(_println, _name_1)); } }; ExampleTableIterators.<ExampleNameSpecExamples>forEach(this.examples, _function); } }