lego/providers/http/webroot/webroot_test.go
2021-08-25 11:44:11 +02:00

40 lines
912 B
Go

package webroot
import (
"os"
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func TestHTTPProvider(t *testing.T) {
webroot := "webroot"
domain := "domain"
token := "token"
keyAuth := "keyAuth"
challengeFilePath := webroot + "/.well-known/acme-challenge/" + token
require.NoError(t, os.MkdirAll(webroot+"/.well-known/acme-challenge", 0o777))
defer os.RemoveAll(webroot)
provider, err := NewHTTPProvider(webroot)
require.NoError(t, err)
err = provider.Present(domain, token, keyAuth)
require.NoError(t, err)
if _, err = os.Stat(challengeFilePath); os.IsNotExist(err) {
t.Error("Challenge file was not created in webroot")
}
var data []byte
data, err = os.ReadFile(challengeFilePath)
require.NoError(t, err)
dataStr := string(data)
assert.Equal(t, keyAuth, dataStr)
err = provider.CleanUp(domain, token, keyAuth)
require.NoError(t, err)
}