package com.evsuite.abrp; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotEquals; import org.junit.Test; /** The time circuits' fourteen-segment letters — pure JVM. */ public class Segments14Test { @Test public void everyMonthAndGearWordLightsEveryLetter() { for (int m = 0; m < 12; m++) { for (char ch : Segments14.month(m).toCharArray()) assertNotEquals(ch + "", 0, Segments14.mask(ch)); } for (int g = 1; g <= 4; g++) { for (char ch : Segments14.gearWord(g).toCharArray()) assertNotEquals(ch + "", 0, Segments14.mask(ch)); } } @Test public void unreadIsDashes() { assertEquals("---", Segments14.gearWord(null)); assertEquals("---", Segments14.gearWord(9)); assertEquals("---", Segments14.month(12)); assertEquals(Segments14.G1 | Segments14.G2, Segments14.mask('-')); assertEquals(0, Segments14.mask(' ')); } @Test public void wordsAsTheCircuitsShowThem() { assertEquals("OCT", Segments14.month(9)); assertEquals("DRV", Segments14.gearWord(4)); assertEquals("PRK", Segments14.gearWord(1)); // The letters that need the diagonals do use them. assertNotEquals(0, Segments14.mask('N') & Segments14.H); assertNotEquals(0, Segments14.mask('V') & Segments14.K); } }