conv_test.go 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. package utils
  2. import (
  3. "testing"
  4. )
  5. func TestStringToInt64(t *testing.T) {
  6. // Test case 1: Valid positive number string
  7. result, err := StringToInt64("123")
  8. if err != nil || result != 123 {
  9. t.Errorf("Test case 1 failed. Expected: 123, Got: %v, Error: %v", result, err)
  10. }
  11. // Test case 2: Valid negative number string
  12. result, err = StringToInt64("-456")
  13. if err != nil || result != -456 {
  14. t.Errorf("Test case 2 failed. Expected: -456, Got: %v, Error: %v", result, err)
  15. }
  16. // Test case 3: Invalid non-number string
  17. _, err = StringToInt64("abc")
  18. if err == nil {
  19. t.Errorf("Test case 3 failed. Expected an error for invalid input.")
  20. }
  21. // Test case 4: Valid zero string
  22. result, err = StringToInt64("0")
  23. if err != nil || result != 0 {
  24. t.Errorf("Test case 4 failed. Expected: 0, Got: %v, Error: %v", result, err)
  25. }
  26. // Test case 5: Valid large positive number string
  27. result, err = StringToInt64("9223372036854775807")
  28. if err != nil || result != 9223372036854775807 {
  29. t.Errorf("Test case 5 failed. Expected: 9223372036854775807, Got: %v, Error: %v", result, err)
  30. }
  31. }
  32. func TestInt64ToString(t *testing.T) {
  33. // Test case 1: Valid positive number
  34. result := Int64ToString(123)
  35. if result != "123" {
  36. t.Errorf("Test case 1 failed. Expected: '123', Got: '%s'", result)
  37. }
  38. // Test case 2: Valid negative number
  39. result = Int64ToString(-456)
  40. if result != "-456" {
  41. t.Errorf("Test case 2 failed. Expected: '-456', Got: '%s'", result)
  42. }
  43. // Test case 3: Valid zero
  44. result = Int64ToString(0)
  45. if result != "0" {
  46. t.Errorf("Test case 3 failed. Expected: '0', Got: '%s'", result)
  47. }
  48. // Test case 4: Valid large positive number
  49. result = Int64ToString(9223372036854775807)
  50. if result != "9223372036854775807" {
  51. t.Errorf("Test case 4 failed. Expected: '9223372036854775807', Got: '%s'", result)
  52. }
  53. // Test case 5: Valid large negative number
  54. result = Int64ToString(-9223372036854775808)
  55. if result != "-9223372036854775808" {
  56. t.Errorf("Test case 5 failed. Expected: '-9223372036854775808', Got: '%s'", result)
  57. }
  58. }