github.com/alecthomas/golangci-lint@v1.4.2-0.20180609094924-581a3564ff68/pkg/result/processors/skip_files_test.go (about)

     1  package processors
     2  
     3  import (
     4  	"go/token"
     5  	"testing"
     6  
     7  	"github.com/golangci/golangci-lint/pkg/result"
     8  	"github.com/stretchr/testify/assert"
     9  )
    10  
    11  func newFileIssue(file string) result.Issue {
    12  	return result.Issue{
    13  		Pos: token.Position{
    14  			Filename: file,
    15  		},
    16  	}
    17  }
    18  
    19  func newTestSkipFiles(t *testing.T, patterns ...string) *SkipFiles {
    20  	p, err := NewSkipFiles(patterns)
    21  	assert.NoError(t, err)
    22  	return p
    23  }
    24  
    25  func TestSkipFiles(t *testing.T) {
    26  	p := newTestSkipFiles(t)
    27  	processAssertSame(t, p, newFileIssue("any.go"))
    28  
    29  	p = newTestSkipFiles(t, "file")
    30  	processAssertEmpty(t, p,
    31  		newFileIssue("file.go"),
    32  		newFileIssue("file"),
    33  		newFileIssue("nofile.go"))
    34  
    35  	p = newTestSkipFiles(t, ".*")
    36  	processAssertEmpty(t, p, newFileIssue("any.go"))
    37  }
    38  
    39  func TestSkipFilesInvalidPattern(t *testing.T) {
    40  	p, err := NewSkipFiles([]string{"\\o"})
    41  	assert.Error(t, err)
    42  	assert.Nil(t, p)
    43  }