/* Ċ Ġ* ĠCopyright Ġ( c ) ĠFacebook , ĠInc . Ġand Ġits Ġaffiliates . Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġcom . facebook . buck . mult it enant . query Ċ Ċ import Ġorg . hamcrest . Matchers Ċ import Ġorg . junit . Assert . assertEquals Ċ import Ġorg . junit . Assert . assertThat Ċ import Ġorg . junit . Test Ċ Ċ class ĠFs A gn ost ic Source Path Test Ġ{ ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun ĠtoString Is Path () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġempty Path Ġ= ĠFs A gn ost ic Source Path . of ("") ĊĠĠĠĠĠĠĠ ĠassertEquals ("", Ġempty Path . toString ()) ĊĊĠĠĠĠĠĠĠ Ġval Ġfoo Bar Ġ= ĠFs A gn ost ic Source Path . of (" foo / bar ") ĊĠĠĠĠĠĠĠ ĠassertEquals (" foo / bar ", Ġfoo Bar . toString ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġcompare To Ident ical Object () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġfoo Bar Ġ= ĠFs A gn ost ic Source Path . of (" foo / bar ") ĊĠĠĠĠĠĠĠ ĠassertEquals ( 0 , Ġfoo Bar . compareTo ( foo Bar )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġcompare Fs A gn ost ic Source Paths To Each Other () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġalpha Ġ= ĠFs A gn ost ic Source Path . of (" alpha / foo ") ĊĠĠĠĠĠĠĠ Ġval Ġbeta Ġ= ĠFs A gn ost ic Source Path . of (" beta / foo ") ĊĠĠĠĠĠĠĠ ĠassertThat ( alpha . compareTo ( beta ), ĠMatch ers . less Than ( 0 )) ĊĠĠĠĠĠĠĠ ĠassertThat ( beta . compareTo ( alpha ), ĠMatch ers . greater Than ( 0 )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠThis Ġis Ġdesigned Ġto Ġexercise Ġthe Ġ" compare Classes " Ġlogic Ġin Ġ[ Fs A gn ost ic Source Path . compareTo ]. ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġcompare Fs A gn ost ic Source Path To Path Source Path () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġfoo Path Ġ= ĠDummy Source Path (" foo ") ĊĠĠĠĠĠĠĠ Ġval Ġfoo Fs A gn ost ic Ġ= ĠFs A gn ost ic Source Path . of (" foo ") ĊĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" This Ġtest Ġassumes ĠFs A gn ost ic Source Path Ġhas Ġa Ġspecific Ġfully - qualified Ġname , Ġ" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" so Ġthis Ġtest Ġshould Ġbe Ġupdated Ġif Ġthat Ġassumption Ġno Ġlonger Ġholds .", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" com . facebook . buck . mult it enant . query . Fs A gn ost ic Source Path ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfoo Fs A gn ost ic . java Class . name ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" com . facebook . buck . mult it enant . query . Dummy Source Path Ġis Ġbefore Ġ" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" com . facebook . buck . mult it enant . query . Fs A gn ost ic Source Path Ġlex ico graph ically ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfoo Path . compareTo ( foo Fs A gn ost ic ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMatch ers . less Than ( 0 )) ĊĠĠĠĠĠĠĠ ĠassertThat ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" com . facebook . buck . mult it enant . query . Dummy Source Path Ġis Ġbefore Ġ" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" com . facebook . buck . mult it enant . query . Fs A gn ost ic Source Path Ġlex ico graph ically ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfoo Fs A gn ost ic . compareTo ( foo Path ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMatch ers . greater Than ( 0 )) ĊĠĠĠ Ġ} Ċ } Ċ