use strict; use warnings 'all'; use Test::More qw( no_plan ); require "doors.perl"; # Initialise array of doors. my @doors = init_doors(); is($doors[1], 'Closed', 'Door one should be closed'); is($doors[100], 'Closed', 'Door 100 should be closed'); toggle_door(\$doors[1]); is($doors[1], 'Open', 'Door one should be closed'); toggle_door(\$doors[1]); is($doors[1], 'Closed', 'Door one should be open'); my @answer = loop_through_doors(); # Doors open are: 1, 4, 9, 16, 25, 36, 49, 64, 81, and 100 is($answer[1], 'Open'); is($answer[4], 'Open'); is($answer[9], 'Open'); is($answer[16], 'Open'); is($answer[25], 'Open'); is($answer[36], 'Open'); is($answer[49], 'Open'); is($answer[64], 'Open'); is($answer[81], 'Open'); is($answer[100], 'Open'); # Check some of the other doors are closed. is($answer[2], 'Closed'); is($answer[3], 'Closed'); is($answer[50], 'Closed'); is($answer[99], 'Closed');