github.com/nozzle/golangci-lint@v1.49.0-nz3/pkg/config/issues_test.go (about)

     1  package config
     2  
     3  import (
     4  	"fmt"
     5  	"testing"
     6  
     7  	"github.com/stretchr/testify/assert"
     8  )
     9  
    10  func TestGetExcludePatterns(t *testing.T) {
    11  	assert.Equal(t, GetExcludePatterns(nil), DefaultExcludePatterns)
    12  
    13  	include := make([]string, 2)
    14  	include[0], include[1] = DefaultExcludePatterns[0].ID, DefaultExcludePatterns[1].ID
    15  
    16  	exclude := GetExcludePatterns(include)
    17  	assert.Equal(t, len(exclude), len(DefaultExcludePatterns)-len(include))
    18  
    19  	for _, p := range exclude {
    20  		// Not in include.
    21  		for _, i := range include {
    22  			if i == p.ID {
    23  				t.Fatalf("%s can't appear inside include.", p.ID)
    24  			}
    25  		}
    26  		// Must in DefaultExcludePatterns.
    27  		var inDefaultExc bool
    28  		for _, i := range DefaultExcludePatterns {
    29  			if i == p {
    30  				inDefaultExc = true
    31  				break
    32  			}
    33  		}
    34  		assert.True(t, inDefaultExc, fmt.Sprintf("%s must appear inside DefaultExcludePatterns.", p.ID))
    35  	}
    36  }