summaryrefslogtreecommitdiffstats
path: root/tcllib/modules/doctools2toc/export_text.test
blob: dd5383faec3e66187adf8403cd832ae5494a3ded (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
# -*- tcl -*-
# toc_export_text.test:  tests for the doctools::toc::export::text package/plugin.
#
# Copyright (c) 2009 by Andreas Kupries <andreas_kupries@users.sourceforge.net>
# All rights reserved.
#
# RCS: @(#) $Id: export_text.test,v 1.2 2009/11/15 05:50:03 andreas_kupries Exp $

# -------------------------------------------------------------------------

source [file join \
	[file dirname [file dirname [file join [pwd] [info script]]]] \
	devtools testutilities.tcl]

testsNeedTcl     8.4
testsNeedTcltest 2.0

support {
    use      fileutil/fileutil.tcl  fileutil      ;# tests/common
    useLocal structure.tcl      doctools::toc::structure
    use doctools2base/text.tcl               doctools::text
}
testing {
    package provide doctools::toc::export::plugin 1
    # The above fakes the export plugin environment.

    useLocal export_text.tcl doctools::toc::export::text
}

source [tcllibPath doctools2base/tests/common]
set mytestdir tests/data

# -------------------------------------------------------------------------

# General set of error cases regarding the number of arguments.

test doctools-toc-export-text-1.0 {export, wrong#args} -body {
    export
} -returnCodes error -result {wrong # args: should be "export serial configuration"}

test doctools-toc-export-text-1.1 {export, wrong#args} -body {
    export S
} -returnCodes error -result {wrong # args: should be "export serial configuration"}

test doctools-toc-export-text-1.2 {export, wrong#args} -body {
    export S C XXX
} -returnCodes error -result {wrong # args: should be "export serial configuration"}

# -------------------------------------------------------------------------

# Testing the generation of text output, from toc serialization,
# for all possible plugin configurations.

TestFilesProcess $mytestdir ok serial text -> n label input data expected {
    test doctools-toc-export-text-2.$n "doctools::toc::export::text, $label, ok" -body {
	export $data {}
    } -result $expected
}

#----------------------------------------------------------------------
unset n label input data expected
testsuiteCleanup
return