package Ġeu . t ib . ork g . prototype . auth . domain . model Ċ Ċ import Ġorg . assertj . core . api . Assertions . assertThat Ċ import Ġorg . junit . jupiter . api . DisplayName Ċ import Ġorg . junit . jupiter . api . Test Ċ Ċ // ĠAll Ġhashes Ġhave Ġbeen Ġpre - computed Ġon Ġthe Ġcommand Ġline Ġwith Ġ" echo Ġ- n ĠINPUT Ġ| Ġmd 5 Ġ- ". Ċ @ DisplayName (" A ĠGr avatar ĠID ") Ċ internal Ġclass ĠGr avatar Id Test Ġ{ ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ DisplayName (" should Ġremove Ġtrailing Ġwh ites p aces ") ĊĠĠĠ Ġfun Ġshould Remove Trailing Wh ites p aces () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġid Ġ= ĠGr avatar Id ("\ t user @ example . org Ġ\ n Ġ") ĊĠĠĠĠĠĠĠ ĠassertThat ( id . toString ()). isEqualTo (" 5 7 2 c 3 4 8 9 ea 7 0 0 0 4 5 9 2 7 0 7 6 1 3 6 a 9 6 9 e 2 7 ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ DisplayName (" should Ġconvert Ġto Ġlowercase ") ĊĠĠĠ Ġfun Ġshould Convert ToLower case () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġid Ġ= ĠGr avatar Id (" Use R @ example . org ") Ġ// Ġno Ġhidden Ġmessage Ġhere Ġ: P ĊĠĠĠĠĠĠĠ ĠassertThat ( id . toString ()). isEqualTo (" 5 7 2 c 3 4 8 9 ea 7 0 0 0 4 5 9 2 7 0 7 6 1 3 6 a 9 6 9 e 2 7 ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ DisplayName (" should Ġreturn Ġhash Ġas Ġstring Ġrepresentation ") ĊĠĠĠ Ġfun Ġshould Return Hash AsString Representation () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġid Ġ= ĠGr avatar Id (" user @ example . org ") ĊĠĠĠĠĠĠĠ ĠassertThat ( id . toString ()). isEqualTo (" 5 7 2 c 3 4 8 9 ea 7 0 0 0 4 5 9 2 7 0 7 6 1 3 6 a 9 6 9 e 2 7 ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ DisplayName (" should Ġexpand Ġhash Ġto Ġ 3 2 Ġcharacters , Ġprefixed Ġwith Ġzero ( s )") ĊĠĠĠ Ġfun Ġshould Expand Hash To 3 2 Characters Prefix ed With Zero S () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġid Ġ= ĠGr avatar Id (" user 1 4 @ example . org ") Ġ// Ġcarefully Ġchosen Ġto Ġstart Ġwith Ġ 4 Ġzero - bits ĊĠĠĠĠĠĠĠ ĠassertThat ( id . toString ()). has Size ( 3 2 ) ĊĠĠĠĠĠĠĠ ĠassertThat ( id . toString ()). isEqualTo (" 0 f 3 5 5 fa 8 2 3 7 e 4 1 1 a 3 2 5 dad 6 ebf 8 a 8 5 a 3 ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ DisplayName (""" should Ġprovide Ġthe Ġhashed Ġvalue Ġvia Ġthe Ġ" id " Ġproperty """) ĊĠĠĠ Ġfun Ġshould Provide The Has hed Value Via The Id Property () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġid Ġ= ĠGr avatar Id (" user @ example . org ") ĊĠĠĠĠĠĠĠ ĠassertThat ( id . id ). isEqualTo (" 5 7 2 c 3 4 8 9 ea 7 0 0 0 4 5 9 2 7 0 7 6 1 3 6 a 9 6 9 e 2 7 ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ DisplayName (" should Ġprovide Ġthe ĠURL Ġto Ġthe ĠGr avatar Ġimage ") ĊĠĠĠ Ġfun Ġshould Provide The Url To The Gr avatar Image () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġid Ġ= ĠGr avatar Id (" user @ example . org ") ĊĠĠĠĠĠĠĠ ĠassertThat ( id . image URL ()). isEqualTo (" https :// www . gr avatar . com / avatar / 5 7 2 c 3 4 8 9 ea 7 0 0 0 4 5 9 2 7 0 7 6 1 3 6 a 9 6 9 e 2 7 ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġ@ DisplayName (" should Ġforce Ġa Ġdefault Ġif Ġemail Ġis Ġnot Ġavailable ") ĊĠĠĠ Ġfun Ġshould Force A Default If Email IsNot Available () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġid Ġ= ĠGr avatar Id () ĊĠĠĠĠĠĠĠ ĠassertThat ( id . image URL ()). isEqualTo (" https :// www . gr avatar . com / avatar /? d = mp & f = y ") ĊĠĠĠ Ġ} Ċ } Ċ