jx/internal/transport/transport_test.go
Matthew Rich 52c083a3d9
Some checks failed
Lint / golangci-lint (push) Failing after 9m44s
Declarative Tests / test (push) Failing after 14s
Declarative Tests / build-fedora (push) Failing after 2m50s
Declarative Tests / build-ubuntu-focal (push) Failing after 1m3s
add source for containers, packages
2024-07-01 00:16:55 -07:00

65 lines
1.2 KiB
Go

// Copyright 2024 Matthew Rich <matthewrich.conf@gmail.com>. All rights reserved.
package transport
import (
"github.com/stretchr/testify/assert"
"net/url"
"testing"
"fmt"
"os"
"log"
)
var TempDir string
var testFileResourceDoc string = `
resources:
- type: file
transition: read
attributes:
path: /tmp/foobar
`
func TestMain(m *testing.M) {
var err error
TempDir, err = os.MkdirTemp("", "testtransportfile")
if err != nil || TempDir == "" {
log.Fatal(err)
}
rc := m.Run()
os.RemoveAll(TempDir)
os.Exit(rc)
}
func TestNewTransportReader(t *testing.T) {
path := fmt.Sprintf("%s/foo", TempDir)
u, e := url.Parse(fmt.Sprintf("file://%s", path))
assert.Nil(t, e)
writeErr := os.WriteFile(path, []byte("test"), 0644)
assert.Nil(t, writeErr)
reader, err := NewReader(u)
assert.Nil(t, err)
assert.NotNil(t, reader)
}
func TestTransportReaderContentType(t *testing.T) {
path := fmt.Sprintf("%s/foo.jx.yaml", TempDir)
u, e := url.Parse(fmt.Sprintf("file://%s", path))
assert.Nil(t, e)
writeErr := os.WriteFile(path, []byte(testFileResourceDoc), 0644)
assert.Nil(t, writeErr)
reader, err := NewReader(u)
assert.Nil(t, err)
assert.NotNil(t, reader)
assert.Equal(t, reader.ContentType(), "yaml")
}