github.com/fredbi/git-chglog@v0.0.0-20190706071416-d35c598eac81/cmd/git-chglog/config_builder_test.go (about)

     1  package main
     2  
     3  import (
     4  	"fmt"
     5  	"testing"
     6  
     7  	"github.com/stretchr/testify/assert"
     8  )
     9  
    10  func TestConfigBulider(t *testing.T) {
    11  	assert := assert.New(t)
    12  	builder := NewConfigBuilder()
    13  
    14  	out, err := builder.Build(&Answer{
    15  		RepositoryURL:       "https://github.com/fredbi/git-chglog/",
    16  		Style:               styleNone,
    17  		CommitMessageFormat: fmtGitBasic.display,
    18  		Template:            tplStandard.display,
    19  	})
    20  
    21  	assert.Nil(err)
    22  	assert.Contains(out, "style: none")
    23  	assert.Contains(out, "template: CHANGELOG.tpl.md")
    24  	assert.Contains(out, "  repository_url: https://github.com/fredbi/git-chglog/git-chglog")
    25  	assert.Contains(out, fmt.Sprintf("    pattern: \"%s\"", fmtGitBasic.pattern))
    26  	assert.Contains(out, fmt.Sprintf(
    27  		`    pattern_maps:
    28        - %s
    29        - %s`,
    30  		fmtGitBasic.patternMaps[0],
    31  		fmtGitBasic.patternMaps[1],
    32  	))
    33  }
    34  
    35  func TestConfigBuliderEmptyRepoURL(t *testing.T) {
    36  	assert := assert.New(t)
    37  	builder := NewConfigBuilder()
    38  
    39  	out, err := builder.Build(&Answer{
    40  		RepositoryURL:       "",
    41  		Style:               styleNone,
    42  		CommitMessageFormat: fmtGitBasic.display,
    43  		Template:            tplStandard.display,
    44  	})
    45  
    46  	assert.Nil(err)
    47  	assert.Contains(out, "  repository_url: \"\"")
    48  }
    49  
    50  func TestConfigBuliderInvalidFormat(t *testing.T) {
    51  	assert := assert.New(t)
    52  	builder := NewConfigBuilder()
    53  
    54  	_, err := builder.Build(&Answer{
    55  		RepositoryURL:       "",
    56  		Style:               styleNone,
    57  		CommitMessageFormat: "",
    58  		Template:            tplStandard.display,
    59  	})
    60  
    61  	assert.Contains(err.Error(), "invalid commit message format")
    62  }