| 8 | import static org.junit.Assert.assertThat; |
| 9 | |
| 10 | public class CommerceTest extends AbstractFakerTest { |
| 11 | |
| 12 | private static final char decimalSeparator = new DecimalFormatSymbols().getDecimalSeparator(); |
| 13 | |
| 14 | private static final String CAPITALIZED_WORD_REGEX = "[A-Z][a-z]+"; |
| 15 | |
| 16 | private static final String PROMOTION_CODE_REGEX = CAPITALIZED_WORD_REGEX + "(-" + CAPITALIZED_WORD_REGEX + ")*"; |
| 17 | |
| 18 | @Test |
| 19 | public void testColor() { |
| 20 | assertThat(faker.commerce().color(), matchesRegularExpression("(\\w+ ?){1,2}")); |
| 21 | } |
| 22 | |
| 23 | @Test |
| 24 | public void testDepartment() { |
| 25 | assertThat(faker.commerce().department(), matchesRegularExpression("(\\w+(, | & )?){1,3}")); |
| 26 | } |
| 27 | |
| 28 | @Test |
| 29 | public void testProductName() { |
| 30 | assertThat(faker.commerce().productName(), matchesRegularExpression("(\\w+ ?){3,4}")); |
| 31 | } |
| 32 | |
| 33 | @Test |
| 34 | public void testMaterial() { |
| 35 | assertThat(faker.commerce().material(), matchesRegularExpression("\\w+")); |
| 36 | } |
| 37 | |
| 38 | @Test |
| 39 | public void testPrice() { |
| 40 | assertThat(faker.commerce().price(), matchesRegularExpression("\\d{1,3}\\" + decimalSeparator + "\\d{2}")); |
| 41 | } |
| 42 | |
| 43 | @Test |
| 44 | public void testPriceMinMax() { |
| 45 | assertThat(faker.commerce().price(100, 1000), matchesRegularExpression("\\d{3,4}\\" + decimalSeparator + "\\d{2}")); |
| 46 | } |
| 47 | |
| 48 | @Test |
| 49 | public void testPromotionCode() { |
| 50 | assertThat(faker.commerce().promotionCode(), matchesRegularExpression(PROMOTION_CODE_REGEX + PROMOTION_CODE_REGEX + "\\d{6}")); |
| 51 | } |
| 52 | |
| 53 | @Test |
| 54 | public void testPromotionCodeDigits() { |
| 55 | assertThat(faker.commerce().promotionCode(3), matchesRegularExpression(PROMOTION_CODE_REGEX + PROMOTION_CODE_REGEX + "\\d{3}")); |
| 56 | } |
| 57 | } |
nothing calls this directly
no outgoing calls
no test coverage detected