package Ġlt . mark mer kk Ċ Ċ import Ġcom . n ha ar man . mock it ok otlin 2 . do Return Ċ import Ġcom . n ha ar man . mock it ok otlin 2 . spy Ċ import Ġcom . n ha ar man . mock it ok otlin 2 . wh enever Ċ import Ġorg . junit . Before Ċ import Ġorg . junit . Test Ċ import Ġorg . mockito . Mock Ċ import Ġorg . mockito . Mockito Annotations Ċ import Ġrx . Single Ċ Ċ class ĠTicket Storage Load Filtered Tickets Test Ġ{ ĊĊĠĠĠ Ġ@ Mock Ġlateinit Ġvar Ġconn Provider : ĠDB Conn Provider ĊĠĠĠ Ġ@ Mock Ġlateinit Ġvar Ġuser Settings : ĠUser Settings ĊĠĠĠ Ġlateinit Ġvar Ġticket Storage : ĠTicket Storage ĊĊĠĠĠ Ġprivate Ġval Ġtime Provider Ġ= ĠTime Provider Test () ĊĊĠĠĠ Ġ@ Before ĊĠĠĠ Ġfun ĠsetUp () Ġ{ ĊĠĠĠĠĠĠĠ ĠMockito Annotations . init Mocks ( this ) ĊĠĠĠĠĠĠĠ Ġticket Storage Ġ= Ġspy ( Ticket Storage ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconn Provider Ġ= Ġconn Provider , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtime Provider Ġ= Ġtime Provider ĊĠĠĠĠĠĠĠ Ġ)) ĊĠĠĠĠĠĠĠ Ġdo Return ( Mocks . create J ira User ( name Ġ= Ġ" admin ")). wh enever ( user Settings ). jira User () ĊĠĠĠĠĠĠĠ Ġdo Return ( true ). wh enever ( user Settings ). ticket Filter Include Assign ee ĊĠĠĠĠĠĠĠ Ġdo Return ( true ). wh enever ( user Settings ). ticket Filter Include Reporter ĊĠĠĠĠĠĠĠ Ġdo Return ( true ). wh enever ( user Settings ). ticket Filter Include Is Watch ing ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġno Statuses () Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠAs semble ĊĠĠĠĠĠĠĠ Ġval Ġstatuses Ġ= Ġempty List < List < String >>() ĊĠĠĠĠĠĠĠ Ġval Ġtickets Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMock s . create Ticket ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" DEV - 1 1 1 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= Ġ" To ĠDo ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassign ee Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreporter Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Watch ing Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMock s . create Ticket ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" DEV - 2 2 2 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= Ġ" Done ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassign ee Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreporter Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Watch ing Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMock s . create Ticket ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" DEV - 3 3 3 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= Ġ" Done ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassign ee Name Ġ= Ġ"", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreporter Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Watch ing Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġdo Return ( Single . just ( statuses )). wh enever ( ticket Storage ). enabled Statuses () ĊĠĠĠĠĠĠĠ Ġdo Return ( Single . just ( tickets )). wh enever ( ticket Storage ). load Tickets () ĊĊĠĠĠĠĠĠĠ Ġ// ĠAct ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġticket Storage . load Filtered Tickets ( user Settings ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĊĠĠĠĠĠĠĠ Ġ// ĠAssert ĊĠĠĠĠĠĠĠ Ġresult . assert Values ( tickets ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġonly Done () Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠAs semble ĊĠĠĠĠĠĠĠ Ġval Ġstatuses Ġ= ĠlistOf (" Done ") ĊĠĠĠĠĠĠĠ Ġval Ġtickets Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMock s . create Ticket ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" DEV - 1 1 1 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= Ġ" To ĠDo ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassign ee Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreporter Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Watch ing Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMock s . create Ticket ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" DEV - 2 2 2 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= Ġ" Done ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassign ee Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreporter Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Watch ing Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMock s . create Ticket ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" DEV - 3 3 3 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= Ġ" Done ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassign ee Name Ġ= Ġ"", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreporter Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Watch ing Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġdo Return ( Single . just ( statuses )). wh enever ( ticket Storage ). enabled Statuses () ĊĠĠĠĠĠĠĠ Ġdo Return ( Single . just ( tickets )). wh enever ( ticket Storage ). load Tickets () ĊĊĠĠĠĠĠĠĠ Ġ// ĠAct ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġticket Storage . load Filtered Tickets ( user Settings ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĊĠĠĠĠĠĠĠ Ġ// ĠAssert ĊĠĠĠĠĠĠĠ Ġresult . assert Values ( listOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtickets [ 1 ], ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtickets [ 2 ] ĊĠĠĠĠĠĠĠ Ġ)) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġinclude Only Assign ee () Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠAs semble ĊĠĠĠĠĠĠĠ Ġval Ġstatuses Ġ= Ġempty List < String >() ĊĠĠĠĠĠĠĠ Ġval Ġtickets Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMock s . create Ticket ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" DEV - 1 1 1 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= Ġ" To ĠDo ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassign ee Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreporter Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Watch ing Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMock s . create Ticket ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" DEV - 2 2 2 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= Ġ" Done ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassign ee Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreporter Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Watch ing Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMock s . create Ticket ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" DEV - 3 3 3 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= Ġ" Done ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassign ee Name Ġ= Ġ"", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreporter Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Watch ing Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġdo Return ( Single . just ( statuses )). wh enever ( ticket Storage ). enabled Statuses () ĊĠĠĠĠĠĠĠ Ġdo Return ( Single . just ( tickets )). wh enever ( ticket Storage ). load Tickets () ĊĠĠĠĠĠĠĠ Ġdo Return ( true ). wh enever ( user Settings ). ticket Filter Include Assign ee ĊĠĠĠĠĠĠĠ Ġdo Return ( false ). wh enever ( user Settings ). ticket Filter Include Reporter ĊĠĠĠĠĠĠĠ Ġdo Return ( false ). wh enever ( user Settings ). ticket Filter Include Is Watch ing ĊĊĠĠĠĠĠĠĠ Ġ// ĠAct ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġticket Storage . load Filtered Tickets ( user Settings ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĊĠĠĠĠĠĠĠ Ġ// ĠAssert ĊĠĠĠĠĠĠĠ Ġresult . assert Values ( listOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtickets [ 0 ], ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtickets [ 1 ] ĊĠĠĠĠĠĠĠ Ġ)) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġinclude Only Reported () Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠAs semble ĊĠĠĠĠĠĠĠ Ġval Ġstatuses Ġ= Ġempty List < String >() ĊĠĠĠĠĠĠĠ Ġval Ġtickets Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMock s . create Ticket ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" DEV - 1 1 1 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= Ġ" To ĠDo ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassign ee Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreporter Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Watch ing Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMock s . create Ticket ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" DEV - 2 2 2 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= Ġ" Done ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassign ee Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreporter Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Watch ing Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMock s . create Ticket ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" DEV - 3 3 3 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= Ġ" Done ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassign ee Name Ġ= Ġ"", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreporter Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Watch ing Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġdo Return ( Single . just ( statuses )). wh enever ( ticket Storage ). enabled Statuses () ĊĠĠĠĠĠĠĠ Ġdo Return ( Single . just ( tickets )). wh enever ( ticket Storage ). load Tickets () ĊĠĠĠĠĠĠĠ Ġdo Return ( false ). wh enever ( user Settings ). ticket Filter Include Assign ee ĊĠĠĠĠĠĠĠ Ġdo Return ( true ). wh enever ( user Settings ). ticket Filter Include Reporter ĊĠĠĠĠĠĠĠ Ġdo Return ( false ). wh enever ( user Settings ). ticket Filter Include Is Watch ing ĊĊĠĠĠĠĠĠĠ Ġ// ĠAct ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġticket Storage . load Filtered Tickets ( user Settings ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĊĠĠĠĠĠĠĠ Ġ// ĠAssert ĊĠĠĠĠĠĠĠ Ġresult . assert Values ( listOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtickets [ 0 ], ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtickets [ 1 ], ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtickets [ 2 ] ĊĠĠĠĠĠĠĠ Ġ)) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġinclude Only Watch ing () Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠAs semble ĊĠĠĠĠĠĠĠ Ġval Ġstatuses Ġ= Ġempty List < String >() ĊĠĠĠĠĠĠĠ Ġval Ġtickets Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMock s . create Ticket ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" DEV - 1 1 1 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= Ġ" To ĠDo ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassign ee Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreporter Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Watch ing Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMock s . create Ticket ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" DEV - 2 2 2 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= Ġ" Done ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassign ee Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreporter Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Watch ing Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMock s . create Ticket ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" DEV - 3 3 3 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= Ġ" Done ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassign ee Name Ġ= Ġ"", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreporter Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Watch ing Ġ= Ġtrue Ġ// Ġwatch able Ġticket ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġdo Return ( Single . just ( statuses )). wh enever ( ticket Storage ). enabled Statuses () ĊĠĠĠĠĠĠĠ Ġdo Return ( Single . just ( tickets )). wh enever ( ticket Storage ). load Tickets () ĊĠĠĠĠĠĠĠ Ġdo Return ( false ). wh enever ( user Settings ). ticket Filter Include Assign ee ĊĠĠĠĠĠĠĠ Ġdo Return ( false ). wh enever ( user Settings ). ticket Filter Include Reporter ĊĠĠĠĠĠĠĠ Ġdo Return ( true ). wh enever ( user Settings ). ticket Filter Include Is Watch ing ĊĊĠĠĠĠĠĠĠ Ġ// ĠAct ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġticket Storage . load Filtered Tickets ( user Settings ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĊĠĠĠĠĠĠĠ Ġ// ĠAssert ĊĠĠĠĠĠĠĠ Ġresult . assert Values ( listOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtickets [ 2 ] ĊĠĠĠĠĠĠĠ Ġ)) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġinclude All Filters () Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠAs semble ĊĠĠĠĠĠĠĠ Ġval Ġstatuses Ġ= Ġempty List < String >() ĊĠĠĠĠĠĠĠ Ġval Ġtickets Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMock s . create Ticket ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" DEV - 1 1 1 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= Ġ" To ĠDo ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassign ee Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreporter Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Watch ing Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMock s . create Ticket ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" DEV - 2 2 2 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= Ġ" Done ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassign ee Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreporter Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Watch ing Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMock s . create Ticket ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" DEV - 3 3 3 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= Ġ" Done ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġassign ee Name Ġ= Ġ"", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreporter Name Ġ= Ġ" admin ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Watch ing Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġdo Return ( Single . just ( statuses )). wh enever ( ticket Storage ). enabled Statuses () ĊĠĠĠĠĠĠĠ Ġdo Return ( Single . just ( tickets )). wh enever ( ticket Storage ). load Tickets () ĊĠĠĠĠĠĠĠ Ġdo Return ( true ). wh enever ( user Settings ). ticket Filter Include Assign ee ĊĠĠĠĠĠĠĠ Ġdo Return ( true ). wh enever ( user Settings ). ticket Filter Include Reporter ĊĠĠĠĠĠĠĠ Ġdo Return ( true ). wh enever ( user Settings ). ticket Filter Include Is Watch ing ĊĊĠĠĠĠĠĠĠ Ġ// ĠAct ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġticket Storage . load Filtered Tickets ( user Settings ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. test () ĊĊĠĠĠĠĠĠĠ Ġ// ĠAssert ĊĠĠĠĠĠĠĠ Ġresult . assert Values ( listOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtickets [ 0 ], ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtickets [ 1 ], ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtickets [ 2 ] ĊĠĠĠĠĠĠĠ Ġ)) ĊĠĠĠ Ġ} Ċ }