~ubuntu-branches/ubuntu/oneiric/padre/oneiric

« back to all changes in this revision

Viewing changes to t/82-plugin-manager.t

  • Committer: Bazaar Package Importer
  • Author(s): Damyan Ivanov
  • Date: 2009-04-28 16:21:53 UTC
  • mfrom: (1.1.2 upstream)
  • Revision ID: james.westby@ubuntu.com-20090428162153-9p3ygfznr9xt08sn
Tags: 0.34-1
* New upstream release

* bump liborlite-perl (build-)dependency to 1.20
* bump liborlite-migrate-perl (build-)dependency to 0.03
* refresh patches

Show diffs side-by-side

added added

removed removed

Lines of Context:
21
21
use Padre;
22
22
use Padre::Config::Constants qw{ $PADRE_PLUGIN_DIR };
23
23
use Padre::PluginManager;
 
24
use POSIX qw(locale_h);
24
25
 
25
26
my $padre = Padre->new;
26
27
 
86
87
#diag $path;
87
88
unshift @INC, $path;
88
89
#diag $ENV{PADRE_HOME};
 
90
my $english = setlocale(LC_CTYPE) eq 'en_US.UTF-8' ? 1 : 0;
89
91
SCOPE: {
90
92
        my $manager  = Padre::PluginManager->new($padre);
91
93
        $manager->load_plugin('A');
92
94
        is $manager->plugins->{'A'}->{status}, 'error', 'error in loading A';
93
 
        my $msg1 = qr/.*/;  # set to qr/Failed to load module/ if locale is English
 
95
        my $msg1 = $english ? qr/Plugin:A - Failed to load module/ : qr/.*/;
94
96
        like $manager->plugins->{'A'}->errstr, 
95
 
                qr/^Plugin:A - $msg1: Global symbol "\$syntax_error" requires explicit package name at/,
 
97
                qr/^$msg1: Global symbol "\$syntax_error" requires explicit package name at/,
96
98
                'text of error message';
97
99
 
98
100
        $manager->load_plugin('B');
99
101
        is $manager->plugins->{'B'}->{status}, 'error', 'error in loading B';
100
 
        my $msg2 = qr/.*/; # set to qr/Not compatible with Padre::Plugin API. Need to be subclass of Padre::Plugin/
 
102
        my $msg2 = $english ? qr/Plugin:B - Not compatible with Padre::Plugin API. Need to be subclass of Padre::Plugin/ : qr/.*/;
101
103
        like $manager->plugins->{'B'}->errstr,
102
 
                qr/^Plugin:B - $msg2/,
 
104
                qr/^$msg2/,
103
105
                'text of error message';
104
106
 
105
107
        $manager->load_plugin('C');
106
108
        is $manager->plugins->{'C'}->{status}, 'disabled', 'disabled in loading C';
107
 
        is $manager->plugins->{'C'}->errstr,
108
 
                'Plugin:C - Does not have menus',
 
109
        my $msg3 = $english ? qr/Plugin:C - Does not have menus/ : qr/.*/;
 
110
        like $manager->plugins->{'C'}->errstr,
 
111
                qr/$msg3/,
109
112
                'text of error message';
 
113
}
110
114
 
111
 
}