package Ġn tn u 2 0 . im t 3 6 7 3 . group 4 . aves Ċ Ċ import Ġn tn u 2 0 . im t 3 6 7 3 . group 4 . aves . weather . Z ulu Util Ċ import Ġorg . junit . Test Ċ import Ġorg . junit . Assert .* Ċ import Ġjava . util .* Ċ Ċ /** Ċ Ġ* ĠTes ing Ġthe Ġutility Ġfunctions Ġin Ġregards Ġto ĠZ ulu Ġtime Ġconversion Ċ Ġ*/ Ċ class ĠZ ulu Tests Ġ{ ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġconversion _ date _ to _ z ulu _ is _ correct () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcal Ġ= ĠCalendar . getInstance ( TimeZone . getTime Zone (" UTC ")) ĊĠĠĠĠĠĠĠ Ġcal . set ( ĊĠĠĠĠĠĠĠĠĠĠĠĠ 2 0 1 6 , ĊĠĠĠĠĠĠĠĠĠĠĠĠ 3 , ĊĠĠĠĠĠĠĠĠĠĠĠĠ 1 5 , ĊĠĠĠĠĠĠĠĠĠĠĠĠ 2 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠ 1 4 , ĊĠĠĠĠĠĠĠĠĠĠĠĠ 0 ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġdate Ġ= Ġcal . time ĊĠĠĠĠĠĠĠ Ġval Ġgot Ġ= ĠZ ulu Util . to Z ulu ( date ) ĊĠĠĠĠĠĠĠ Ġval Ġexpected Ġ= Ġ" 2 0 1 6 - 0 4 - 1 5 T 2 0 : 1 4 : 0 0 Z " ĊĠĠĠĠĠĠĠ ĠassertEquals (" output Ġshould Ġmatch Ġcustom Ġz ulu Ġstring ", Ġexpected , Ġgot ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġconversion _ z ulu _ to _ date _ is _ correct () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcal Ġ= ĠCalendar . getInstance () ĊĠĠĠĠĠĠĠ Ġcal . set ( ĊĠĠĠĠĠĠĠĠĠĠĠĠ 2 0 1 6 , ĊĠĠĠĠĠĠĠĠĠĠĠĠ 3 , ĊĠĠĠĠĠĠĠĠĠĠĠĠ 1 5 , ĊĠĠĠĠĠĠĠĠĠĠĠĠ 2 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠ 1 4 , ĊĠĠĠĠĠĠĠĠĠĠĠĠ 0 ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġdate Ġ= Ġcal . time ĊĠĠĠĠĠĠĠ Ġval Ġz ulu Ġ= ĠZ ulu Util . to Z ulu ( date ) ĊĊĠĠĠĠĠĠĠ Ġval Ġgot Ġ= ĠZ ulu Util . toDate ( z ulu ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Conversion Ġfrom Ġcustom Ġz ulu Ġstring Ġshould Ġreturn Ġthe Ġsame Ġdate Ġthat Ġcreated Ġit ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdate . toString (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgot . toString () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġget Difference From _ returns _ seconds _ correct ly () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcal Ġ= ĠCalendar . getInstance () ĊĠĠĠĠĠĠĠ Ġcal . set ( ĊĠĠĠĠĠĠĠĠĠĠĠĠ 2 0 1 6 , ĊĠĠĠĠĠĠĠĠĠĠĠĠ 3 , ĊĠĠĠĠĠĠĠĠĠĠĠĠ 1 5 , ĊĠĠĠĠĠĠĠĠĠĠĠĠ 2 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠ 1 4 , ĊĠĠĠĠĠĠĠĠĠĠĠĠ 0 ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġvar Ġdate Ġ= Ġcal . time ĊĠĠĠĠĠĠĠ Ġval Ġz ulu Ġ= ĠZ ulu Util . to Z ulu ( date ) ĊĊĠĠĠĠĠĠĠ Ġcal . set ( ĊĠĠĠĠĠĠĠĠĠĠĠĠ 2 0 1 6 , ĊĠĠĠĠĠĠĠĠĠĠĠĠ 3 , ĊĠĠĠĠĠĠĠĠĠĠĠĠ 1 5 , ĊĠĠĠĠĠĠĠĠĠĠĠĠ 2 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠ 1 4 , ĊĠĠĠĠĠĠĠĠĠĠĠĠ 4 ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġdate Ġ= Ġcal . time ĊĠĠĠĠĠĠĠ Ġvar Ġdifference : ĠLong Ġ= ĠZ ulu Util . get Difference Between ( z ulu , Ġdate ) Ġ// Ġdifference Ġin Ġseconds ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A Ġdate Ġ 4 Ġseconds Ġlater Ġshould Ġreturn Ġ 4 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠ 4 L , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdifference ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġ// Ġbackwards ĊĠĠĠĠĠĠĠ Ġcal . set ( ĊĠĠĠĠĠĠĠĠĠĠĠĠ 2 0 1 6 , ĊĠĠĠĠĠĠĠĠĠĠĠĠ 3 , ĊĠĠĠĠĠĠĠĠĠĠĠĠ 1 5 , ĊĠĠĠĠĠĠĠĠĠĠĠĠ 2 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠ 1 3 , ĊĠĠĠĠĠĠĠĠĠĠĠĠ 5 6 ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġdate Ġ= Ġcal . time ĊĠĠĠĠĠĠĠ Ġdifference Ġ= ĠZ ulu Util . get Difference Between ( z ulu , Ġdate ) Ġ// Ġdifference Ġin Ġseconds ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" A Ġdate Ġ 4 Ġseconds Ġearlier Ġshould Ġreturn Ġ 4 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠ 4 L , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdifference ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊ Ċ }