Files
mlsr/utils/base62_test.go

36 lines
1.3 KiB
Go

// Package hello
// @Author: Wang Feng
// @Description: base62编解码。源代码:https://github.com/lytics/base62
// @Version: 0.1.0
// @Date: 2022/7/14 22:20
// @Copyright: MIN-Group;国家重大科技基础设施——未来网络北大实验室;深圳市信息论与未来网络重点实验室
//
package utils
import (
"github.com/stretchr/testify/assert"
"testing"
)
func TestBase62(t *testing.T) {
urlVal := "http://www.lytics.io/?utm_content=content&utm_campaign=campaign"
encodedValue := Base62StdEncoding.EncodeToString([]byte(urlVal))
assert.NotEqual(t, "", encodedValue)
rtVal, err := Base62StdEncoding.DecodeString(encodedValue)
assert.Equal(t, nil, err)
assert.Equal(t, string(rtVal), urlVal)
intVal := "999"
encodedValue = Base62StdEncoding.EncodeToString([]byte(intVal))
assert.Equal(t, "OTk4", encodedValue, "%v", encodedValue)
rtVal, err = Base62StdEncoding.DecodeString(encodedValue)
assert.Equal(t, nil, err)
assert.Equal(t, string(rtVal), intVal)
urlVal = `http://our-uploads.s3.amazonaws.com/file-export/stuff-1427217700-12.csv?AWSAccessKeyId=AAAAIIG7MAQRTHTD7CLP&Expires=1427304113&Signature=VQsRAhgamiw1RVtbrCXOsMu%2BgFo`
encodedValue = Base62StdEncoding.EncodeToString([]byte(urlVal))
// We are just ensuring it doesn't panic
assert.True(t, len(encodedValue) > 0)
}