Provided by: libtest-data-perl_1.24-2_all

**NAME**

Test::Data::Scalar -- test functions for scalar variables

**SYNOPSIS**

use Test::Data qw(Scalar);

**DESCRIPTION**

This modules provides a collection of test utilities for scalar variables. Load the module through Test::Data.Functionsblessed_ok( SCALAR ) Ok if the SCALAR is a blessed reference. defined_ok( SCALAR ) Ok if the SCALAR is defined. undef_ok( SCALAR ) Ok if the SCALAR is undefined. dualvar_ok( SCALAR ) Ok if the scalar is a dualvar. How do I test this? sub dualvar_ok ($;$) { my $ok = Scalar::Util::dualvar( $_[0] ); my $name = $_[1] || 'Scalar is a dualvar'; $Test->ok( $ok, $name ); $Test->diag("Expected a dualvar, didn't get it\n") unless $ok; } greater_than( SCALAR, BOUND ) Ok if the SCALAR is numerically greater than BOUND. length_ok( SCALAR, LENGTH ) Ok if the length of SCALAR is LENGTH. less_than( SCALAR, BOUND ) Ok if the SCALAR is numerically less than BOUND. maxlength_ok( SCALAR, LENGTH ) Ok is the length of SCALAR is less than or equal to LENGTH. minlength_ok( SCALAR, LENGTH ) Ok is the length of SCALAR is greater than or equal to LENGTH. number_ok( SCALAR ) Ok if the SCALAR is a number ( or a string that represents a number ). At the moment, a number is just a string of digits. This needs work. number_between_ok( SCALAR, LOWER, UPPER ) Ok if the number in SCALAR sorts between the number in LOWER and the number in UPPER, numerically. If you put something that isn't a number into UPPER or LOWER, Perl will try to make it into a number and you may get unexpected results. string_between_ok( SCALAR, LOWER, UPPER ) Ok if the string in SCALAR sorts between the string in LOWER and the string in UPPER, ASCII-betically. readonly_ok( SCALAR ) Ok is the SCALAR is read-only. ref_ok( SCALAR ) Ok if the SCALAR is a reference. ref_type_ok( REF1, REF2 ) Ok if REF1 is the same reference type as REF2. strong_ok( SCALAR ) Ok is the SCALAR is not a weak reference. tainted_ok( SCALAR ) Ok is the SCALAR is tainted. (Tainted values may seem like a not-Ok thing, but remember, when you use taint checking, you want Perl to taint data, so you should have a test to make sure it happens.) untainted_ok( SCALAR ) Ok if the SCALAR is not tainted. weak_ok( SCALAR ) Ok if the SCALAR is a weak reference.

**TO** **DO**

* add is_a_filehandle test * add is_vstring test

**SEE** **ALSO**

Scalar::Util, Test::Data, Test::Data::Array, Test::Data::Function, Test::Data::Hash, Test::Builder

**SOURCE** **AVAILABILITY**

This source is in Github: https://github.com/briandfoy/test-data

**AUTHOR**

brian d foy, "<bdfoy@cpan.org>"

**COPYRIGHT** **AND** **LICENSE**

Copyright (c) 2002-2012 brian d foy. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.