github.com/criteo/command-launcher@v0.0.0-20230407142452-fb616f546e98/internal/pkg/default-package_test.go (about)

     1  package pkg
     2  
     3  import (
     4  	"os"
     5  	"testing"
     6  
     7  	"github.com/stretchr/testify/assert"
     8  )
     9  
    10  func TestReadManifest(t *testing.T) {
    11  	file, _ := os.Open("assets/fake.mf")
    12  	mf, err := ReadManifest(file)
    13  	assert.Nil(t, err, "cannot read manifest file")
    14  
    15  	assert.Equal(t, "fake_test", mf.Name(), "wrong package name")
    16  	assert.Equal(t, "1.0.0", mf.Version(), "wrong package version")
    17  
    18  	cmds := mf.Commands()
    19  	assert.NotNil(t, cmds)
    20  	assert.Equal(t, 1, len(cmds))
    21  
    22  	assert.Equal(t, "fake_test", cmds[0].Name())
    23  	assert.Equal(t, "Fake manifest", cmds[0].ShortDescription())
    24  	assert.Equal(t, "Fake manifest long description", cmds[0].LongDescription())
    25  	assert.Equal(t, "fake", cmds[0].Executable())
    26  	assert.Equal(t, 2, len(cmds[0].Arguments()))
    27  }
    28  
    29  func TestReadManifestInYaml(t *testing.T) {
    30  	file, _ := os.Open("assets/fake-yaml.mf")
    31  	mf, err := ReadManifest(file)
    32  	assert.Nil(t, err, "cannot read manifest file")
    33  
    34  	assert.Equal(t, "fake_test", mf.Name(), "wrong package name")
    35  	assert.Equal(t, "1.0.0", mf.Version(), "wrong package version")
    36  
    37  	cmds := mf.Commands()
    38  	assert.NotNil(t, cmds)
    39  	assert.Equal(t, 1, len(cmds))
    40  
    41  	assert.Equal(t, "fake_test", cmds[0].Name())
    42  	assert.Equal(t, "Fake manifest", cmds[0].ShortDescription())
    43  	assert.Equal(t, "Fake manifest long description\n\nYou can have multiple line descriptions\n", cmds[0].LongDescription())
    44  	assert.Equal(t, "fake", cmds[0].Executable())
    45  	assert.Equal(t, 2, len(cmds[0].Arguments()))
    46  }