File: path_check_helper_test.go

package info (click to toggle)
gitlab-ci-multi-runner 14.10.1-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 31,248 kB
  • sloc: sh: 1,694; makefile: 384; asm: 79; ruby: 68
file content (34 lines) | stat: -rw-r--r-- 650 bytes parent folder | download
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
//go:build !integration
// +build !integration

package archives

import (
	"fmt"
	"testing"

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

func TestDoesPathsListContainGitDirectory(t *testing.T) {
	examples := []struct {
		path   string
		unsafe bool
	}{
		{".git", true},
		{".git/", true},
		{"././././.git/", true},
		{"././.git/.././.git/", true},
		{".git/test", true},
		{"./.git/test", true},
		{"test/.git", false},
		{"test/.git/test", false},
	}

	for id, example := range examples {
		t.Run(fmt.Sprintf("example-%d", id), func(t *testing.T) {
			unsafe := isPathAGitDirectory(example.path)
			assert.Equal(t, example.unsafe, unsafe)
		})
	}
}