package Ġpl . edu . z ut . mad . schedule . util Ċ Ċ import Ġcom . t ng tech . java . junit . dat apro vider . DataProvider Runner Ċ import Ġcom . t ng tech . java . junit . dat apro vider . Use DataProvider Ċ import Ġorg . assertj . core . api . Assertions . assertThat Ċ import Ġorg . joda . time . LocalDate Ċ import Ġorg . junit . Test Ċ import Ġorg . junit . runner . RunWith Ċ import Ġpl . edu . z ut . mad . schedule . Mock Data Ċ import Ġpl . edu . z ut . mad . schedule . Mock Data . Companion . DATE _ DAY Ċ import Ġpl . edu . z ut . mad . schedule . Mock Data . Companion . DATE _ MONTH Ċ import Ġpl . edu . z ut . mad . schedule . Mock Data . Companion . DATE _ YEAR Ċ import Ġpl . edu . z ut . mad . schedule . Mock Data . Companion . FAC UL TY _ AB BRE VI ATION Ċ import Ġpl . edu . z ut . mad . schedule . Mock Data . Companion . FIELD _ OF _ ST UD Y Ċ import Ġpl . edu . z ut . mad . schedule . Mock Data . Companion . ROOM Ċ import Ġpl . edu . z ut . mad . schedule . Mock Data . Companion . SE ME STER Ċ import Ġpl . edu . z ut . mad . schedule . Mock Data . Companion . SUBJECT Ċ import Ġpl . edu . z ut . mad . schedule . Mock Data . Companion . TE AC HER _ AC ADE MIC _ TITLE Ċ import Ġpl . edu . z ut . mad . schedule . Mock Data . Companion . TE AC HER _ NAME Ċ import Ġpl . edu . z ut . mad . schedule . Mock Data . Companion . TE AC HER _ SUR NAME Ċ import Ġpl . edu . z ut . mad . schedule . Mock Data . Companion . TIME _ END Ċ import Ġpl . edu . z ut . mad . schedule . Mock Data . Companion . TIME _ START Ċ import Ġpl . edu . z ut . mad . schedule . Mock Data . Companion . TYPE Ċ import Ġpl . edu . z ut . mad . schedule . data . model . ui . Empty Day Ċ import Ġpl . edu . z ut . mad . schedule . data . model . api . Day Ġas ĠDay Api Ċ import Ġpl . edu . z ut . mad . schedule . data . model . ui . Day Ġas ĠDay Ui Ċ Ċ @ Suppress (" Illegal Identifier ") Ċ @ RunWith ( DataProvider Runner :: class ) Ċ internal Ġclass ĠModelMapper Test Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġmodel Mapper Ġ= ĠModelMapper () ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ Use DataProvider (" day Api ", Ġlocation Ġ= Ġ[( Mock Data :: class )]) ĊĠĠĠ Ġfun Ġ` day Ġui Ġdate Ġis Ġequal Ġto Ġday Ġapi Ġdate `( day Api : ĠDay Api ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġday Ui Ġ= Ġmodel Mapper . to Day Ui From Api ( day Api ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( day Ui . date . day OfMonth ). isEqualTo ( DATE _ DAY ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ Use DataProvider (" day Api ", Ġlocation Ġ= Ġ[( Mock Data :: class )]) ĊĠĠĠ Ġfun Ġ` day Ġui Ġmonth Ġis Ġequal Ġto Ġday Ġapi Ġmonth `( day Api : ĠDay Api ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġday Ui Ġ= Ġmodel Mapper . to Day Ui From Api ( day Api ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( day Ui . date . month OfYear ). isEqualTo ( DATE _ MONTH ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ Use DataProvider (" day Api ", Ġlocation Ġ= Ġ[( Mock Data :: class )]) ĊĠĠĠ Ġfun Ġ` day Ġui Ġyear Ġis Ġequal Ġto Ġday Ġapi Ġyear `( day Api : ĠDay Api ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġday Ui Ġ= Ġmodel Mapper . to Day Ui From Api ( day Api ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( day Ui . date . year ). isEqualTo ( DATE _ YEAR ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ Use DataProvider (" day Api ", Ġlocation Ġ= Ġ[( Mock Data :: class )]) ĊĠĠĠ Ġfun Ġ` day Ġui Ġhas Ġproper Ġsubject `( day Api : ĠDay Api ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġday Ui Ġ= Ġmodel Mapper . to Day Ui From Api ( day Api ) ĊĠĠĠĠĠĠĠ Ġval Ġlesson Ġ= Ġday Ui . lessons [ 0 ] ĊĊĠĠĠĠĠĠĠ ĠassertThat ( lesson . subject ). isEqualTo ( SUBJECT ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ Use DataProvider (" day Api ", Ġlocation Ġ= Ġ[( Mock Data :: class )]) ĊĠĠĠ Ġfun Ġ` day Ġui Ġhas Ġproper Ġtype `( day Api : ĠDay Api ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġday Ui Ġ= Ġmodel Mapper . to Day Ui From Api ( day Api ) ĊĠĠĠĠĠĠĠ Ġval Ġlesson Ġ= Ġday Ui . lessons [ 0 ] ĊĊĠĠĠĠĠĠĠ ĠassertThat ( lesson . type ). isEqualTo ( TYPE ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ Use DataProvider (" day Api ", Ġlocation Ġ= Ġ[( Mock Data :: class )]) ĊĠĠĠ Ġfun Ġ` day Ġui Ġhas Ġproper Ġteacher Ġa cademic Ġtitle `( day Api : ĠDay Api ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġday Ui Ġ= Ġmodel Mapper . to Day Ui From Api ( day Api ) ĊĠĠĠĠĠĠĠ Ġval Ġlesson Ġ= Ġday Ui . lessons [ 0 ] ĊĊĠĠĠĠĠĠĠ ĠassertThat ( lesson . teacher . academic Title ). isEqualTo ( TE AC HER _ AC ADE MIC _ TITLE ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ Use DataProvider (" day Api ", Ġlocation Ġ= Ġ[( Mock Data :: class )]) ĊĠĠĠ Ġfun Ġ` day Ġui Ġhas Ġproper Ġteacher Ġname `( day Api : ĠDay Api ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġday Ui Ġ= Ġmodel Mapper . to Day Ui From Api ( day Api ) ĊĠĠĠĠĠĠĠ Ġval Ġlesson Ġ= Ġday Ui . lessons [ 0 ] ĊĊĠĠĠĠĠĠĠ ĠassertThat ( lesson . teacher . name ). isEqualTo ( TE AC HER _ NAME ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ Use DataProvider (" day Api ", Ġlocation Ġ= Ġ[( Mock Data :: class )]) ĊĠĠĠ Ġfun Ġ` day Ġui Ġhas Ġproper Ġteacher Ġs urname `( day Api : ĠDay Api ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġday Ui Ġ= Ġmodel Mapper . to Day Ui From Api ( day Api ) ĊĠĠĠĠĠĠĠ Ġval Ġlesson Ġ= Ġday Ui . lessons [ 0 ] ĊĊĠĠĠĠĠĠĠ ĠassertThat ( lesson . teacher . surname ). isEqualTo ( TE AC HER _ SUR NAME ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ Use DataProvider (" day Api ", Ġlocation Ġ= Ġ[( Mock Data :: class )]) ĊĠĠĠ Ġfun Ġ` day Ġui Ġhas Ġproper Ġroom `( day Api : ĠDay Api ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġday Ui Ġ= Ġmodel Mapper . to Day Ui From Api ( day Api ) ĊĠĠĠĠĠĠĠ Ġval Ġlesson Ġ= Ġday Ui . lessons [ 0 ] ĊĊĠĠĠĠĠĠĠ ĠassertThat ( lesson . room ). isEqualTo ( ROOM ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ Use DataProvider (" day Api ", Ġlocation Ġ= Ġ[( Mock Data :: class )]) ĊĠĠĠ Ġfun Ġ` day Ġui Ġtime Ġrange Ġstart Ġis Ġequal Ġto Ġtime Ġstart `( day Api : ĠDay Api ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġday Ui Ġ= Ġmodel Mapper . to Day Ui From Api ( day Api ) ĊĠĠĠĠĠĠĠ Ġval Ġlesson Ġ= Ġday Ui . lessons [ 0 ] ĊĊĠĠĠĠĠĠĠ ĠassertThat ( lesson . time Range . start ). isEqualTo ( TIME _ START ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ Use DataProvider (" day Api ", Ġlocation Ġ= Ġ[( Mock Data :: class )]) ĊĠĠĠ Ġfun Ġ` day Ġui Ġtime Ġrange Ġend Ġis Ġequal Ġto Ġtime Ġend `( day Api : ĠDay Api ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġday Ui Ġ= Ġmodel Mapper . to Day Ui From Api ( day Api ) ĊĠĠĠĠĠĠĠ Ġval Ġlesson Ġ= Ġday Ui . lessons [ 0 ] ĊĊĠĠĠĠĠĠĠ ĠassertThat ( lesson . time Range . end ). isEqualTo ( TIME _ END ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ Use DataProvider (" day Api ", Ġlocation Ġ= Ġ[( Mock Data :: class )]) ĊĠĠĠ Ġfun Ġ` day Ġui Ġhas Ġproper Ġfac ulty Ġabbre viation `( day Api : ĠDay Api ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġday Ui Ġ= Ġmodel Mapper . to Day Ui From Api ( day Api ) ĊĠĠĠĠĠĠĠ Ġval Ġlesson Ġ= Ġday Ui . lessons [ 0 ] ĊĊĠĠĠĠĠĠĠ ĠassertThat ( lesson . fac ulty Abbre viation ). isEqualTo ( FAC UL TY _ AB BRE VI ATION ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ Use DataProvider (" day Api ", Ġlocation Ġ= Ġ[( Mock Data :: class )]) ĊĠĠĠ Ġfun Ġ` day Ġui Ġhas Ġproper Ġfield Ġof Ġstudy Ġabbre viation `( day Api : ĠDay Api ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġday Ui Ġ= Ġmodel Mapper . to Day Ui From Api ( day Api ) ĊĠĠĠĠĠĠĠ Ġval Ġlesson Ġ= Ġday Ui . lessons [ 0 ] ĊĊĠĠĠĠĠĠĠ ĠassertThat ( lesson . field Of Study ). isEqualTo ( FIELD _ OF _ ST UD Y ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ Use DataProvider (" day Api ", Ġlocation Ġ= Ġ[( Mock Data :: class )]) ĊĠĠĠ Ġfun Ġ` day Ġui Ġhas Ġproper Ġse mester `( day Api : ĠDay Api ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġday Ui Ġ= Ġmodel Mapper . to Day Ui From Api ( day Api ) ĊĠĠĠĠĠĠĠ Ġval Ġlesson Ġ= Ġday Ui . lessons [ 0 ] ĊĊĠĠĠĠĠĠĠ ĠassertThat ( lesson . semester ). isEqualTo ( SE ME STER ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ Use DataProvider (" day Api ", Ġlocation Ġ= Ġ[( Mock Data :: class )]) ĊĠĠĠ Ġfun Ġ` day Ġui Ġlesson Ġis Ġcancelled Ġis Ġfalse `( day Api : ĠDay Api ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġday Ui Ġ= Ġmodel Mapper . to Day Ui From Api ( day Api ) ĊĠĠĠĠĠĠĠ Ġval Ġlesson Ġ= Ġday Ui . lessons [ 0 ] ĊĊĠĠĠĠĠĠĠ ĠassertThat ( lesson . is Cancelled ). isFalse () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ Use DataProvider (" day Api With Cancelled Lesson ", Ġlocation Ġ= Ġ[( Mock Data :: class )]) ĊĠĠĠ Ġfun Ġ` day Ġui Ġlesson Ġis Ġcancelled Ġis Ġtrue `( day Api : ĠDay Api ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġday Ui Ġ= Ġmodel Mapper . to Day Ui From Api ( day Api ) ĊĠĠĠĠĠĠĠ Ġval Ġlesson Ġ= Ġday Ui . lessons [ 0 ] ĊĊĠĠĠĠĠĠĠ ĠassertThat ( lesson . is Cancelled ). isTrue () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ Use DataProvider (" day Api ", Ġlocation Ġ= Ġ[( Mock Data :: class )]) ĊĠĠĠ Ġfun Ġ` day Ġui Ġlesson Ġis Ġexam Ġis Ġfalse `( day Api : ĠDay Api ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġday Ui Ġ= Ġmodel Mapper . to Day Ui From Api ( day Api ) ĊĠĠĠĠĠĠĠ Ġval Ġlesson Ġ= Ġday Ui . lessons [ 0 ] ĊĊĠĠĠĠĠĠĠ ĠassertThat ( lesson . is Exam ). isFalse () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ Use DataProvider (" day Api With Exam Lesson ", Ġlocation Ġ= Ġ[( Mock Data :: class )]) ĊĠĠĠ Ġfun Ġ` day Ġui Ġlesson Ġis Ġexam Ġis Ġtrue `( day Api : ĠDay Api ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġday Ui Ġ= Ġmodel Mapper . to Day Ui From Api ( day Api ) ĊĠĠĠĠĠĠĠ Ġval Ġlesson Ġ= Ġday Ui . lessons [ 0 ] ĊĊĠĠĠĠĠĠĠ ĠassertThat ( lesson . is Exam ). isTrue () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ Use DataProvider (" day Ui ", Ġlocation Ġ= Ġ[( Mock Data :: class )]) ĊĠĠĠ Ġfun Ġ` lesson Ġhas Ġevent Ġis Ġtrue `( day Ui : ĠDay Ui ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġlesson Event Ġ= Ġmodel Mapper . to Less ons Events ( day Ui )[ 0 ] ĊĊĠĠĠĠĠĠĠ ĠassertThat ( lesson Event . has Event ()). isTrue () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` empty Ġday Ġevent Ġis Ġnull `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġdate Ġ= ĠLocalDate . now () ĊĠĠĠĠĠĠĠ Ġval Ġempty Day Ġ= ĠEmpty Day ( date ) ĊĊĠĠĠĠĠĠĠ Ġval Ġlesson Event Ġ= Ġmodel Mapper . to Less ons Events ( empty Day )[ 0 ] ĊĊĠĠĠĠĠĠĠ ĠassertThat ( lesson Event . event ). isNull () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` empty Ġday Ġhas Ġevent Ġis Ġfalse `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġdate Ġ= ĠLocalDate . now () ĊĠĠĠĠĠĠĠ Ġval Ġempty Day Ġ= ĠEmpty Day ( date ) ĊĊĠĠĠĠĠĠĠ Ġval Ġlesson Event Ġ= Ġmodel Mapper . to Less ons Events ( empty Day )[ 0 ] ĊĊĠĠĠĠĠĠĠ ĠassertThat ( lesson Event . has Event ()). isFalse () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ Use DataProvider (" day Api List ", Ġlocation Ġ= Ġ[( Mock Data :: class )]) ĊĠĠĠ Ġfun Ġ` ui Ġless ons Ġshould Ġconsist Ġof Ġlesson Ġfrom Ġapi Ġdays `( days Api : ĠList < Day Api >) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġexpected Less ons Count Ġ= Ġdays Api . map Ġ{ Ġit . lessons Ġ}. sum By Ġ{ Ġit . size Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġless ons Ġ= Ġmodel Mapper . to Ui Less ons ( days Api ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( lessons . size ). isEqualTo ( expected Less ons Count ) ĊĠĠĠ Ġ} Ċ } Ċ