added tests

updated go version and packages
This commit is contained in:
2024-05-07 14:14:28 -04:00
parent 889ba3cb48
commit a834bc6384
7 changed files with 144 additions and 9 deletions

21
generator/base64_test.go Normal file
View File

@@ -0,0 +1,21 @@
package generator
import (
"testing"
)
func TestGenerator_GenerateBase64(t *testing.T) {
g, err := NewGenerator(Config{})
if err != nil {
t.Fatal(err)
}
url, err := g.generateBase64Url([]byte("test://file"))
if err != nil {
return
}
if url != "dGVzdDovL2ZpbGU" {
t.Errorf("url is wrong: %s", url)
}
}

View File

@@ -32,7 +32,10 @@ func (g *Generator) generateBaseAesEncUrl(file []byte) (string, error) {
mode := cipher.NewCBCEncrypter(c, iv)
mode.CryptBlocks(ciphertext[aes.BlockSize:], data)
encryptedURL := g.generateBase64Url(ciphertext)
encryptedURL, err := g.generateBase64Url(ciphertext)
if err != nil {
return "", err
}
return "enc/" + encryptedURL, nil
}

45
generator/format_test.go Normal file
View File

@@ -0,0 +1,45 @@
package generator
import "testing"
func TestGenerator_StringToFormat(t *testing.T) {
g, err := NewGenerator(Config{})
if err != nil {
t.Fatal(err)
}
formats := []string{"jpg", "jpeg", "png", "gif", "bmp", "webp", "ico", ""}
for _, format := range formats {
format, err := g.StringToFormat(format)
if err != nil {
t.Error(err)
}
if !isFormat(format) {
t.Error("format not match")
}
}
}
func TestGenerator_StringToFormatError(t *testing.T) {
g, err := NewGenerator(Config{})
if err != nil {
t.Fatal(err)
}
_, err = g.StringToFormat("notaformat")
if err == nil {
t.Error("format did not return error")
}
}
func isFormat(t interface{}) bool {
switch t.(type) {
case Format:
return true
default:
return false
}
}

16
generator/plain_test.go Normal file
View File

@@ -0,0 +1,16 @@
package generator
import "testing"
func TestGenerator_GenerateUrl(t *testing.T) {
g, err := NewGenerator(Config{})
if err != nil {
t.Fatal(err)
}
url, _ := g.generatePlainUrl("local:///test.png")
if url != "plain/local:///test.png" {
t.Errorf("url is %s", url)
}
}