mirror of
https://github.com/d0zingcat/gocryptotrader.git
synced 2026-05-19 23:16:48 +00:00
Use string.EqualFold where necessary
This commit is contained in:
@@ -145,7 +145,7 @@ func IsValidCryptoAddress(address, crypto string) (bool, error) {
|
||||
|
||||
// YesOrNo returns a boolean variable to check if input is "y" or "yes"
|
||||
func YesOrNo(input string) bool {
|
||||
if strings.ToLower(input) == "y" || strings.ToLower(input) == "yes" {
|
||||
if strings.EqualFold(input, "y") || strings.EqualFold(input, "yes") {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
|
||||
@@ -1,55 +1,55 @@
|
||||
package convert
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"strconv"
|
||||
"time"
|
||||
)
|
||||
|
||||
// FloatFromString format
|
||||
func FloatFromString(raw interface{}) (float64, error) {
|
||||
str, ok := raw.(string)
|
||||
if !ok {
|
||||
return 0, fmt.Errorf("unable to parse, value not string: %T", raw)
|
||||
}
|
||||
flt, err := strconv.ParseFloat(str, 64)
|
||||
if err != nil {
|
||||
return 0, fmt.Errorf("could not convert value: %s Error: %s", str, err)
|
||||
}
|
||||
return flt, nil
|
||||
}
|
||||
|
||||
// IntFromString format
|
||||
func IntFromString(raw interface{}) (int, error) {
|
||||
str, ok := raw.(string)
|
||||
if !ok {
|
||||
return 0, fmt.Errorf("unable to parse, value not string: %T", raw)
|
||||
}
|
||||
n, err := strconv.Atoi(str)
|
||||
if err != nil {
|
||||
return 0, fmt.Errorf("unable to parse as int: %T", raw)
|
||||
}
|
||||
return n, nil
|
||||
}
|
||||
|
||||
// Int64FromString format
|
||||
func Int64FromString(raw interface{}) (int64, error) {
|
||||
str, ok := raw.(string)
|
||||
if !ok {
|
||||
return 0, fmt.Errorf("unable to parse, value not string: %T", raw)
|
||||
}
|
||||
n, err := strconv.ParseInt(str, 10, 64)
|
||||
if err != nil {
|
||||
return 0, fmt.Errorf("unable to parse as int64: %T", raw)
|
||||
}
|
||||
return n, nil
|
||||
}
|
||||
|
||||
// TimeFromUnixTimestampFloat format
|
||||
func TimeFromUnixTimestampFloat(raw interface{}) (time.Time, error) {
|
||||
ts, ok := raw.(float64)
|
||||
if !ok {
|
||||
return time.Time{}, fmt.Errorf("unable to parse, value not float64: %T", raw)
|
||||
}
|
||||
return time.Unix(0, int64(ts)*int64(time.Millisecond)), nil
|
||||
}
|
||||
package convert
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"strconv"
|
||||
"time"
|
||||
)
|
||||
|
||||
// FloatFromString format
|
||||
func FloatFromString(raw interface{}) (float64, error) {
|
||||
str, ok := raw.(string)
|
||||
if !ok {
|
||||
return 0, fmt.Errorf("unable to parse, value not string: %T", raw)
|
||||
}
|
||||
flt, err := strconv.ParseFloat(str, 64)
|
||||
if err != nil {
|
||||
return 0, fmt.Errorf("could not convert value: %s Error: %s", str, err)
|
||||
}
|
||||
return flt, nil
|
||||
}
|
||||
|
||||
// IntFromString format
|
||||
func IntFromString(raw interface{}) (int, error) {
|
||||
str, ok := raw.(string)
|
||||
if !ok {
|
||||
return 0, fmt.Errorf("unable to parse, value not string: %T", raw)
|
||||
}
|
||||
n, err := strconv.Atoi(str)
|
||||
if err != nil {
|
||||
return 0, fmt.Errorf("unable to parse as int: %T", raw)
|
||||
}
|
||||
return n, nil
|
||||
}
|
||||
|
||||
// Int64FromString format
|
||||
func Int64FromString(raw interface{}) (int64, error) {
|
||||
str, ok := raw.(string)
|
||||
if !ok {
|
||||
return 0, fmt.Errorf("unable to parse, value not string: %T", raw)
|
||||
}
|
||||
n, err := strconv.ParseInt(str, 10, 64)
|
||||
if err != nil {
|
||||
return 0, fmt.Errorf("unable to parse as int64: %T", raw)
|
||||
}
|
||||
return n, nil
|
||||
}
|
||||
|
||||
// TimeFromUnixTimestampFloat format
|
||||
func TimeFromUnixTimestampFloat(raw interface{}) (time.Time, error) {
|
||||
ts, ok := raw.(float64)
|
||||
if !ok {
|
||||
return time.Time{}, fmt.Errorf("unable to parse, value not float64: %T", raw)
|
||||
}
|
||||
return time.Unix(0, int64(ts)*int64(time.Millisecond)), nil
|
||||
}
|
||||
|
||||
@@ -1,96 +1,96 @@
|
||||
package convert
|
||||
|
||||
import (
|
||||
"testing"
|
||||
"time"
|
||||
)
|
||||
|
||||
func TestFloatFromString(t *testing.T) {
|
||||
t.Parallel()
|
||||
testString := "1.41421356237"
|
||||
expectedOutput := float64(1.41421356237)
|
||||
|
||||
actualOutput, err := FloatFromString(testString)
|
||||
if actualOutput != expectedOutput || err != nil {
|
||||
t.Errorf("Test failed. Common FloatFromString. Expected '%v'. Actual '%v'. Error: %s",
|
||||
expectedOutput, actualOutput, err)
|
||||
}
|
||||
|
||||
var testByte []byte
|
||||
_, err = FloatFromString(testByte)
|
||||
if err == nil {
|
||||
t.Error("Test failed. Common FloatFromString. Converted non-string.")
|
||||
}
|
||||
|
||||
testString = " something unconvertible "
|
||||
_, err = FloatFromString(testString)
|
||||
if err == nil {
|
||||
t.Error("Test failed. Common FloatFromString. Converted invalid syntax.")
|
||||
}
|
||||
}
|
||||
|
||||
func TestIntFromString(t *testing.T) {
|
||||
t.Parallel()
|
||||
testString := "1337"
|
||||
expectedOutput := 1337
|
||||
|
||||
actualOutput, err := IntFromString(testString)
|
||||
if actualOutput != expectedOutput || err != nil {
|
||||
t.Errorf("Test failed. Common IntFromString. Expected '%v'. Actual '%v'. Error: %s",
|
||||
expectedOutput, actualOutput, err)
|
||||
}
|
||||
|
||||
var testByte []byte
|
||||
_, err = IntFromString(testByte)
|
||||
if err == nil {
|
||||
t.Error("Test failed. Common IntFromString. Converted non-string.")
|
||||
}
|
||||
|
||||
testString = "1.41421356237"
|
||||
_, err = IntFromString(testString)
|
||||
if err == nil {
|
||||
t.Error("Test failed. Common IntFromString. Converted invalid syntax.")
|
||||
}
|
||||
}
|
||||
|
||||
func TestInt64FromString(t *testing.T) {
|
||||
t.Parallel()
|
||||
testString := "4398046511104"
|
||||
expectedOutput := int64(1 << 42)
|
||||
|
||||
actualOutput, err := Int64FromString(testString)
|
||||
if actualOutput != expectedOutput || err != nil {
|
||||
t.Errorf("Test failed. Common Int64FromString. Expected '%v'. Actual '%v'. Error: %s",
|
||||
expectedOutput, actualOutput, err)
|
||||
}
|
||||
|
||||
var testByte []byte
|
||||
_, err = Int64FromString(testByte)
|
||||
if err == nil {
|
||||
t.Error("Test failed. Common Int64FromString. Converted non-string.")
|
||||
}
|
||||
|
||||
testString = "1.41421356237"
|
||||
_, err = Int64FromString(testString)
|
||||
if err == nil {
|
||||
t.Error("Test failed. Common Int64FromString. Converted invalid syntax.")
|
||||
}
|
||||
}
|
||||
|
||||
func TestTimeFromUnixTimestampFloat(t *testing.T) {
|
||||
t.Parallel()
|
||||
testTimestamp := float64(1414456320000)
|
||||
expectedOutput := time.Date(2014, time.October, 28, 0, 32, 0, 0, time.UTC)
|
||||
|
||||
actualOutput, err := TimeFromUnixTimestampFloat(testTimestamp)
|
||||
if actualOutput.UTC().String() != expectedOutput.UTC().String() || err != nil {
|
||||
t.Errorf("Test failed. Common TimeFromUnixTimestampFloat. Expected '%v'. Actual '%v'. Error: %s",
|
||||
expectedOutput, actualOutput, err)
|
||||
}
|
||||
|
||||
testString := "Time"
|
||||
_, err = TimeFromUnixTimestampFloat(testString)
|
||||
if err == nil {
|
||||
t.Error("Test failed. Common TimeFromUnixTimestampFloat. Converted invalid syntax.")
|
||||
}
|
||||
}
|
||||
package convert
|
||||
|
||||
import (
|
||||
"testing"
|
||||
"time"
|
||||
)
|
||||
|
||||
func TestFloatFromString(t *testing.T) {
|
||||
t.Parallel()
|
||||
testString := "1.41421356237"
|
||||
expectedOutput := float64(1.41421356237)
|
||||
|
||||
actualOutput, err := FloatFromString(testString)
|
||||
if actualOutput != expectedOutput || err != nil {
|
||||
t.Errorf("Test failed. Common FloatFromString. Expected '%v'. Actual '%v'. Error: %s",
|
||||
expectedOutput, actualOutput, err)
|
||||
}
|
||||
|
||||
var testByte []byte
|
||||
_, err = FloatFromString(testByte)
|
||||
if err == nil {
|
||||
t.Error("Test failed. Common FloatFromString. Converted non-string.")
|
||||
}
|
||||
|
||||
testString = " something unconvertible "
|
||||
_, err = FloatFromString(testString)
|
||||
if err == nil {
|
||||
t.Error("Test failed. Common FloatFromString. Converted invalid syntax.")
|
||||
}
|
||||
}
|
||||
|
||||
func TestIntFromString(t *testing.T) {
|
||||
t.Parallel()
|
||||
testString := "1337"
|
||||
expectedOutput := 1337
|
||||
|
||||
actualOutput, err := IntFromString(testString)
|
||||
if actualOutput != expectedOutput || err != nil {
|
||||
t.Errorf("Test failed. Common IntFromString. Expected '%v'. Actual '%v'. Error: %s",
|
||||
expectedOutput, actualOutput, err)
|
||||
}
|
||||
|
||||
var testByte []byte
|
||||
_, err = IntFromString(testByte)
|
||||
if err == nil {
|
||||
t.Error("Test failed. Common IntFromString. Converted non-string.")
|
||||
}
|
||||
|
||||
testString = "1.41421356237"
|
||||
_, err = IntFromString(testString)
|
||||
if err == nil {
|
||||
t.Error("Test failed. Common IntFromString. Converted invalid syntax.")
|
||||
}
|
||||
}
|
||||
|
||||
func TestInt64FromString(t *testing.T) {
|
||||
t.Parallel()
|
||||
testString := "4398046511104"
|
||||
expectedOutput := int64(1 << 42)
|
||||
|
||||
actualOutput, err := Int64FromString(testString)
|
||||
if actualOutput != expectedOutput || err != nil {
|
||||
t.Errorf("Test failed. Common Int64FromString. Expected '%v'. Actual '%v'. Error: %s",
|
||||
expectedOutput, actualOutput, err)
|
||||
}
|
||||
|
||||
var testByte []byte
|
||||
_, err = Int64FromString(testByte)
|
||||
if err == nil {
|
||||
t.Error("Test failed. Common Int64FromString. Converted non-string.")
|
||||
}
|
||||
|
||||
testString = "1.41421356237"
|
||||
_, err = Int64FromString(testString)
|
||||
if err == nil {
|
||||
t.Error("Test failed. Common Int64FromString. Converted invalid syntax.")
|
||||
}
|
||||
}
|
||||
|
||||
func TestTimeFromUnixTimestampFloat(t *testing.T) {
|
||||
t.Parallel()
|
||||
testTimestamp := float64(1414456320000)
|
||||
expectedOutput := time.Date(2014, time.October, 28, 0, 32, 0, 0, time.UTC)
|
||||
|
||||
actualOutput, err := TimeFromUnixTimestampFloat(testTimestamp)
|
||||
if actualOutput.UTC().String() != expectedOutput.UTC().String() || err != nil {
|
||||
t.Errorf("Test failed. Common TimeFromUnixTimestampFloat. Expected '%v'. Actual '%v'. Error: %s",
|
||||
expectedOutput, actualOutput, err)
|
||||
}
|
||||
|
||||
testString := "Time"
|
||||
_, err = TimeFromUnixTimestampFloat(testString)
|
||||
if err == nil {
|
||||
t.Error("Test failed. Common TimeFromUnixTimestampFloat. Converted invalid syntax.")
|
||||
}
|
||||
}
|
||||
|
||||
@@ -89,7 +89,7 @@ func (s *SMSGlobal) GetContactByNumber(number string) (Contact, error) {
|
||||
// GetContactByName returns a contact with supplied name
|
||||
func (s *SMSGlobal) GetContactByName(name string) (Contact, error) {
|
||||
for x := range s.Contacts {
|
||||
if strings.ToLower(s.Contacts[x].Name) == strings.ToLower(name) {
|
||||
if strings.EqualFold(s.Contacts[x].Name, name) {
|
||||
return s.Contacts[x], nil
|
||||
}
|
||||
}
|
||||
@@ -113,7 +113,7 @@ func (s *SMSGlobal) AddContact(contact Contact) error {
|
||||
// ContactExists checks to see if a contact exists
|
||||
func (s *SMSGlobal) ContactExists(contact Contact) bool {
|
||||
for x := range s.Contacts {
|
||||
if s.Contacts[x].Number == contact.Number && strings.ToLower(s.Contacts[x].Name) == strings.ToLower(contact.Name) {
|
||||
if s.Contacts[x].Number == contact.Number && strings.EqualFold(s.Contacts[x].Name, contact.Name) {
|
||||
return true
|
||||
}
|
||||
}
|
||||
|
||||
@@ -66,7 +66,7 @@ func cleanCurrencies(baseCurrency, symbols string) string {
|
||||
}
|
||||
|
||||
// remove and warn about any unsupported currencies
|
||||
if !strings.Contains(exchangeRatesSupportedCurrencies, x) {
|
||||
if !strings.Contains(exchangeRatesSupportedCurrencies, x) { // nolint:gocritic
|
||||
log.Warnf("Forex provider ExchangeRatesAPI does not support currency %s, removing from forex rates query.", x)
|
||||
continue
|
||||
}
|
||||
|
||||
@@ -329,7 +329,7 @@ func IsValidExchange(exchangeName string) bool {
|
||||
exchangeName = strings.ToLower(exchangeName)
|
||||
cfg := config.GetConfig()
|
||||
for x := range cfg.Exchanges {
|
||||
if strings.ToLower(cfg.Exchanges[x].Name) == exchangeName && cfg.Exchanges[x].Enabled {
|
||||
if strings.EqualFold(cfg.Exchanges[x].Name, exchangeName) && cfg.Exchanges[x].Enabled {
|
||||
return true
|
||||
}
|
||||
}
|
||||
|
||||
@@ -238,7 +238,7 @@ func (e *EXMO) WithdrawCryptocurrency(currency, address, invoice string, amount
|
||||
v.Set("currency", currency)
|
||||
v.Set("address", address)
|
||||
|
||||
if strings.ToUpper(currency) == "XRP" {
|
||||
if strings.EqualFold(currency, "XRP") {
|
||||
v.Set(invoice, invoice)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user