private static void run(Alarmclock test, int minutes) //räknar minuter tills den når "alarm-värdet" skriver sedan ut koden på rad 106-112. { Console.BackgroundColor = ConsoleColor.DarkGreen; Console.WriteLine("====================================="); Console.WriteLine("|| Väckarklockan URLED <TM> ||"); Console.WriteLine("|| Modellnr.: 1DU402S2L2A ||"); Console.WriteLine("====================================="); Console.ResetColor(); for (int i = 0; i < minutes; i++) { if (test.TickTock()) { Console.BackgroundColor = ConsoleColor.DarkBlue; Console.Write("♫"); Console.Write(test.ToString()); Console.Write("Pling! Pling! Pling! Pling!"); } else { Console.WriteLine(" "); Console.WriteLine(test.ToString()); } Console.ResetColor(); } }
static void Main(string[] args) { Alarmclock test_1 = new Alarmclock(); WatchTestHeader("\n test_1\nTest av standardkonstruktorn"); //Testar konstruktorn Console.WriteLine(test_1.ToString()); Alarmclock test_2 = new Alarmclock(9, 42); WatchTestHeader("\n test_2\nTest av konstruktorn med två parametrar< 9, 42>"); //Testar konstruktorn med 2 parametrar Console.WriteLine(test_2.ToString()); Alarmclock test_3 = new Alarmclock(13, 24, 7, 35); WatchTestHeader("\n test_3\nTest av konstruktorn med fyra parametrar < 13, 24, 7, 35>"); //Testar konstruktorn med 4 parametrar Console.WriteLine(test_3.ToString()); Alarmclock test_4 = new Alarmclock(23, 58, 7, 35); WatchTestHeader("\n test_4\nStäller befintiligt Alarmclock-Objekt till 23:58 och låter den gå i 13 min. "); run(test_4, 13); Alarmclock test_5 = new Alarmclock(6, 12, 6, 15); WatchTestHeader("\n test_5\nStäller befintligt Alarmclock-Objekt till 6:12 och låter den gå i 6 min."); run(test_5, 6); Alarmclock test_6 = new Alarmclock(); WatchTestHeader("\n test_6\nTestar egenskaperna så att undantag kastas då tid och alarmtid Tilldelas felaktiga värden"); try { test_6.Hour = 24; //Kollar om värdet är 24hr och fångar det isåfall, annars går den till nästa "try " } catch (ArgumentException wrong) { WatchErrorMessage(wrong.Message); //fångar felet och visar felmeddelandet som är kodat längre ner. } try { test_6.Minute = 60; //Samma som ovan fast med 60 min. } catch (ArgumentException wrong) { WatchErrorMessage(wrong.Message); } try { test_6.AlarmclockHour = 25; //Samma som ovan fast med 25hr. } catch (ArgumentException wrong) { WatchErrorMessage(wrong.Message); } try { test_6.AlarmclockMinute = 60; //Samma som ovan fast 60 min. } catch (ArgumentException wrong) { WatchErrorMessage(wrong.Message); } WatchTestHeader("\n test_7\nTestar konstruktorer så att undantag kastas då tid och alarmtid ntilldelas felaktiga värden."); try { Alarmclock test_7 = new Alarmclock(24, 0); //Sätter värdet till 24, får felmeddelande som fångas i catch och går sedan till nästa try. } catch (ArgumentException wrong) { WatchErrorMessage(wrong.Message); } try { Alarmclock test_7 = new Alarmclock(0, 60); } catch (ArgumentException wrong) { WatchErrorMessage(wrong.Message); } try { Alarmclock test_7 = new Alarmclock(0, 0, 24, 0); } catch (ArgumentException wrong) { WatchErrorMessage(wrong.Message); } try { Alarmclock test_7 = new Alarmclock(0, 0, 0, 60); } catch (ArgumentException wrong) { WatchErrorMessage(wrong.Message); } }