mirror of
https://gitee.com/willfree/mlsr.git
synced 2026-10-04 19:42:02 +08:00
36 lines
1.3 KiB
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)
|
|
}
|