github.com/zmap/zlint@v1.1.0/lints/lint_onion_subject_validity_time_too_large_test.go (about) 1 package lints 2 3 import ( 4 "fmt" 5 "testing" 6 ) 7 8 func TestTorValidityTooLarge(t *testing.T) { 9 testCases := []struct { 10 Name string 11 InputFilename string 12 ExpectedResult LintStatus 13 }{ 14 { 15 Name: "Onion subject, long expiry before util.OnionOnlyEVDate", 16 InputFilename: "onionSANLongExpiryPreBallot.pem", 17 ExpectedResult: NE, 18 }, 19 { 20 Name: "Onion subject, long expiry, after util.OnionOnlyEVDate", 21 InputFilename: "onionSANLongExpiry.pem", 22 ExpectedResult: Error, 23 }, 24 { 25 Name: "Onion subject, valid expiry", 26 InputFilename: "onionSANGoodExpiry.pem", 27 ExpectedResult: Pass, 28 }, 29 } 30 31 for _, tc := range testCases { 32 t.Run(tc.Name, func(t *testing.T) { 33 inputPath := fmt.Sprintf("%s%s", testCaseDir, tc.InputFilename) 34 result := Lints["e_onion_subject_validity_time_too_large"].Execute(ReadCertificate(inputPath)) 35 if result.Status != tc.ExpectedResult { 36 t.Errorf("expected result %v was %v", tc.ExpectedResult, result.Status) 37 } 38 }) 39 } 40 41 }