Some commands print straight to stdout/stderr instead of returning their output, which splits the (string, error) contract and makes the output untestable.
Areas to update:
types/DamageTable: return (string, error), threaded through TypesCommand
search: surface fetch errors via WarningMessage instead of fmt.Printf() in Update
pokemon: return wrapped image-download errors instead of printing them
cli: currentVersion() returns a string
Some commands print straight to
stdout/stderrinstead of returning their output, which splits the(string, error)contract and makes the output untestable.Areas to update:
types/DamageTable: return(string, error), threaded throughTypesCommandsearch: surface fetch errors viaWarningMessageinstead offmt.Printf()in Updatepokemon: return wrapped image-download errors instead of printing themcli:currentVersion()returns a string