]> git.donarmstrong.com Git - deb_pkgs/libstatistics-r-perl.git/blob - t/05-shared.t
Import Upstream version 0.24
[deb_pkgs/libstatistics-r-perl.git] / t / 05-shared.t
1 #! perl
2
3 use strict;
4 use warnings;
5 use Test::More;
6 use Statistics::R;
7
8 plan tests => 29;
9
10
11 my ($R1, $R2, $R3, $R4);
12
13 ok $R1 = Statistics::R->new( shared => 1 ), 'Starting in shared mode';
14 ok $R2 = Statistics::R->new( shared => 1 );
15 ok $R3 = Statistics::R->new( shared => 1 );
16 ok $R4 = Statistics::R->new( shared => 1 );
17
18 is $R1->is_shared, 1;
19 is $R2->is_shared, 1;
20 is $R3->is_shared, 1;
21 is $R4->is_shared, 1;
22
23 ok $R2->start;
24 ok $R4->start;
25
26 is $R1->is_started, 1;
27 is $R2->is_started, 1;
28 is $R3->is_started, 1;
29 is $R4->is_started, 1;
30
31 ok $R1 =~ m/\d+/, 'PIDs';
32 is $R1->pid, $R2->pid;
33 is $R1->pid, $R3->pid;
34 is $R1->pid, $R4->pid;
35
36 ok $R1->set( 'x', "string" ), 'Sharing data';
37
38 ok $R2->set( 'y', 3  );
39
40 is $R2->get( 'x' ), "string";
41
42 ok $R3->set( 'z', 10 );
43
44 is $R4->run( q`a <- y / z` ), '';
45
46 is $R4->get( 'a' ), 0.3;
47
48 ok $R3->stop();
49
50 is $R1->is_started, 0;
51 is $R2->is_started, 0;
52 is $R3->is_started, 0;
53 is $R4->is_started, 0;