/[notice-sender]/trunk/t/2_soap.t
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Contents of /trunk/t/2_soap.t

Parent Directory Parent Directory | Revision Log Revision Log


Revision 58 - (show annotations)
Tue Jun 21 09:41:43 2005 UTC (18 years, 10 months ago) by dpavlin
File MIME type: application/x-troff
File size: 2386 byte(s)
added ext_id to AddMemberToList SOAP call

1 #!/usr/bin/perl -w
2
3 use strict;
4 use blib;
5
6 use Test::More tests => 22;
7
8 BEGIN {
9 use_ok('Nos');
10 use_ok('SOAP::Transport::HTTP');
11 use_ok('SOAP::Lite');
12 };
13
14 ok(my $nos = new Nos::SOAP('dsn' => 'dbi:Pg:dbname=notices'), "new");
15
16 ok(my $daemon = new SOAP::Transport::HTTP::Daemon(LocalAddr => 'localhost')->dispatch_to('Nos::SOAP'), "SOAP daemon");
17
18
19 # start server
20
21 my $pid;
22 unless ($pid = fork) {
23
24 local $SIG{HUP} = sub {
25 diag "exiting SOAP server";
26 exit 0;
27 };
28
29 diag "SOAP server at ", $daemon->url;
30 $daemon->handle;
31
32 }
33
34 diag "child pid: $pid";
35
36 my $soap = SOAP::Lite
37 ->readable(1)
38 ->uri('http://localhost/Nos/SOAP/')
39 ->proxy($daemon->url);
40
41 # NewList
42
43 ok(my $list_id = $soap->NewList({
44 list => 'SOAP test',
45 from => 'SOAP list',
46 email => 'soap-test@example.com',
47 })->result, "NewList named");
48
49 ok(my $list_id2 = $soap->NewList(
50 'SOAP test',
51 'SOAP list',
52 'soap-test@example.com',
53 )->result, "NewList positional");
54
55 cmp_ok($list_id, '==', $list_id2, "list_id $list_id");
56
57
58 # AddMemberToList
59
60 ok(my $member_id = $soap->AddMemberToList({
61 list => 'SOAP test',
62 email => 'dpavlin@rot13.org',
63 name => 'Dobrica Pavlinusic',
64 ext_id => 42,
65 })->result, "AddMemberToList named");
66
67 ok(my $member_id2 = $soap->AddMemberToList(
68 'SOAP test',
69 'dpavlin@rot13.org',
70 'Dobrica Pavlinusic',
71 42,
72 )->result, "AddMemberToList positional");
73
74 cmp_ok($member_id, '==', $member_id2, "member_id: $member_id");
75
76
77 # AddMessageToList
78
79 my $msg = 'To: member@example.com
80 From: mylist@example.com
81 Subject: text
82
83 This is a dummy test
84 ';
85
86 ok(my $message_id = $soap->AddMessageToList({
87 list => 'SOAP test',
88 message => $msg,
89 })->result, "AddMessageToList named");
90
91 ok(my $message_id2 = $soap->AddMessageToList(
92 'SOAP test',
93 $msg,
94 )->result, "AddMessageToList positional");
95
96 cmp_ok($message_id, '==', $message_id2, "message_id: $message_id");
97
98
99 # ListMembers
100
101 ok(my @arr = $soap->ListMembers({
102 list => 'SOAP test',
103 })->result, "ListMembers named");
104
105 ok(my @arr2 = $soap->ListMembers(
106 'SOAP test',
107 )->result, "ListMembers positional");
108
109 eq_array(\@arr, \@arr2, "members lists same");
110
111 cmp_ok($#arr, '==', 0, "member count ok");
112
113 cmp_ok($arr[0]->{'full_name'}, '==', 'Dobrica Pavlinusic', "full_name");
114 cmp_ok($arr[0]->{'email'}, '==', 'dpavlin@rot13.org', "email");
115
116 # kill server
117
118 ok(kill('HUP' => $pid), "kill $pid");
119
120 ok(waitpid($pid,0), "waitpid");
121
122 ok(! kill(0, $pid), "child dead");
123
124 exit 1;

Properties

Name Value
svn:executable *

  ViewVC Help
Powered by ViewVC 1.1.26