/
01-error.t
50 lines (42 loc) · 1001 Bytes
/
01-error.t
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#!perl -w
use strict;
use Test::More;
use File::Spec::Functions;
use NodeJs::RemoteObject 'as_list';
diag "--- Loading object functionality into repl\n";
for( map {canonpath $_} sort glob "nodejs-versions/nodejs-*/node*" ) {
$NodeJs::NODE_JS = $_
if -x
};
my $repl;
my $ok = eval {
$repl = NodeJs::RemoteObject->new(
#log => [qw[debug]],
#use_queue => 1,
launch => 1,
);
1;
};
if (! $ok) {
my $err = $@;
plan skip_all => "Couldn't connect to NodeJs: $@";
} else {
plan tests => 3;
};
my @events = ();
my $window = $repl->expr(<<'JS');
var window = require('timers');
window
JS
isa_ok $window, 'NodeJs::RemoteObject::Instance',
"We got a handle on window";
my $lived = eval {
#line testcode#1
$window->doesNotExist();
1
};
my $err = $@;
is $lived, undef, 'We died';
like $err, qr//, 'We got the correct error location';
use Data::Dumper;
diag Dumper $repl->{stats};