File:
[LON-CAPA] /
loncom /
cfgedittests /
append.t
Revision
1.2:
download - view:
text,
annotated -
select for diffs
Tue Nov 25 12:15:35 2003 UTC (21 years, 3 months ago) by
foxr
Branches:
MAIN
CVS tags:
version_2_9_X,
version_2_9_99_0,
version_2_9_1,
version_2_9_0,
version_2_8_X,
version_2_8_99_1,
version_2_8_99_0,
version_2_8_2,
version_2_8_1,
version_2_8_0,
version_2_7_X,
version_2_7_99_1,
version_2_7_99_0,
version_2_7_1,
version_2_7_0,
version_2_6_X,
version_2_6_99_1,
version_2_6_99_0,
version_2_6_3,
version_2_6_2,
version_2_6_1,
version_2_6_0,
version_2_5_X,
version_2_5_99_1,
version_2_5_99_0,
version_2_5_2,
version_2_5_1,
version_2_5_0,
version_2_4_X,
version_2_4_99_0,
version_2_4_2,
version_2_4_1,
version_2_4_0,
version_2_3_X,
version_2_3_99_0,
version_2_3_2,
version_2_3_1,
version_2_3_0,
version_2_2_X,
version_2_2_99_1,
version_2_2_99_0,
version_2_2_2,
version_2_2_1,
version_2_2_0,
version_2_1_X,
version_2_1_99_3,
version_2_1_99_2,
version_2_1_99_1,
version_2_1_99_0,
version_2_1_3,
version_2_1_2,
version_2_1_1,
version_2_1_0,
version_2_12_X,
version_2_11_X,
version_2_11_6_msu,
version_2_11_6,
version_2_11_5_msu,
version_2_11_5,
version_2_11_4_uiuc,
version_2_11_4_msu,
version_2_11_4,
version_2_11_3_uiuc,
version_2_11_3_msu,
version_2_11_3,
version_2_11_2_uiuc,
version_2_11_2_msu,
version_2_11_2_educog,
version_2_11_2,
version_2_11_1,
version_2_11_0_RC3,
version_2_11_0_RC2,
version_2_11_0_RC1,
version_2_11_0,
version_2_10_X,
version_2_10_1,
version_2_10_0_RC2,
version_2_10_0_RC1,
version_2_10_0,
version_2_0_X,
version_2_0_99_1,
version_2_0_2,
version_2_0_1,
version_2_0_0,
version_1_99_3,
version_1_99_2,
version_1_99_1_tmcc,
version_1_99_1,
version_1_99_0_tmcc,
version_1_99_0,
version_1_3_X,
version_1_3_3,
version_1_3_2,
version_1_3_1,
version_1_3_0,
version_1_2_X,
version_1_2_99_1,
version_1_2_99_0,
version_1_2_1,
version_1_2_0,
version_1_1_X,
version_1_1_99_5,
version_1_1_99_4,
version_1_1_99_3,
version_1_1_99_2,
version_1_1_99_1,
version_1_1_99_0,
version_1_1_3,
version_1_1_2,
version_1_1_1,
version_1_1_0,
version_1_0_99_3,
version_1_0_99_2,
version_1_0_99_1,
version_1_0_99,
loncapaMITrelate_1,
language_hyphenation_merge,
language_hyphenation,
bz6209-base,
bz6209,
bz5969,
bz2851,
PRINT_INCOMPLETE_base,
PRINT_INCOMPLETE,
HEAD,
GCI_3,
GCI_2,
GCI_1,
BZ5971-printing-apage,
BZ5434-fox,
BZ4492-merge,
BZ4492-feature_horizontal_radioresponse,
BZ4492-feature_Support_horizontal_radioresponse,
BZ4492-Support_horizontal_radioresponse
Bring back into the mainl-line from whatever branching hell import decided
to put them in.
1: #
2: # $Id: append.t,v 1.2 2003/11/25 12:15:35 foxr Exp $
3: #
4: # Copyright Michigan State University Board of Trustees
5: #
6: # This file is part of the LearningOnline Network with CAPA (LON-CAPA).
7: #
8: # LON-CAPA is free software; you can redistribute it and/or modify
9: # it under the terms of the GNU General Public License as published by
10: # the Free Software Foundation; either version 2 of the License, or
11: # (at your option) any later version.
12: #
13: # LON-CAPA is distributed in the hope that it will be useful,
14: # but WITHOUT ANY WARRANTY; without even the implied warranty of
15: # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16: # GNU General Public License for more details.
17: #
18: # You should have received a copy of the GNU General Public License
19: # along with LON-CAPA; if not, write to the Free Software
20: # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21: #
22: # /home/httpd/html/adm/gpl.txt
23: #
24: # http://www.lon-capa.org/
25: #
26:
27: use strict;
28: use Test;
29: use ConfigFileEdit;
30:
31:
32: #
33: # Test the ability to append an item to the list.
34: # Tests we plan are:
35: # Append item and check that:
36: # 1) The count of items is incremented by 1.
37: # 2) The last item is the one we added.
38: # 3) Append comment ensure that size of index is not
39: # increased.
40: #
41: BEGIN {plan tests=>3}
42:
43: #
44: # Test that after an append, the count of items is increased by one.
45:
46: sub TestAppendCount {
47: my $editor = ConfigFileEdit->new("testconfig.cfg", 0);
48: my $editorlines = ($editor->{LineArray});
49: my $initiallength = @$editorlines;
50:
51: $editor->Append("onemore:line:added:at:end");
52:
53: $editorlines = ($editor->{LineArray});
54: my $finallength = @$editorlines;
55:
56: ok($initiallength+1, $finallength);
57: }
58: #
59: # Test that after an append the new item has an index that is last.
60: #
61: sub TestAppendIsLast
62: {
63: my $editor = ConfigFileEdit->new("testconfig.cfg", 0);
64: $editor->Append("onemore:line:added:at:end");
65:
66: my $editorlines = ($editor->{LineArray});
67: my $finallength = @$editorlines;
68:
69: my $editorhash = ($editor->{KeyToLines});
70: my $linenum = $editorhash->{"onemore"};
71:
72: ok($finallength - 1, $linenum); # New line is last line.
73:
74: }
75: #
76: # Test that append comment does not add to the index hash.
77: #
78: sub TestCommentAppend {
79: my $editor = ConfigFileEdit->new("testconfig.cfg", 0);
80:
81: # Figure out how many keys we have now.
82:
83: my $editorhash = ($editor->{KeyToLines});
84: my @hashkeys = keys %$editorhash;
85: my $initialcount = @hashkeys;
86:
87: # Append a comment and figure out how many keys we have:
88:
89: $editor->Append("# This is clearly a comment line");
90: $editorhash = ($editor->{KeyToLines});
91: @hashkeys = keys %$editorhash;
92:
93: my $finalcount = @hashkeys;
94:
95: ok($initialcount, $finalcount);
96: }
97:
98: TestAppendCount;
99: TestAppendIsLast;
100: TestCommentAppend
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>