1 package tim.prune.function.weather;
3 import static org.junit.jupiter.api.Assertions.*;
5 import org.junit.jupiter.api.Test;
8 * JUnit tests for weather icons
10 class SingleForecastTest
14 void testWeatherIcons()
16 testIconName(null, "100", "");
17 testIconName("storm.png", "200", null);
18 testIconName("storm.png", "204", "");
19 testIconName("lightrain.png", "300", null);
20 testIconName("lightrain.png", "301", null);
21 testIconName(null, "400", null);
22 testIconName("lightrain.png", "500", null);
23 testIconName("rain.png", "501", null);
24 testIconName("rain.png", "599", null);
25 testIconName("hail.png", "511", null);
26 testIconName("snow.png", "600", null);
27 testIconName("fog.png", "700", null);
28 testIconName("clear-day.png", "800", null);
29 testIconName("clear-day.png", "800", "");
30 testIconName("clear-day.png", "800", "01d");
31 testIconName("clear-night.png", "800", "01n");
32 testIconName("clouds-day.png", "802", "01d");
33 testIconName("clouds-night.png", "802", "01n");
34 testIconName("clouds.png", "804", "01n");
35 testIconName("extreme.png", "900", "01d");
36 testIconName("hail.png", "906", "01n");
40 * Test getting an icon name according to code and image
42 private static void testIconName(String inExpect, String inCode, String inImage)
44 String icon = SingleForecast.getIconName(inCode, inImage);
45 assertEquals(inExpect, icon, showString(inCode) + ", " + showString(inImage));
48 private static String showString(String inString)
50 return inString == null ? "null" : inString;