package uk.org.squirm3.springframework.converter;
import java.util.ArrayList;
import java.util.Collection;
import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import org.junit.runners.Parameterized.Parameters;
import uk.org.squirm3.model.Reaction;
import static org.fest.assertions.Assertions.assertThat;
@RunWith(Parameterized.class)
public class StringToReactionConverterFailureTest {
@Parameters
public static Collection<Object[]> getParameters() {
final Collection<Object[]> parameters = new ArrayList<Object[]>();
parameters.add(new Object[]{"a0 + a0 => a0 + b0"});
parameters.add(new Object[]{"a0 + k0 => a0 + k0"});
parameters.add(new Object[]{"a0 + K0 => a0 + K0"});
parameters.add(new Object[]{"a0 + a0 > a0 + a0"});
parameters.add(new Object[]{"a0 + a0 = a0 + a0"});
parameters.add(new Object[]{"a + a0 => a0 + a0"});
parameters.add(new Object[]{"a0 + a => a0 + a0"});
parameters.add(new Object[]{"0 + a0 => a0 + a0"});
parameters.add(new Object[]{"a0 + 0 => a0 + a0"});
parameters.add(new Object[]{"a0 + a0 => a + a0"});
parameters.add(new Object[]{"a0 + a0 => 0 + a0"});
parameters.add(new Object[]{"a0 + a0 => a0 + a"});
parameters.add(new Object[]{"a0 + a0 => a0 + 0"});
return parameters;
}
private final StringToReactionConverter converter = new StringToReactionConverter(
new CharacterToReactionTypeConverter());
private final String reactionString;
public StringToReactionConverterFailureTest(final String reactionString) {
this.reactionString = reactionString;
}
@Test
public void shouldParseReaction() {
try {
final Reaction reaction = converter.convert(reactionString);
assertThat(reaction).isNull();
} catch (final Exception e) {
return;
}
Assert.fail("Parsing should heve failed before");
}
}