package Ġordering Ċ Ċ import Ġcom . t so ved ens ki . csp . Domain Ċ import Ġcom . t so ved ens ki . csp . he ur istics . ordering . comp ar ators . Default Comparator Ċ import Ġcom . t so ved ens ki . csp . he ur istics . pr uning . Slice Ċ import Ġorg . junit . Test Ċ import Ġslice Test Ċ Ċ /** Ċ Ġ* ĠCreated Ġby ĠT sv et an ĠO ved ens ki Ġon Ġ 0 9 / 1 2 / 1 8 . Ċ Ġ*/ Ċ class ĠDefault Order Test Ġ{ ĊĠĠĠ Ġprivate Ġval Ġcomparator Ġ= ĠDefault Comparator < Char , ĠInt >() ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` when Ġall Ġare Ġchoice , Ġfirst Ġis Ġtaken `() Ġ= Ġslice Test ( comparator , ĊĠĠĠĠĠĠĠ ĠSlice (' A ', Ġset Of (' B ', Ġ' C ')), ĊĊĠĠĠĠĠĠĠ Ġ' A ' Ġto ĠDomain . of ( 1 , Ġ 2 , Ġ 3 ), ĊĠĠĠĠĠĠĠ Ġ' B ' Ġto ĠDomain . of ( 1 , Ġ 2 , Ġ 3 ), ĊĠĠĠĠĠĠĠ Ġ' C ' Ġto ĠDomain . of ( 1 , Ġ 2 , Ġ 3 ) ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` when Ġfirst Ġis Ġselected , Ġsecond Ġis Ġtaken `() Ġ= Ġslice Test ( comparator , ĊĠĠĠĠĠĠĠ ĠSlice (' B ', Ġset Of (' C '), Ġset Of (' A ')), ĊĊĠĠĠĠĠĠĠ Ġ' A ' Ġto ĠDomain . of ( 1 ), ĊĠĠĠĠĠĠĠ Ġ' B ' Ġto ĠDomain . of ( 1 , Ġ 2 , Ġ 3 ), ĊĠĠĠĠĠĠĠ Ġ' C ' Ġto ĠDomain . of ( 1 , Ġ 2 , Ġ 3 ) ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` when Ġchoice Ġis Ġbetween Ġtwo Ġselected , Ġit Ġis Ġtaken `() Ġ= Ġslice Test ( comparator , ĊĠĠĠĠĠĠĠ ĠSlice (' B ', Ġset Of (' D '), Ġset Of (' A ', Ġ' C ')), ĊĊĠĠĠĠĠĠĠ Ġ' A ' Ġto ĠDomain . of ( 1 ), ĊĠĠĠĠĠĠĠ Ġ' B ' Ġto ĠDomain . of ( 1 , Ġ 2 , Ġ 3 ), ĊĠĠĠĠĠĠĠ Ġ' C ' Ġto ĠDomain . of ( 1 ), ĊĠĠĠĠĠĠĠ Ġ' D ' Ġto ĠDomain . of ( 1 , Ġ 2 , Ġ 3 ) ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` when Ġall Ġare Ġselected , Ġcurrent Ġis Ġnull Ġand Ġnext Ġis Ġempty `() Ġ= Ġslice Test ( comparator , ĊĠĠĠĠĠĠĠ ĠSlice ( null , Ġset Of < Char >(), Ġset Of (' A ', Ġ' B ', Ġ' C ')), ĊĊĠĠĠĠĠĠĠ Ġ' A ' Ġto ĠDomain . of ( 1 ), ĊĠĠĠĠĠĠĠ Ġ' B ' Ġto ĠDomain . of ( 2 ), ĊĠĠĠĠĠĠĠ Ġ' C ' Ġto ĠDomain . of ( 3 ) ĊĠĠĠ Ġ) Ċ } Ċ