summaryrefslogtreecommitdiff
path: root/predict/options_test.go
blob: dc6d83d25c5adcb12e5a19492d0f31e4c01d528c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
package predict

import "testing"

import "github.com/stretchr/testify/assert"

func TestConfigCheck(t *testing.T) {
	t.Parallel()

	t.Run("enabled", func(t *testing.T) {
		cfg := Options(OptValues("foo", "bar", "foo-bar"), OptCheck())
		assert.NoError(t, cfg.Check("foo"))
		assert.NoError(t, cfg.Check("bar"))
		assert.NoError(t, cfg.Check("foo-bar"))
		assert.Error(t, cfg.Check("fo"))
		assert.Error(t, cfg.Check("baz"))
	})

	t.Run("disabled", func(t *testing.T) {
		cfg := Options(OptValues("foo", "bar", "foo-bar"))
		assert.NoError(t, cfg.Check("foo"))
		assert.NoError(t, cfg.Check("fo"))
		assert.NoError(t, cfg.Check("baz"))
	})
}

func TestConfigPredict(t *testing.T) {
	t.Parallel()

	t.Run("set", func(t *testing.T) {
		cfg := Options(OptValues("foo", "bar", "foo-bar"))
		assert.Equal(t, []string{"foo", "bar", "foo-bar"}, cfg.Predict(""))
	})

	t.Run("not set", func(t *testing.T) {
		cfg := Options()
		assert.Nil(t, cfg.Predict(""))
	})
}