github.com/haalcala/mattermost-server-change-repo@v0.0.0-20210713015153-16753fbeee5f/plugin/checker/check_helpers_test.go (about)

     1  // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
     2  // See LICENSE.txt for license information.
     3  
     4  package main
     5  
     6  import (
     7  	"testing"
     8  
     9  	"github.com/stretchr/testify/assert"
    10  )
    11  
    12  func TestCheckHelpersVersionComments(t *testing.T) {
    13  	testCases := []struct {
    14  		name, pkgPath string
    15  		expected      result
    16  		err           string
    17  	}{
    18  		{
    19  			name:     "valid versions",
    20  			pkgPath:  "github.com/mattermost/mattermost-server/v5/plugin/checker/internal/test/valid",
    21  			expected: result{},
    22  		},
    23  		{
    24  			name:    "invalid versions",
    25  			pkgPath: "github.com/mattermost/mattermost-server/v5/plugin/checker/internal/test/invalid",
    26  			expected: result{
    27  				Errors:   []string{"internal/test/invalid/invalid.go:20:2: documented minimum server version too low on method LowerVersionMethod"},
    28  				Warnings: []string{"internal/test/invalid/invalid.go:23:2: documented minimum server version too high on method HigherVersionMethod"},
    29  			},
    30  		},
    31  	}
    32  
    33  	for _, tc := range testCases {
    34  		t.Run(tc.name, func(t *testing.T) {
    35  			assert := assert.New(t)
    36  
    37  			res, err := checkHelpersVersionComments(tc.pkgPath)
    38  			assert.Equal(tc.expected, res)
    39  
    40  			if tc.err != "" {
    41  				assert.EqualError(err, tc.err)
    42  			} else {
    43  				assert.NoError(err)
    44  			}
    45  
    46  		})
    47  	}
    48  }