Skip to content
This repository has been archived by the owner on Nov 9, 2017. It is now read-only.

Commit

Permalink
update newline validator test to use updated messages mock
Browse files Browse the repository at this point in the history
  • Loading branch information
davidmason committed Dec 21, 2012
1 parent 9bfc6d6 commit 951d97e
Showing 1 changed file with 14 additions and 45 deletions.
Expand Up @@ -24,12 +24,10 @@
import static org.hamcrest.Matchers.hasItem;
import static org.hamcrest.Matchers.hasItems;
import static org.hamcrest.Matchers.is;
import static org.mockito.Mockito.when;

import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import org.zanata.webtrans.client.resources.TestMessages;
import org.zanata.webtrans.client.resources.ValidationMessages;
import org.zanata.webtrans.shared.validation.action.NewlineLeadTrailValidation;

Expand All @@ -43,53 +41,34 @@ public class NewlineLeadTrailValidationTests
{
// TODO use TestMessages

// mock message strings
private static final String MOCK_NEWLINE_VALIDATOR_NAME = "test newline validator name";
private static final String MOCK_NEWLINE_VALIDATOR_DESCRIPTION = "test xml html validator description";

private static final String MOCK_TRAILING_NEWLINE_MISSING_MESSAGE = "mock trailing newline missing message";
private static final String MOCK_TRAILING_NEWLINE_ADDED_MESSAGE = "mock trailing newline added message";
private static final String MOCK_LEADING_NEWLINE_MISSING_MESSAGE = "mock leading newline missing message";
private static final String MOCK_LEADING_NEWLINE_ADDED_MESSAGE = "mock leading newline added message";


private NewlineLeadTrailValidation newlineLeadTrailValidation;

@Mock
private ValidationMessages mockMessages;
private ValidationMessages messages;

@BeforeMethod
public void init()
{
MockitoAnnotations.initMocks(this);
newlineLeadTrailValidation = null;
when(mockMessages.newlineValidatorName()).thenReturn(MOCK_NEWLINE_VALIDATOR_NAME);
when(mockMessages.newlineValidatorDescription()).thenReturn(MOCK_NEWLINE_VALIDATOR_DESCRIPTION);

when(mockMessages.leadingNewlineAdded()).thenReturn(MOCK_LEADING_NEWLINE_ADDED_MESSAGE);
when(mockMessages.leadingNewlineMissing()).thenReturn(MOCK_LEADING_NEWLINE_MISSING_MESSAGE);
when(mockMessages.trailingNewlineAdded()).thenReturn(MOCK_TRAILING_NEWLINE_ADDED_MESSAGE);
when(mockMessages.trailingNewlineMissing()).thenReturn(MOCK_TRAILING_NEWLINE_MISSING_MESSAGE);
messages = TestMessages.getInstance(ValidationMessages.class);
newlineLeadTrailValidation = new NewlineLeadTrailValidation(messages);
}

@Test
public void idIsSet()
{
newlineLeadTrailValidation = new NewlineLeadTrailValidation(mockMessages);
assertThat(newlineLeadTrailValidation.getId(), is(MOCK_NEWLINE_VALIDATOR_NAME));
assertThat(newlineLeadTrailValidation.getId(), is(messages.newlineValidatorName()));
}

@Test
public void descriptionIsSet()
{
newlineLeadTrailValidation = new NewlineLeadTrailValidation(mockMessages);
assertThat(newlineLeadTrailValidation.getDescription(), is(MOCK_NEWLINE_VALIDATOR_DESCRIPTION));
assertThat(newlineLeadTrailValidation.getDescription(), is(messages.newlineValidatorDescription()));
}

@Test
public void noNewlinesBothMatch()
{
newlineLeadTrailValidation = new NewlineLeadTrailValidation(mockMessages);
String source = "String without newlines";
String target = "Different newline-devoid string";
newlineLeadTrailValidation.validate(source, target);
Expand All @@ -101,7 +80,6 @@ public void noNewlinesBothMatch()
@Test
public void bothNewlinesBothMatch()
{
newlineLeadTrailValidation = new NewlineLeadTrailValidation(mockMessages);
String source = "\nString with both newlines\n";
String target = "\nDifferent newline-infested string\n";
newlineLeadTrailValidation.validate(source, target);
Expand All @@ -113,7 +91,6 @@ public void bothNewlinesBothMatch()
@Test
public void internalNewlinesDontCount()
{
newlineLeadTrailValidation = new NewlineLeadTrailValidation(mockMessages);
String source = "String with an \n internal newline.";
String target = "Different string lacking the newline";
newlineLeadTrailValidation.validate(source, target);
Expand All @@ -125,104 +102,96 @@ public void internalNewlinesDontCount()
@Test
public void missingLeadingNewline()
{
newlineLeadTrailValidation = new NewlineLeadTrailValidation(mockMessages);
String source = "\nTesting string with leading new line";
String target = "Different string with the newline removed";
newlineLeadTrailValidation.validate(source, target);

assertThat(newlineLeadTrailValidation.hasError(), is(true));
assertThat(newlineLeadTrailValidation.getError(), hasItem(MOCK_LEADING_NEWLINE_MISSING_MESSAGE));
assertThat(newlineLeadTrailValidation.getError(), hasItem(messages.leadingNewlineMissing()));
assertThat(newlineLeadTrailValidation.getError().size(), is(1));
}

@Test
public void addedLeadingNewline()
{
newlineLeadTrailValidation = new NewlineLeadTrailValidation(mockMessages);
String source = "Testing string without a leading new line";
String target = "\nDifferent string with a leading newline added";
newlineLeadTrailValidation.validate(source, target);

assertThat(newlineLeadTrailValidation.hasError(), is(true));
assertThat(newlineLeadTrailValidation.getError(), hasItem(MOCK_LEADING_NEWLINE_ADDED_MESSAGE));
assertThat(newlineLeadTrailValidation.getError(), hasItem(messages.leadingNewlineAdded()));
assertThat(newlineLeadTrailValidation.getError().size(), is(1));
}

@Test
public void missingTrailingNewline()
{
newlineLeadTrailValidation = new NewlineLeadTrailValidation(mockMessages);
String source = "Testing string with trailing new line\n";
String target = "Different string with the newline removed";
newlineLeadTrailValidation.validate(source, target);

assertThat(newlineLeadTrailValidation.hasError(), is(true));
assertThat(newlineLeadTrailValidation.getError(), hasItem(MOCK_TRAILING_NEWLINE_MISSING_MESSAGE));
assertThat(newlineLeadTrailValidation.getError(), hasItem(messages.trailingNewlineMissing()));
assertThat(newlineLeadTrailValidation.getError().size(), is(1));
}

@Test
public void addedTrailingNewline()
{
newlineLeadTrailValidation = new NewlineLeadTrailValidation(mockMessages);
String source = "Testing string without a trailing new line";
String target = "Different string with a trailing newline added\n";
newlineLeadTrailValidation.validate(source, target);

assertThat(newlineLeadTrailValidation.hasError(), is(true));
assertThat(newlineLeadTrailValidation.getError(), hasItem(MOCK_TRAILING_NEWLINE_ADDED_MESSAGE));
assertThat(newlineLeadTrailValidation.getError(), hasItem(messages.trailingNewlineAdded()));
assertThat(newlineLeadTrailValidation.getError().size(), is(1));
}

@Test
public void addedBothNewlines()
{
newlineLeadTrailValidation = new NewlineLeadTrailValidation(mockMessages);
String source = "Testing string with no newlines";
String target = "\nDifferent string with both added\n";
newlineLeadTrailValidation.validate(source, target);

assertThat(newlineLeadTrailValidation.hasError(), is(true));
assertThat(newlineLeadTrailValidation.getError(), hasItems(MOCK_TRAILING_NEWLINE_ADDED_MESSAGE, MOCK_TRAILING_NEWLINE_ADDED_MESSAGE));
assertThat(newlineLeadTrailValidation.getError(), hasItems(messages.leadingNewlineAdded(), messages.trailingNewlineAdded()));
assertThat(newlineLeadTrailValidation.getError().size(), is(2));
}

@Test
public void missingBothNewlines()
{
newlineLeadTrailValidation = new NewlineLeadTrailValidation(mockMessages);
String source = "\nString with both newlines\n";
String target = "Other string with no newlines";
newlineLeadTrailValidation.validate(source, target);

assertThat(newlineLeadTrailValidation.hasError(), is(true));
assertThat(newlineLeadTrailValidation.getError(), hasItems(MOCK_TRAILING_NEWLINE_MISSING_MESSAGE, MOCK_TRAILING_NEWLINE_MISSING_MESSAGE));
assertThat(newlineLeadTrailValidation.getError(), hasItems(messages.leadingNewlineMissing(), messages.trailingNewlineMissing()));
assertThat(newlineLeadTrailValidation.getError().size(), is(2));
}

@Test
public void addedAndMissing1()
{
newlineLeadTrailValidation = new NewlineLeadTrailValidation(mockMessages);
String source = "\nString with only leading newline";
String target = "Other string with newline trailing\n";
newlineLeadTrailValidation.validate(source, target);

assertThat(newlineLeadTrailValidation.hasError(), is(true));
assertThat(newlineLeadTrailValidation.getError(), hasItems(MOCK_LEADING_NEWLINE_MISSING_MESSAGE, MOCK_TRAILING_NEWLINE_ADDED_MESSAGE));
assertThat(newlineLeadTrailValidation.getError(), hasItems(messages.leadingNewlineMissing(), messages.trailingNewlineAdded()));
assertThat(newlineLeadTrailValidation.getError().size(), is(2));
}

@Test
public void addedAndMissing2()
{
newlineLeadTrailValidation = new NewlineLeadTrailValidation(mockMessages);
String source = "String with trailing newline\n";
String target = "\nOther string with newline leading";
newlineLeadTrailValidation.validate(source, target);

assertThat(newlineLeadTrailValidation.hasError(), is(true));
assertThat(newlineLeadTrailValidation.getError(), hasItems(MOCK_LEADING_NEWLINE_ADDED_MESSAGE, MOCK_TRAILING_NEWLINE_MISSING_MESSAGE));
assertThat(newlineLeadTrailValidation.getError(), hasItems(messages.leadingNewlineAdded(), messages.trailingNewlineMissing()));
assertThat(newlineLeadTrailValidation.getError().size(), is(2));
}
}
Expand Down

0 comments on commit 951d97e

Please sign in to comment.