all repos

viye @ f47d92e4476f8153e98a5b6fc09bf418afdb2888

my shot at reimplementing xiki

viye/internal/plumbing/curl/curl_test.go (view raw)

Oleksandr Smirnov Oleksandr Smirnov
olexsmir@gmail.com
strip body of ": ", 1 month ago
1
package curl
2
3
import (
4
	"os/exec"
5
	"testing"
6
7
	"github.com/olexsmir/viye/internal/viye"
8
9
	"olexsmir.xyz/x/is"
10
)
11
12
func TestMatch(t *testing.T) {
13
	is.Equal(t, true, (Tool{}).Match(&viye.Context{Cmd: "curl"}))
14
	is.Equal(t, false, (Tool{}).Match(&viye.Context{Cmd: "get"}))
15
}
16
17
func TestExecute(t *testing.T) {
18
	if _, err := exec.LookPath("curl"); err != nil {
19
		t.Skip("curl not installed")
20
	}
21
22
	t.Run("version", func(t *testing.T) {
23
		got, err := (Tool{}).Execute(&viye.Context{
24
			Cmd:  "curl",
25
			Args: []string{"--version"},
26
			Dir:  ".",
27
		})
28
		is.Err(t, err, nil)
29
		is.NotEqual(t, "", got)
30
	})
31
32
	t.Run("extra tags from body", func(t *testing.T) {
33
		got, err := (Tool{}).Execute(&viye.Context{
34
			Cmd:  "curl",
35
			Args: []string{"--version"},
36
			Body: []string{"--help"},
37
			Dir:  ".",
38
		})
39
		is.Err(t, err, nil)
40
		is.NotEqual(t, "", got)
41
	})
42
}