# -*-perl-*-
-# Before `make install' is performed this script should be runnable with
-# `make test'. After `make install' it should work as `perl PSPP.t'
+# Before `make install' is performed this script should be runnable
+# with `make test' as long as libpspp-core-$VERSION.so is in
+# LD_LIBRARY_PATH. After `make install' it should work as `perl
+# PSPP.t'
#########################
# change 'tests => 1' to 'tests => last_test_to_print';
-use Test::More tests => 32;
+use Test::More tests => 36;
use Text::Diff;
use File::Temp qw/ tempfile tempdir /;
BEGIN { use_ok('PSPP') };
{
my $d = PSPP::Dict->new();
ok (ref $d, "Dictionary Creation");
+ ok ($d->get_var_cnt () == 0);
$d->set_label ("My Dictionary");
$d->set_documents ("These Documents");
my $var0 = PSPP::Var->new ($d, "le");
ok (!ref $var0, "Trap illegal variable name");
+ ok ($d->get_var_cnt () == 0);
$var0 = PSPP::Var->new ($d, "legal");
ok (ref $var0, "Accept legal variable name");
+ ok ($d->get_var_cnt () == 1);
my $var1 = PSPP::Var->new ($d, "legal");
ok (!ref $var1, "Trap duplicate variable name");
+ ok ($d->get_var_cnt () == 1);
$var1 = PSPP::Var->new ($d, "money",
(fmt=>PSPP::Fmt::DOLLAR,
width=>4, decimals=>2) );
ok (ref $var1, "Accept valid format");
+ ok ($d->get_var_cnt () == 2);
$d->set_weight ($var1);
$longstr->set_label ("My Long String");
my $re = $longstr->add_value_label ("xxx", "xfoo");
- ok (($re == 0), "Long strings cant have labels");
-
- ok ($PSPP::errstr eq "Cannot add label to a long string variable", "Error msg");
+ ok ($re, "Value label for long string");
$int->set_missing_values (9, 99);
DISPLAY DICTIONARY.
SYNTAX
1.1 DISPLAY.
-+----------+-----------------------------------------+--------+
-|Variable |Description |Position|
-#==========#=========================================#========#
-|integer |My Integer | 1|
-| |Format: F8.0 | |
-| |Measure: Scale | |
-| |Display Alignment: Right | |
-| |Display Width: 8 | |
-| |Missing Values: 9; 99 | |
-| +-----+-----------------------------------+ |
-| | 0|Zero | |
-| | 1|Unity | |
-| | 2|Duality | |
-+----------+-----+-----------------------------------+--------+
-|string |My String | 2|
-| |Format: A8 | |
-| |Measure: Nominal | |
-| |Display Alignment: Left | |
-| |Display Width: 8 | |
-| |Missing Values: "this "; "that " | |
-| +-----+-----------------------------------+ |
-| | xx|foo | |
-| | yy|bar | |
-+----------+-----+-----------------------------------+--------+
-|longstring|My Long String | 3|
-| |Format: A9 | |
-| |Measure: Nominal | |
-| |Display Alignment: Left | |
-| |Display Width: 9 | |
-+----------+-----------------------------------------+--------+
++----------+---------------------------------------------+--------+
+|Variable |Description |Position|
+#==========#=============================================#========#
+|integer |My Integer | 1|
+| |Format: F8.0 | |
+| |Measure: Scale | |
+| |Display Alignment: Right | |
+| |Display Width: 8 | |
+| |Missing Values: 9; 99 | |
+| +---------+-----------------------------------+ |
+| | 0|Zero | |
+| | 1|Unity | |
+| | 2|Duality | |
++----------+---------+-----------------------------------+--------+
+|string |My String | 2|
+| |Format: A8 | |
+| |Measure: Nominal | |
+| |Display Alignment: Left | |
+| |Display Width: 8 | |
+| |Missing Values: "this "; "that " | |
+| +---------+-----------------------------------+ |
+| | xx |foo | |
+| | yy |bar | |
++----------+---------+-----------------------------------+--------+
+|longstring|My Long String | 3|
+| |Format: A9 | |
+| |Measure: Nominal | |
+| |Display Alignment: Left | |
+| |Display Width: 9 | |
+| +---------+-----------------------------------+ |
+| |xxx |xfoo | |
++----------+---------+-----------------------------------+--------+
RESULT