@@ -31,8 +31,9 @@ import (
3131 "github.com/cloudflare/cfssl/helpers"
3232 "github.com/cloudflare/cfssl/log"
3333 "github.com/cloudflare/cfssl/signer"
34+ "github.com/stretchr/testify/require"
3435
35- "github.com/google/certificate-transparency-go"
36+ ct "github.com/google/certificate-transparency-go"
3637 "github.com/zmap/zlint/v3/lint"
3738)
3839
@@ -1540,6 +1541,7 @@ func TestLint(t *testing.T) {
15401541
15411542 ignoredLintSourcesRegistry , err := lint .GlobalRegistry ().Filter (lint.FilterOptions {
15421543 ExcludeSources : lint.SourceList {lint .CABFBaselineRequirements },
1544+ ExcludeNames : []string {"e_ecdsa_allowed_ku" },
15431545 })
15441546 if err != nil {
15451547 t .Fatalf ("failed to construct ignoredLintSourcesRegistry: %v" , err )
@@ -1567,30 +1569,33 @@ func TestLint(t *testing.T) {
15671569 name : "lint results above err level" ,
15681570 signer : lintSigner ,
15691571 lintErrLevel : lint .Notice ,
1570- expectedErr : errors .New ("pre-issuance linting found 2 error results" ),
1572+ expectedErr : errors .New ("pre-issuance linting found 3 error results" ),
15711573 expectedErrResults : map [string ]lint.LintResult {
15721574 "e_sub_cert_aia_does_not_contain_ocsp_url" : {Status : 6 },
15731575 "e_dnsname_not_valid_tld" : {Status : 6 },
1576+ "e_ecdsa_allowed_ku" : {Status : 6 , Details : "Certificate contains invalid key usage(s): KeyUsageKeyEncipherment" },
15741577 },
15751578 },
15761579 {
15771580 name : "lint results below err level" ,
15781581 signer : lintSigner ,
15791582 lintErrLevel : lint .Warn ,
1580- expectedErr : errors .New ("pre-issuance linting found 2 error results" ),
1583+ expectedErr : errors .New ("pre-issuance linting found 3 error results" ),
15811584 expectedErrResults : map [string ]lint.LintResult {
15821585 "e_sub_cert_aia_does_not_contain_ocsp_url" : {Status : 6 },
15831586 "e_dnsname_not_valid_tld" : {Status : 6 },
1587+ "e_ecdsa_allowed_ku" : {Status : 6 , Details : "Certificate contains invalid key usage(s): KeyUsageKeyEncipherment" },
15841588 },
15851589 },
15861590 {
15871591 name : "ignored lint names, lint results above err level" ,
15881592 signer : lintSigner ,
15891593 lintErrLevel : lint .Notice ,
15901594 lintRegistry : ignoredLintNameRegistry ,
1591- expectedErr : errors .New ("pre-issuance linting found 1 error results" ),
1595+ expectedErr : errors .New ("pre-issuance linting found 2 error results" ),
15921596 expectedErrResults : map [string ]lint.LintResult {
15931597 "e_sub_cert_aia_does_not_contain_ocsp_url" : {Status : 6 },
1598+ "e_ecdsa_allowed_ku" : {Status : 6 , Details : "Certificate contains invalid key usage(s): KeyUsageKeyEncipherment" },
15941599 },
15951600 },
15961601 {
@@ -1611,27 +1616,13 @@ func TestLint(t *testing.T) {
16111616 } else if err != nil && tc .expectedErr != nil {
16121617 actual := err .Error ()
16131618 expected := tc .expectedErr .Error ()
1614- if actual != expected {
1615- t .Errorf ("Expected err %q got %q" , expected , actual )
1616- }
1619+ require .Equal (t , expected , actual )
16171620 if len (tc .expectedErrResults ) > 0 {
16181621 le , ok := err .(* LintError )
16191622 if ! ok {
16201623 t .Fatalf ("expected LintError type err, got %v" , err )
16211624 }
1622- if count := len (le .ErrorResults ); count != len (tc .expectedErrResults ) {
1623- t .Fatalf ("expected %d LintError results, got %d" , len (tc .expectedErrResults ), len (le .ErrorResults ))
1624- }
1625- for name , result := range le .ErrorResults {
1626- if result .Status != tc .expectedErrResults [name ].Status {
1627- t .Errorf ("expected error from lint %q to have status %d not %d" ,
1628- name , tc .expectedErrResults [name ].Status , result .Status )
1629- }
1630- if result .Details != tc .expectedErrResults [name ].Details {
1631- t .Errorf ("expected error from lint %q to have details %q not %q" ,
1632- name , tc .expectedErrResults [name ].Details , result .Details )
1633- }
1634- }
1625+ require .EqualValues (t , tc .expectedErrResults , le .ErrorResults )
16351626 }
16361627 }
16371628 })
0 commit comments