package Ġcom . es af irm . android boilerplate . test . common Ċ Ċ import Ġcom . es af irm . android boilerplate . data . model . Name Ċ import Ġcom . es af irm . android boilerplate . data . model . Profile Ċ import Ġcom . es af irm . android boilerplate . data . model . R ib ot Ċ import Ġcom . es af irm . android boilerplate . util . loop Ċ import Ġjava . util .* Ċ Ċ /** Ċ Ġ* ĠFactory Ġclass Ġthat Ġmakes Ġinstances Ġof Ġdata Ġmodels Ġwith Ġrandom Ġfield Ġvalues . Ċ Ġ* ĠThe Ġaim Ġof Ġthis Ġclass Ġis Ġto Ġhelp Ġsetting Ġup Ġtest Ġfixtures . Ċ Ġ*/ Ċ object ĠTest Data Factory Ġ{ ĊĊ ĉ fun Ġrandom Uuid (): ĠString Ġ{ Ċĉ ĉ return ĠUUID . randomUUID (). toString () Ċ ĉ } ĊĊ ĉ fun Ġmake R ib ot ( unique Suffix : ĠString ): ĠR ib ot Ġ{ Ċĉ ĉ return ĠR ib ot ( make Profile ( unique Suffix )) Ċ ĉ } ĊĊ ĉ fun Ġmake List R ib ots ( number : ĠInt ): ĠList < R ib ot > Ġ{ Ċĉ ĉ val Ġri bots Ġ= ĠArrayList < R ib ot >() Ċĉ ĉ for Ġ( i Ġin Ġ 0 .. number Ġ- Ġ 1 ) Ġ{ Ċĉ ĉ } ĊĊĉ ĉ number . loop Ġ{ Ċĉĉ ĉ ri bots . add ( make R ib ot ( it . toString ())) Ċĉ ĉ } ĊĊĉ ĉ return Ġri bots Ċ ĉ } ĊĊ ĉ fun Ġmake Profile ( unique Suffix : ĠString ): ĠProfile Ġ{ Ċĉ ĉ return ĠProfile . builder () Ċĉĉĉ ĉ . setName ( make Name ( unique Suffix )) Ċĉĉĉ ĉ . set Email (" email $ unique Suffix @ ri bot . co . uk ") Ċĉĉĉ ĉ . setDate OfBirth ( Date ()) Ċĉĉĉ ĉ . set Hex Color ("# 0 0 6 6 FF ") Ċĉĉĉ ĉ . set Avatar (" http :// api . ri bot . io / images /" Ġ+ Ġunique Suffix ) Ċĉĉĉ ĉ . set Bio ( random Uuid ()). build () Ċ ĉ } ĊĊ ĉ fun Ġmake Name ( unique Suffix : ĠString ): ĠName Ġ{ Ċĉ ĉ return ĠName (" Name -" Ġ+ Ġunique Suffix , Ġ" S urname -" Ġ+ Ġunique Suffix ) Ċ ĉ } Ċ } Ċ