Author: dylan
Date: 2005-06-20 17:21:40 -0400 (Mon, 20 Jun 2005)
New Revision: 783
Added:
trunk/perl/core/t/004_session.t
Removed:
trunk/perl/core/t/004_loader.t
trunk/perl/core/t/005_wheel_run.t
Modified:
trunk/
trunk/perl/core/t/003_wheel.t
Log:
[EMAIL PROTECTED]: dylan | 2005-06-20 15:54:27 -0400
updated test cases.
Property changes on: trunk
___________________________________________________________________
Name: svk:merge
- 1f59643a-e6e5-0310-bc24-f7d4c744f460:/haver/havercurs-objc:43050
1f59643a-e6e5-0310-bc24-f7d4c744f460:/haver/local/trunk:11166
1f59643a-e6e5-0310-bc24-f7d4c744f460:/haver/local/trunk-merge-10131:11178
27e50396-46e3-0310-8b22-ae223a1f35ce:/local:212
e9404bb1-7af0-0310-a7ff-e22194cd388b:/haver/local:1115
edfcd8bd-4ce7-0310-a97e-bb1efd40edf3:/local:238
+ 1f59643a-e6e5-0310-bc24-f7d4c744f460:/haver/havercurs-objc:43050
1f59643a-e6e5-0310-bc24-f7d4c744f460:/haver/local/trunk:11166
1f59643a-e6e5-0310-bc24-f7d4c744f460:/haver/local/trunk-merge-10131:11178
27e50396-46e3-0310-8b22-ae223a1f35ce:/local:212
e9404bb1-7af0-0310-a7ff-e22194cd388b:/haver/local:1116
edfcd8bd-4ce7-0310-a97e-bb1efd40edf3:/local:238
Modified: trunk/perl/core/t/003_wheel.t
===================================================================
--- trunk/perl/core/t/003_wheel.t 2005-06-20 21:21:36 UTC (rev 782)
+++ trunk/perl/core/t/003_wheel.t 2005-06-20 21:21:40 UTC (rev 783)
@@ -1,15 +1,16 @@
#!/usr/bin/perl
# vim: set ft=perl:
use strict;
-use Test::More tests => 4;
+use POE;
+use Test::More tests => 13;
-my $class = 'Haver::Wheel';
-use_ok($class);
-can_ok($class, 'new');
+BEGIN {
+ use_ok('Haver::Wheel');
+ use_ok('Haver::Wheel::Loader');
+};
+can_ok('Haver::Wheel', 'new');
-my $plugin = $class->new;
-
-isa_ok($plugin, $class);
+my $plugin = new Haver::Wheel;
can_ok($plugin,
qw(
provide
@@ -23,3 +24,105 @@
kernel
)
);
+
+can_ok('Haver::Wheel::Loader', 'new');
+
+my $loader = new Haver::Wheel::Loader;
+can_ok($loader,
+ qw(
+ load_wheel
+ unload_wheel
+ wheels
+ fetch_wheel
+ unload_all_wheels
+ )
+);
+
+
+BEGIN {
+ package MyWheel;
+ use POE;
+ use base 'Haver::Wheel';
+
+ sub setup {
+ my $self = shift;
+ $self->provide('foo', 'on_foo');
+ $self->provide('bar', 'on_bar');
+ $self->provide('baz', 'on_baz');
+ }
+
+ sub on_load {
+ my $self = $_[OBJECT];
+ $self->{load} = 1;
+ }
+
+ sub on_unload {
+ my $self = $_[OBJECT];
+ $self->{unload} = 1;
+ }
+ sub on_foo {
+ my $self = $_[OBJECT];
+ $self->{foo}++;
+ }
+
+ sub on_bar {
+ my $self = $_[OBJECT];
+ $self->{bar}++;
+ }
+
+ sub on_baz {
+ my $self = $_[OBJECT];
+ $self->{baz}++;
+ if ($self->{baz} == 1) {
+ $_[KERNEL]->yield('bye');
+ }
+ }
+}
+
+POE::Session->create(
+ inline_states => {
+ _start => \&on_start,
+ _stop => \&on_stop,
+ bye => \&on_bye,
+ },
+);
+
+POE::Kernel->run;
+
+sub on_start {
+ my ($kernel, $heap) = @_[KERNEL, HEAP];
+ my $loader = new Haver::Wheel::Loader;
+ $loader->load_wheel('MyWheel');
+ $heap->{loader} = $loader;
+
+ diag "Starting session";
+ foreach my $state (qw( foo bar baz )) {
+ $kernel->yield($state) for 1 .. 3;
+ }
+}
+
+sub on_stop {
+ diag "Stopping session";
+}
+
+sub on_bye {
+ my ($kernel, $heap) = @_[KERNEL, HEAP];
+ my $loader = $heap->{loader};
+ my $p = $loader->fetch_wheel('MyWheel');
+
+ diag "Saying goodbye";
+ is($p->{foo}, 3, "Called foo 3 times");
+ is($p->{bar}, 3, "Called bar 3 times");
+ is($p->{baz}, 3, "Called baz 3 times");
+
+ diag "Calling foo again";
+ $kernel->call($_[SESSION], 'foo');
+ is($p->{foo}, 4, "foo is now 4");
+
+ diag "Unloading MyWheel";
+ $loader->unload_wheel('MyWheel');
+ $kernel->call($_[SESSION], 'foo');
+ isnt($p->{foo}, 5, "foo is not 5");
+ ok($p->{load}, "on_load was called.");
+ ok($p->{unload}, "on_unload was called.");
+}
Deleted: trunk/perl/core/t/004_loader.t
===================================================================
--- trunk/perl/core/t/004_loader.t 2005-06-20 21:21:36 UTC (rev 782)
+++ trunk/perl/core/t/004_loader.t 2005-06-20 21:21:40 UTC (rev 783)
@@ -1,20 +0,0 @@
-#!/usr/bin/perl
-# vim: set ft=perl:
-use strict;
-use Test::More tests => 4;
-
-my $class = 'Haver::Wheel::Loader';
-require_ok($class);
-can_ok($class, 'new');
-
-my $loader = $class->new;
-isa_ok($loader, $class);
-can_ok($loader,
- qw(
- load_wheel
- unload_wheel
- wheels
- fetch_wheel
- unload_all_wheels
- )
-);
Added: trunk/perl/core/t/004_session.t
===================================================================
--- trunk/perl/core/t/004_session.t 2005-06-20 21:21:36 UTC (rev 782)
+++ trunk/perl/core/t/004_session.t 2005-06-20 21:21:40 UTC (rev 783)
@@ -0,0 +1,88 @@
+#!/usr/bin/perl
+# vim: set ft=perl:
+
+use POE;
+use Test::More tests => 6;
+BEGIN {
+ use_ok('Haver::Session');
+}
+
+
+
+
+my $count = 10;
+can_ok('MySession', 'create');
+create MySession (
+ count => $count,
+);
+
+my $o = new ObjSession;
+$o->create(object => 1);
+create ObjSession (object => 0);
+
+create POE::Session (
+ inline_states => {
+ _start => sub {
+ my ($kernel) = $_[KERNEL];
+ $kernel->alias_set('tester');
+ },
+ ok => sub {
+ my ($kernel, $arg) = @_[KERNEL, ARG0];
+ $kernel->alias_remove('tester');
+ is($count, $arg);
+ },
+ },
+);
+
+
+POE::Kernel->run;
+BEGIN {
+ package MySession;
+ use Haver::Session -base;
+ use Test::More;
+
+ sub states {
+ return [qw( _start _stop loop )];
+ }
+ sub _start {
+ my ($kernel, $heap, $opt) = @_[KERNEL, HEAP, ARG0];
+ $heap->{count} = $opt->{count};
+ $heap->{looped} = 0;
+ $kernel->yield('loop');
+ diag "Starting with a count of $heap->{count}";
+ ok(($_[OBJECT] eq 'MySession'), "Are we a package state?");
+ diag $_[OBJECT];
+ }
+
+ sub loop {
+ my ($kernel, $heap) = @_[KERNEL, HEAP];
+ if ($heap->{count}-- > 0) {
+ $heap->{looped}++;
+ $kernel->yield('loop');
+ }
+ }
+
+ sub _stop {
+ my ($kernel, $heap) = @_[KERNEL, HEAP];
+ diag "Stopping after $heap->{looped} loops";
+ $kernel->call('tester', 'ok', $heap->{looped});
+ }
+}
+
+BEGIN {
+ package ObjSession;
+ use Haver::Session -base;
+ use Test::More;
+
+ sub states { [qw( _start )] }
+ sub _start {
+ my ($obj, $opt) = @_[OBJECT, ARG0];
+
+ if ($opt->{object}) {
+ ok((ref($obj) eq 'ObjSession'), "Are we an object
state?");
+ } else {
+ ok(($obj eq 'ObjSession'), "Are we an object state?");
+ }
+ }
+}
+
Deleted: trunk/perl/core/t/005_wheel_run.t
===================================================================
--- trunk/perl/core/t/005_wheel_run.t 2005-06-20 21:21:36 UTC (rev 782)
+++ trunk/perl/core/t/005_wheel_run.t 2005-06-20 21:21:40 UTC (rev 783)
@@ -1,95 +0,0 @@
-#!/usr/bin/perl
-# vim: set ft=perl:
-use strict;
-use Test::More tests => 7;
-use POE;
-use Haver::Wheel;
-use Haver::Wheel::Loader;
-
-BEGIN {
- package MyWheel;
- use POE;
- use base 'Haver::Wheel';
-
- sub setup {
- my $self = shift;
- $self->provide('foo', 'on_foo');
- $self->provide('bar', 'on_bar');
- $self->provide('baz', 'on_baz');
- }
-
- sub on_load {
- my $self = $_[OBJECT];
- $self->{load} = 1;
- }
-
- sub on_unload {
- my $self = $_[OBJECT];
- $self->{unload} = 1;
- }
- sub on_foo {
- my $self = $_[OBJECT];
- $self->{foo}++;
- }
-
- sub on_bar {
- my $self = $_[OBJECT];
- $self->{bar}++;
- }
-
- sub on_baz {
- my $self = $_[OBJECT];
- $self->{baz}++;
- if ($self->{baz} == 1) {
- $_[KERNEL]->yield('bye');
- }
- }
-}
-
-POE::Session->create(
- inline_states => {
- _start => \&on_start,
- _stop => \&on_stop,
- bye => \&on_bye,
- },
-);
-
-POE::Kernel->run;
-
-sub on_start {
- my ($kernel, $heap) = @_[KERNEL, HEAP];
- my $loader = new Haver::Wheel::Loader;
- $loader->load_wheel('MyWheel');
- $heap->{loader} = $loader;
-
- diag "Starting session";
- foreach my $state (qw( foo bar baz )) {
- $kernel->yield($state) for 1 .. 3;
- }
-}
-
-sub on_stop {
- diag "Stopping session";
-}
-
-sub on_bye {
- my ($kernel, $heap) = @_[KERNEL, HEAP];
- my $loader = $heap->{loader};
- my $p = $loader->fetch_wheel('MyWheel');
-
- diag "Saying goodbye";
- is($p->{foo}, 3, "Called foo 3 times");
- is($p->{bar}, 3, "Called bar 3 times");
- is($p->{baz}, 3, "Called baz 3 times");
-
- diag "Calling foo again";
- $kernel->call($_[SESSION], 'foo');
- is($p->{foo}, 4, "foo is now 4");
-
- diag "Unloading MyWheel";
- $loader->unload_wheel('MyWheel');
- $kernel->call($_[SESSION], 'foo');
- isnt($p->{foo}, 5, "foo is not 5");
- ok($p->{load}, "on_load was called.");
- ok($p->{unload}, "on_unload was called.");
-}