File: eliza.t

package info (click to toggle)
libapache2-mod-perl2 2.0.9~1624218-2
  • links: PTS, VCS
  • area: main
  • in suites: jessie-kfreebsd
  • size: 11,840 kB
  • sloc: perl: 95,064; ansic: 14,522; makefile: 49; sh: 18
file content (34 lines) | stat: -rw-r--r-- 1,026 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# please insert nothing before this line: -*- mode: cperl; cperl-indent-level: 4; cperl-continued-statement-offset: 4; indent-tabs-mode: nil -*-
use strict;
use warnings FATAL => 'all';

use Apache::Test;
use Apache::TestUtil;
use Apache::TestRequest ();

my @test_strings = ('Hello Eliza',
                    'How are you?',
                    'Why do I have core dumped?',
                    'I feel like writing some tests today, what about you?',
                    'Good bye, Eliza');

plan tests => 2 + @test_strings, need_module 'Chatbot::Eliza';

my $socket = Apache::TestRequest::vhost_socket('TestProtocol::eliza');

ok $socket;

for (@test_strings) {
    print $socket "$_\n";
    chomp(my $reply = <$socket> || '');
    t_debug "send: $_";
    t_debug "recv: $reply";
    ok $reply;
}

# at this point 'Good bye, Eliza' should abort the connection.
my $string = 'Eliza should not hear this';
print $socket "$string\n";
chomp(my $reply = <$socket> || '');
t_debug "Eliza shouldn't respond anymore";
ok !$reply;