package org.mafagafogigante.dungeon.schema.rules; import org.mafagafogigante.dungeon.schema.JsonRule; import com.eclipsesource.json.Json; import com.eclipsesource.json.JsonValue; import org.junit.Test; public class PeriodJsonRuleTest { private static final JsonRule periodJsonRule = new PeriodJsonRule(); @Test(expected = IllegalArgumentException.class) public void periodJsonRuleShouldFailOnInvalidPeriodFormat() { JsonValue jsonValue = Json.value("1 monthss"); periodJsonRule.validate(jsonValue); } @Test public void percentageJsonRuleShouldPassOnValidDaysPeriod() { JsonValue oneDay = Json.value("1 day"); JsonValue twoDays = Json.value("2 days"); periodJsonRule.validate(oneDay); periodJsonRule.validate(twoDays); } @Test public void percentageJsonRuleShouldPassOnValidMonthPeriod() { JsonValue oneMonth = Json.value("1 month"); JsonValue twoMonths = Json.value("2 months"); periodJsonRule.validate(oneMonth); periodJsonRule.validate(twoMonths); } @Test public void percentageJsonRuleShouldPassOnValidYearPeriod() { JsonValue oneYear = Json.value("1 year"); JsonValue twoYears = Json.value("2 years"); periodJsonRule.validate(oneYear); periodJsonRule.validate(twoYears); } }