github.phpd.cn/thought-machine/please@v12.2.0+incompatible/src/core/test_results_test.go (about)

     1  package core
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/stretchr/testify/assert"
     7  )
     8  
     9  var a = []LineCoverage{NotExecutable, Uncovered, Uncovered, Covered, NotExecutable, Unreachable}
    10  var b = []LineCoverage{Uncovered, Covered, Uncovered, Uncovered, Unreachable, Covered}
    11  var c = []LineCoverage{Covered, NotExecutable, Covered, Uncovered, Covered, NotExecutable}
    12  var empty = []LineCoverage{}
    13  
    14  func TestMergeCoverageLines1(t *testing.T) {
    15  	coverage := MergeCoverageLines(a, b)
    16  	expected := []LineCoverage{Uncovered, Covered, Uncovered, Covered, Unreachable, Covered}
    17  	assert.Equal(t, expected, coverage)
    18  }
    19  
    20  func TestMergeCoverageLines2(t *testing.T) {
    21  	coverage := MergeCoverageLines(a, c)
    22  	expected := []LineCoverage{Covered, Uncovered, Covered, Covered, Covered, Unreachable}
    23  	assert.Equal(t, expected, coverage)
    24  }
    25  
    26  func TestMergeCoverageLines3(t *testing.T) {
    27  	coverage := MergeCoverageLines(b, c)
    28  	expected := []LineCoverage{Covered, Covered, Covered, Uncovered, Covered, Covered}
    29  	assert.Equal(t, expected, coverage)
    30  }
    31  
    32  func TestMergeCoverageLines4(t *testing.T) {
    33  	coverage := MergeCoverageLines(MergeCoverageLines(a, b), c)
    34  	expected := []LineCoverage{Covered, Covered, Covered, Covered, Covered, Covered}
    35  	assert.Equal(t, expected, coverage)
    36  }
    37  
    38  func TestMergeCoverageLines5(t *testing.T) {
    39  	coverage := MergeCoverageLines(MergeCoverageLines(c, a), b)
    40  	expected := []LineCoverage{Covered, Covered, Covered, Covered, Covered, Covered}
    41  	assert.Equal(t, expected, coverage)
    42  }
    43  
    44  func TestMergeCoverageLines6(t *testing.T) {
    45  	coverage := MergeCoverageLines(empty, b)
    46  	assert.Equal(t, b, coverage)
    47  }
    48  
    49  func TestMergeCoverageLines7(t *testing.T) {
    50  	coverage := MergeCoverageLines(a, empty)
    51  	assert.Equal(t, a, coverage)
    52  }
    53  
    54  func TestMergeCoverageLines8(t *testing.T) {
    55  	coverage := MergeCoverageLines(empty, empty)
    56  	assert.Equal(t, empty, coverage)
    57  }