package Ġf tl . environment . ios Ċ Ċ import Ġcom . google . api . services . testing . model . I os Model Ċ import Ġf tl . test . util . TestHelper . get Throwable Ċ import Ġf tl . run . exception . Fl ank General Error Ċ import Ġorg . junit . Assert Ċ import Ġorg . junit . Test Ċ Ċ class ĠI os Model Description Test Ġ{ ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` should Ġreturn Ġmodel Ġwith Ġtag Ġif Ġany Ġtag Ġexists `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmodels Ġ= ĠlistOf ( I os Model (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdevice Capabilities Ġ= ĠlistOf (" accel erometer ", Ġ" arm 6 4 ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġform Factor Ġ= Ġ" PHONE " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" iphone 6 s " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" iPhone Ġ 6 s " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġscreen Density Ġ= Ġ 3 2 6 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġscreen X Ġ= Ġ 7 5 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġscreen Y Ġ= Ġ 1 3 3 4 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsupported Version Ids Ġ= ĠlistOf (" 1 0 . 3 ", Ġ" 1 1 . 2 ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtags Ġ= ĠlistOf (" deprecated = 1 0 . 3 ", Ġ" deprecated = 1 1 . 2 ") ĊĠĠĠĠĠĠĠ Ġ}) ĊĊĠĠĠĠĠĠĠ Ġval Ġmodel Description Ġ= Ġmodels . getDescription (" iphone 6 s ") ĊĠĠĠĠĠĠĠ Ġval Ġexpected Ġ= Ġ""" ĊĠĠĠĠĠĠĠ Ġdevice Capabilities : ĊĠĠĠĠĠĠĠ Ġ- Ġaccel erometer ĊĠĠĠĠĠĠĠ Ġ- Ġarm 6 4 ĊĠĠĠĠĠĠĠ Ġform Factor : ĠPH ONE ĊĠĠĠĠĠĠĠ Ġid : Ġi phone 6 s ĊĠĠĠĠĠĠĠ Ġname : ĠiPhone Ġ 6 s ĊĠĠĠĠĠĠĠ Ġscreen Density : Ġ 3 2 6 ĊĠĠĠĠĠĠĠ Ġscreen X : Ġ 7 5 0 ĊĠĠĠĠĠĠĠ Ġscreen Y : Ġ 1 3 3 4 ĊĠĠĠĠĠĠĠ Ġsupported Version Ids : ĊĠĠĠĠĠĠĠ Ġ- Ġ 1 0 . 3 ĊĠĠĠĠĠĠĠ Ġ- Ġ 1 1 . 2 ĊĠĠĠĠĠĠĠ Ġtags : ĊĠĠĠĠĠĠĠ Ġ- Ġdeprecated = 1 0 . 3 ĊĠĠĠĠĠĠĠ Ġ- Ġdeprecated = 1 1 . 2 Ċ """. trim Indent () ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( expected , Ġmodel Description ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` should Ġreturn Ġmodel Ġwithout Ġtag Ġif Ġno Ġtags `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmodels Ġ= ĠlistOf ( I os Model (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdevice Capabilities Ġ= ĠlistOf (" accel erometer ", Ġ" arm 6 4 ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġform Factor Ġ= Ġ" PHONE " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" iphone 6 s " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" iPhone Ġ 6 s " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġscreen Density Ġ= Ġ 3 2 6 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġscreen X Ġ= Ġ 7 5 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġscreen Y Ġ= Ġ 1 3 3 4 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsupported Version Ids Ġ= ĠlistOf (" 1 0 . 3 ", Ġ" 1 1 . 2 ") ĊĠĠĠĠĠĠĠ Ġ}) ĊĊĠĠĠĠĠĠĠ Ġval Ġmodel Description Ġ= Ġmodels . getDescription (" iphone 6 s ") ĊĠĠĠĠĠĠĠ Ġval Ġexpected Ġ= Ġ""" ĊĠĠĠĠĠĠĠ Ġdevice Capabilities : ĊĠĠĠĠĠĠĠ Ġ- Ġaccel erometer ĊĠĠĠĠĠĠĠ Ġ- Ġarm 6 4 ĊĠĠĠĠĠĠĠ Ġform Factor : ĠPH ONE ĊĠĠĠĠĠĠĠ Ġid : Ġi phone 6 s ĊĠĠĠĠĠĠĠ Ġname : ĠiPhone Ġ 6 s ĊĠĠĠĠĠĠĠ Ġscreen Density : Ġ 3 2 6 ĊĠĠĠĠĠĠĠ Ġscreen X : Ġ 7 5 0 ĊĠĠĠĠĠĠĠ Ġscreen Y : Ġ 1 3 3 4 ĊĠĠĠĠĠĠĠ Ġsupported Version Ids : ĊĠĠĠĠĠĠĠ Ġ- Ġ 1 0 . 3 ĊĠĠĠĠĠĠĠ Ġ- Ġ 1 1 . 2 Ċ """. trim Indent () ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( expected , Ġmodel Description ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ( expected Ġ= ĠFl ank General Error :: class ) ĊĠĠĠ Ġfun Ġ` should Ġreturn Ġerror Ġmessage Ġif Ġmodel Ġnot Ġfound Ġand Ġthrow ĠFl ank General Error `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġversions Ġ= ĠlistOf < I os Model >() ĊĠĠĠĠĠĠĠ Ġval Ġversion Name Ġ= Ġ" test " ĊĠĠĠĠĠĠĠ Ġval Ġlocales Description Ġ= Ġget Throwable Ġ{ Ġversions . getDescription ( version Name ) Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġexpected Ġ= Ġ" ERROR : Ġ'$ version Name ' Ġis Ġnot Ġa Ġvalid Ġmodel " ĊĠĠĠĠĠĠĠ ĠAssert . assertEquals ( expected , Ġlocales Description . message ) ĊĠĠĠĠĠĠĠ Ġthrow Ġlocales Description ĊĠĠĠ Ġ} Ċ } Ċ