Testing Basics
Equality Checks
A basic test compares an actual value with an expected value.
assertion
An assertion checks whether a result matches what the test expected.
Equality Checks
equality_checks.pl
Replay: real traced execution (multi-file project)
use strict;
use warnings;
sub check_equal {
my ($actual, $expected) = @_;
return $actual eq $expected ? "pass" : "fail";
}
my $actual = "green";
my $expected = "green";
my $status = check_equal($actual, $expected);
print "actual=$actual\n";
print "expected=$expected\n";
print "status=$status\n";
use strict;
use warnings;
sub check_equal {
my ($actual, $expected) = @_;
return $actual eq $expected ? "pass" : "fail";
}
my $actual = "blue";
my $expected = "green";
my $status = check_equal($actual, $expected);
print "actual=$actual\n";
print "expected=$expected\n";
print "status=$status\n";
use strict;
use warnings;
sub check_equal {
my ($actual, $expected) = @_;
return $actual eq $expected ? "pass" : "fail";
}
my $actual = "red";
my $expected = "green";
my $status = check_equal($actual, $expected);
print "actual=$actual\n";
print "expected=$expected\n";
print "status=$status\n";
$actual ← green, $expected ← green
9my $actual→ green = "green"; #@actual="blue", "red"10my $expected→ green = "green";11my $status = check_equal($actualgreen, $expectedgreen);$actual ← green, $expected ← green
4sub check_equal {5 my ($actual→ green, $expected→ green) = @_;6 return $actualgreen eq $expectedgreen ? "pass" : "fail";7}$status ← pass
10my $expected = "green";11my $status→ pass = check_equal($actualgreen, $expectedgreen);1213print "actual=$actualgreen\n";14print "expected=$expectedgreen\n";15print "status=$statuspass\n";outputactual=green expected=green status=pass
$actual ← blue, $expected ← green
9my $actual→ blue = "blue";10my $expected→ green = "green";11my $status = check_equal($actualblue, $expectedgreen);$actual ← blue, $expected ← green
4sub check_equal {5 my ($actual→ blue, $expected→ green) = @_;6 return $actualblue eq $expectedgreen ? "pass" : "fail";7}$status ← fail
10my $expected = "green";11my $status→ fail = check_equal($actualblue, $expectedgreen);1213print "actual=$actualblue\n";14print "expected=$expectedgreen\n";15print "status=$statusfail\n";outputactual=blue expected=green status=fail
$actual ← red, $expected ← green
9my $actual→ red = "red";10my $expected→ green = "green";11my $status = check_equal($actualred, $expectedgreen);$actual ← red, $expected ← green
4sub check_equal {5 my ($actual→ red, $expected→ green) = @_;6 return $actualred eq $expectedgreen ? "pass" : "fail";7}$status ← fail
10my $expected = "green";11my $status→ fail = check_equal($actualred, $expectedgreen);1213print "actual=$actualred\n";14print "expected=$expectedgreen\n";15print "status=$statusfail\n";outputactual=red expected=green status=fail