mirror of
				https://github.com/drwetter/testssl.sh.git
				synced 2025-10-31 13:55:25 +01:00 
			
		
		
		
	Merge pull request #2583 from drwetter/minor_polish_unitTests
Minor polish unit tests
This commit is contained in:
		| @@ -24,10 +24,10 @@ printf "\n%s\n", "Testing whether just calling \"./testssl.sh\" produces no erro | ||||
| my $info    = stat($prg); | ||||
| my $retMode = $info->mode; | ||||
|  | ||||
| is($retMode & 0400, 0400, "Checking \"./testssl.sh\" for read permission");  | ||||
| is($retMode & 0400, 0400, "Checking \"./testssl.sh\" for read permission"); | ||||
| $tests++; | ||||
|  | ||||
| is($retMode & 0100, 0100, "Checking \"./testssl.sh\" for execute permission");  | ||||
| is($retMode & 0100, 0100, "Checking \"./testssl.sh\" for execute permission"); | ||||
| $tests++; | ||||
|  | ||||
| $fileout = `timeout 10 bash $prg 2>&1`; | ||||
| @@ -55,7 +55,7 @@ $out=`grep -E "$debug_regexp" $prg`; | ||||
| unlike($out, qr/$debug_regexp/, "Debug RegEx"); | ||||
| $tests++; | ||||
|  | ||||
| printf "\n"; | ||||
| printf "\n\n"; | ||||
| done_testing($tests); | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -6,7 +6,7 @@ use Test::More; | ||||
| printf "\n%s\n", "Testing whether CA certificates are newer their SPKI hashes \"~/etc/ca_hashes.txt\" ..."; | ||||
|  | ||||
| my $newer_bundles=`find etc/*.pem -newer etc/ca_hashes.txt`; | ||||
| is($newer_bundles,"","If there's an output with a *.pem file run \"~/utils/create_ca_hashes.sh\""); | ||||
| is($newer_bundles,"","Checking if there's an output with a *.pem file run \"~/utils/create_ca_hashes.sh\""); | ||||
|  | ||||
| printf "\n"; | ||||
| done_testing; | ||||
|   | ||||
| @@ -46,15 +46,16 @@ $edited_html =~ s/>/>/g; | ||||
| $edited_html =~ s/"/"/g; | ||||
| $edited_html =~ s/'/'/g; | ||||
|  | ||||
| cmp_ok($edited_html, "eq", $out, "HTML file matches terminal output"); | ||||
| $tests++; | ||||
|  | ||||
| $diff = diff \$edited_html, \$out; | ||||
| printf "\n%s\n", "$diff"; | ||||
|  | ||||
| cmp_ok($edited_html, "eq", $out, "Checking if HTML file matches terminal output") or | ||||
|      diag ("\n%s\n", "$diff"); | ||||
|  | ||||
| $tests++; | ||||
|  | ||||
|  | ||||
| #2 | ||||
| printf "\n%s\n", " .. running again $prg against \"$uri\", now with --debug 4 to create HTML output (may take another ~2 minutes)"; | ||||
| printf "%s\n", " .. running again $prg against \"$uri\", now with --debug 4 to create HTML output (may take another ~2 minutes)"; | ||||
| # Redirect stderr to /dev/null in order to avoid some unexplained "date: invalid date" error messages | ||||
| $out = `TERM_WIDTH=120 $prg $check2run --debug 4 $uri 2> /dev/null`; | ||||
| $debughtml = `cat $htmlfile`; | ||||
| @@ -79,15 +80,14 @@ $debughtml =~ s/.*built: .*\n//g; | ||||
| $debughtml =~ s/.*Using bash .*\n//g; | ||||
| # is whole line:   s/.*<pattern> .*\n//g; | ||||
|  | ||||
| cmp_ok($debughtml, "eq", $html, "HTML file created with --debug 4 matches HTML file created without --debug"); | ||||
| $diff = diff \$debughtml, \$html; | ||||
|  | ||||
| cmp_ok($debughtml, "eq", $html, "Checking if HTML file created with --debug 4 matches HTML file created without --debug") or | ||||
|      diag ("\n%s\n", "$diff"); | ||||
| $tests++; | ||||
|  | ||||
| $diff = diff \$debughtml, \$html; | ||||
| printf "\n%s\n", "$diff"; | ||||
|  | ||||
|  | ||||
|  | ||||
| printf "\n"; | ||||
| printf "\n\n"; | ||||
| done_testing($tests); | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -17,7 +17,7 @@ pass("Running testssl.sh against badssl.com to create a baseline (may take 2~3 m | ||||
| my $okout = `./testssl.sh -S -e --freak --logjam --drown --rc4 --sweet32 --breach --winshock --crime --jsonfile tmp.json --color 0 badssl.com`; | ||||
| my $okjson = json('tmp.json'); | ||||
| unlink 'tmp.json'; | ||||
| cmp_ok(@$okjson,'>',10,"We have more then 10 findings"); $tests++; | ||||
| cmp_ok(@$okjson,'>',10,"We should have more then 10 findings"); $tests++; | ||||
|  | ||||
| # Expiration | ||||
| pass("Running testssl against expired.badssl.com"); $tests++; | ||||
| @@ -35,7 +35,7 @@ foreach my $f ( @$json ) { | ||||
| 		last; | ||||
|     } | ||||
| } | ||||
| is($found,1,"We had a finding for this in the JSON output"); $tests++; | ||||
| is($found,1,"We should have a finding for this in the JSON output"); $tests++; | ||||
|  | ||||
| # Self signed and not-expired | ||||
| pass("Running testssl against self-signed.badssl.com"); $tests++; | ||||
| @@ -52,7 +52,7 @@ foreach my $f ( @$json ) { | ||||
| 		last; | ||||
|     } | ||||
| } | ||||
| is($found,1,"We had a finding for this in the JSON output"); $tests++; | ||||
| is($found,1,"We should a finding for this in the JSON output"); $tests++; | ||||
|  | ||||
| like($out, qr/Chain of trust.*?NOT ok.*\(self signed\)/,"Chain of trust should fail because of self signed"); $tests++; | ||||
| $found = 0; | ||||
| @@ -64,7 +64,7 @@ foreach my $f ( @$json ) { | ||||
| 		last; | ||||
|     } | ||||
| } | ||||
| is($found,1,"We had a finding for this in the JSON output"); $tests++; | ||||
| is($found,1,"We should have a finding for this in the JSON output"); $tests++; | ||||
|  | ||||
| like($okout, qr/Chain of trust[^\n]*?Ok/,"Chain of trust should be ok"); $tests++; | ||||
| $found = 0; | ||||
| @@ -77,7 +77,7 @@ foreach my $f ( @$okjson ) { | ||||
| 		last; | ||||
|     } | ||||
| } | ||||
| is($found,1,"We had a finding for this in the JSON output"); $tests++; | ||||
| is($found,1,"We should have a finding for this in the JSON output"); $tests++; | ||||
|  | ||||
| # Wrong host | ||||
| #pass("Running testssl against wrong.host.badssl.com"); $tests++; | ||||
| @@ -111,7 +111,7 @@ foreach my $f ( @$json ) { | ||||
| 		last; | ||||
|     } | ||||
| } | ||||
| is($found,1,"We had a finding for this in the JSON output"); $tests++; | ||||
| is($found,1,"We should have a finding for this in the JSON output"); $tests++; | ||||
|  | ||||
| # TODO: RSA 8192 | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Dirk Wetter
					Dirk Wetter