bytes_test.go 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. package bytes
  2. import (
  3. "testing"
  4. "github.com/stretchr/testify/assert"
  5. )
  6. func TestBytesFormat(t *testing.T) {
  7. // B
  8. b := Format(515)
  9. assert.Equal(t, "515B", b)
  10. // KB
  11. b = Format(31323)
  12. assert.Equal(t, "30.59KB", b)
  13. // MB
  14. b = Format(13231323)
  15. assert.Equal(t, "12.62MB", b)
  16. // GB
  17. b = Format(7323232398)
  18. assert.Equal(t, "6.82GB", b)
  19. // TB
  20. b = Format(7323232398434)
  21. assert.Equal(t, "6.66TB", b)
  22. // PB
  23. b = Format(9923232398434432)
  24. assert.Equal(t, "8.81PB", b)
  25. }
  26. func TestBytesParse(t *testing.T) {
  27. // B
  28. b, err := Parse("515B")
  29. if assert.NoError(t, err) {
  30. assert.Equal(t, 515, b)
  31. }
  32. // KB
  33. b, err = Parse("12KB")
  34. if assert.NoError(t, err) {
  35. assert.Equal(t, 12288, b)
  36. }
  37. b, err = Parse("12K")
  38. if assert.NoError(t, err) {
  39. assert.Equal(t, 12288, b)
  40. }
  41. // MB
  42. b, err = Parse("2MB")
  43. if assert.NoError(t, err) {
  44. assert.Equal(t, 2097152, b)
  45. }
  46. b, err = Parse("2M")
  47. if assert.NoError(t, err) {
  48. assert.Equal(t, 2097152, b)
  49. }
  50. // GB
  51. b, err = Parse("6GB")
  52. if assert.NoError(t, err) {
  53. assert.Equal(t, 6442450944, b)
  54. }
  55. b, err = Parse("6G")
  56. if assert.NoError(t, err) {
  57. assert.Equal(t, 6442450944, b)
  58. }
  59. // TB
  60. b, err = Parse("5TB")
  61. if assert.NoError(t, err) {
  62. assert.Equal(t, 5497558138880, b)
  63. }
  64. b, err = Parse("5T")
  65. if assert.NoError(t, err) {
  66. assert.Equal(t, 5497558138880, b)
  67. }
  68. // PB
  69. b, err = Parse("9PB")
  70. if assert.NoError(t, err) {
  71. assert.Equal(t, 10133099161583616, b)
  72. }
  73. b, err = Parse("9P")
  74. if assert.NoError(t, err) {
  75. assert.Equal(t, 10133099161583616, b)
  76. }
  77. }