rake4latex 0.1.3 → 0.1.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (60) hide show
  1. checksums.yaml +7 -0
  2. data/bin/{call_rake4latex.rb → rake4latex.rb} +5 -1
  3. data/bin/{readme_call_rake4latex.txt → readme_rake4latex.txt} +0 -0
  4. data/lib/rake4latex.rb +6 -8
  5. data/lib/rake4latex/base.rb +60 -15
  6. data/lib/rake4latex/clean.rb +37 -32
  7. data/lib/rake4latex/glossaries.rb +3 -4
  8. data/lib/rake4latex/latexrunner.rb +9 -4
  9. data/lib/rake4latex/rail.rb +80 -0
  10. data/lib/rake4latex/rules.rb +25 -56
  11. data/lib/rake4latex/splitindex.rb +7 -7
  12. data/lib/rake4latex_dtx.rb +6 -4
  13. data/lib/rake4latex_dvipdfm.rb +3 -10
  14. data/lib/rake4latex_ps2pdf.rb +4 -8
  15. data/readme.html +37 -12
  16. data/readme.txt +23 -8
  17. data/test/_expected/bibtex_test.txt +0 -1
  18. data/test/_expected/bibtex_test_bib.txt +0 -1
  19. data/test/_expected/bibtex_test_build_rakefile.txt +0 -1
  20. data/test/_expected/dtx_test.txt +0 -1
  21. data/test/_expected/dtx_test_sty.txt +0 -1
  22. data/test/_expected/dvipdfm_test.txt +0 -1
  23. data/test/_expected/error_test.txt +0 -1
  24. data/test/_expected/error_test_ignore_error.txt +0 -1
  25. data/test/_expected/error_test_overview.txt +11 -12
  26. data/test/_expected/error_test_statistic.txt +0 -1
  27. data/test/_expected/gloss_test.txt +0 -1
  28. data/test/_expected/gloss_test_bib.txt +0 -1
  29. data/test/_expected/gloss_test_build_rakefile.txt +0 -1
  30. data/test/_expected/glossaries_test.txt +0 -1
  31. data/test/_expected/includes_test.txt +0 -1
  32. data/test/_expected/includes_test_build_rakefile.txt +1 -2
  33. data/test/_expected/index_test.txt +0 -1
  34. data/test/_expected/longtable_test.txt +0 -1
  35. data/test/_expected/minitoc_test.txt +0 -1
  36. data/test/_expected/ps2pdf_test.txt +0 -1
  37. data/test/_expected/rail_error_test.txt +2 -3
  38. data/test/_expected/rail_test.txt +0 -1
  39. data/test/_expected/splitindex_test.txt +0 -1
  40. data/test/_expected/splitindex_test_build_rakefile.txt +0 -1
  41. data/test/_expected/supertabular_test.txt +0 -1
  42. data/test/_expected/supertabular_test_statistic.txt +1 -2
  43. data/test/_expected/two_tasks_test.txt +0 -1
  44. data/test/_expected/two_tasks_test_statistic.txt +0 -1
  45. data/test/_expected/varioref_test.txt +0 -1
  46. data/test/_expected/varioref_test_ignore_error.txt +1 -2
  47. data/test/_expected/z_complex_test.txt +0 -1
  48. data/test/_expected/z_complex_test_overview.txt +58 -58
  49. data/test/_expected/z_complex_test_overview_file.txt +0 -1
  50. data/test/_expected/z_complex_test_statistic.txt +0 -1
  51. data/test/bibtex/rakefile.rb +4 -9
  52. data/test/gloss/rakefile.rb +0 -7
  53. data/test/glossaries/rakefile.rb +4 -5
  54. data/test/rake4latex_testhelper.rb +76 -0
  55. data/test/test_extract.rb +29 -0
  56. data/test/unittest_rail.rb +154 -0
  57. data/test/unittest_rake4latex.rb +1 -0
  58. data/test/unittest_rake4latex_testcases.rb +96 -63
  59. data/test/unittest_splitindex.rb +14 -3
  60. metadata +89 -117
@@ -1,4 +1,3 @@
1
-
2
1
  INFO testdocument: StartLaTeXRunner for testdocument.tex
3
2
  INFO testdocument: Excute pdflatex -interaction=batchmode testdocument.tex
4
3
  INFO testdocument: Rerun necessary (aux-file changed)
@@ -1,3 +1,2 @@
1
-
2
1
  Statistic for testdocument:
3
- Document : 7 pages, 18 underfull boxes (testdocument.log)
2
+ Document : 7 pages, 24 underfull boxes (testdocument.log)
@@ -1,4 +1,3 @@
1
-
2
1
  INFO testdocument_1: StartLaTeXRunner for testdocument_1.tex
3
2
  INFO testdocument_1: Excute pdflatex -interaction=batchmode testdocument_1.tex
4
3
  INFO testdocument_1: Rerun necessary (aux-file changed)
@@ -1,4 +1,3 @@
1
-
2
1
  INFO testdocument_1: StartLaTeXRunner for testdocument_1.tex
3
2
  INFO testdocument_1: Excute pdflatex -interaction=batchmode testdocument_1.tex
4
3
  INFO testdocument_1: TeX-run stopped after 1 run
@@ -1,4 +1,3 @@
1
-
2
1
  INFO testdocument: StartLaTeXRunner for testdocument.tex
3
2
  INFO testdocument: Excute pdflatex -interaction=batchmode testdocument.tex
4
3
  INFO testdocument: Rerun necessary (aux-file changed)
@@ -1,6 +1,5 @@
1
-
2
1
  INFO LaTeXRunner: Clean: delete helpfiles ["testdocument.aux", "testdocument.log", "testdocument.out"]
3
- INFO LaTeXRunner: Clobber: delete helpfiles ["testdocument.aux", "testdocument.log", "testdocument.out", "testdocument.pdf"]
2
+ INFO LaTeXRunner: Clobber: delete helpfiles ["testdocument.pdf"]
4
3
  INFO testdocument: StartLaTeXRunner for testdocument.tex
5
4
  INFO testdocument: Excute pdflatex -interaction=batchmode testdocument.tex
6
5
  INFO testdocument: Rerun necessary (aux-file changed)
@@ -1,4 +1,3 @@
1
-
2
1
  INFO testdocument: StartLaTeXRunner for testdocument.tex
3
2
  INFO testdocument: Excute pdflatex -interaction=batchmode testdocument.tex
4
3
  INFO testdocument: Rerun necessary (aux-file changed)
@@ -1,4 +1,3 @@
1
-
2
1
  Log-overview for testdocument.tex
3
2
  Document : 9 pages, 4 warnings (testdocument.log)
4
3
  Bibliography: Used testdocument.bib, 3 warnings (testdocument.blg)
@@ -7,53 +6,53 @@ Log-overview for testdocument.tex
7
6
  Index : 1 entry (testdocument-xxx.ilg)
8
7
  Index : 2 entries (testdocument-fru.ilg)
9
8
  Index : 3 entries (testdocument-idx.ilg)
10
- ---
11
- testdocument.log:
12
- :package_warnings:
13
- minitoc(hints):
14
- - W0030 [log#373]
15
- - W0023 [log#378]
16
- - W0039 [log#383]
17
- - W0023 [log#388]
18
- - W0024 [log#449]
19
- :latex_warnings:
20
- - No \author given. [log#397]
21
- - Citation `irgendwas' on page 5 undefined on input line 57. [log#428]
22
- - There were undefined references. [log#463]
23
- :output:
24
- - Output written on testdocument.pdf (9 pages) [log#481]
25
- testdocument.blg:
26
- :source_information:
9
+ ---
10
+ testdocument.log:
11
+ :package_warnings:
12
+ minitoc(hints):
13
+ - W0030 [log#370]
14
+ - W0023 [log#375]
15
+ - W0039 [log#380]
16
+ - W0023 [log#385]
17
+ - W0024 [log#447]
18
+ :latex_warnings:
19
+ - No \author given. [log#394]
20
+ - Citation `irgendwas' on page 5 undefined on input line 57. [log#426]
21
+ - There were undefined references. [log#462]
22
+ :output:
23
+ - Output written on testdocument.pdf (9 pages) [log#480]
24
+ testdocument.blg:
25
+ :source_information:
27
26
  - Database file testdocument.bib used
28
- :warnings:
27
+ :warnings:
29
28
  - string name "dtk" is undefined
30
29
  - Databaseentry irgendwas missing
31
30
  - empty journal in dtk00.4:lickert:blindtext
32
- testdocument-ani.ilg:
33
- :source_information:
34
- - "Input file: testdocument-ani.idx."
35
- - "Entries accepted: 1"
36
- - "Entries rejected: 0"
37
- testdocument-fru.ilg:
38
- :source_information:
39
- - "Input file: testdocument-fru.idx."
40
- - "Entries accepted: 2"
41
- - "Entries rejected: 0"
42
- testdocument-idx.ilg:
43
- :source_information:
44
- - "Input file: testdocument-idx.idx."
45
- - "Entries accepted: 3"
46
- - "Entries rejected: 0"
47
- testdocument-veg.ilg:
48
- :source_information:
49
- - "Input file: testdocument-veg.idx."
50
- - "Entries accepted: 1"
51
- - "Entries rejected: 0"
52
- testdocument-xxx.ilg:
53
- :source_information:
54
- - "Input file: testdocument-xxx.idx."
55
- - "Entries accepted: 1"
56
- - "Entries rejected: 0"
31
+ testdocument-ani.ilg:
32
+ :source_information:
33
+ - ! 'Input file: testdocument-ani.idx.'
34
+ - ! 'Entries accepted: 1'
35
+ - ! 'Entries rejected: 0'
36
+ testdocument-fru.ilg:
37
+ :source_information:
38
+ - ! 'Input file: testdocument-fru.idx.'
39
+ - ! 'Entries accepted: 2'
40
+ - ! 'Entries rejected: 0'
41
+ testdocument-idx.ilg:
42
+ :source_information:
43
+ - ! 'Input file: testdocument-idx.idx.'
44
+ - ! 'Entries accepted: 3'
45
+ - ! 'Entries rejected: 0'
46
+ testdocument-veg.ilg:
47
+ :source_information:
48
+ - ! 'Input file: testdocument-veg.idx.'
49
+ - ! 'Entries accepted: 1'
50
+ - ! 'Entries rejected: 0'
51
+ testdocument-xxx.ilg:
52
+ :source_information:
53
+ - ! 'Input file: testdocument-xxx.idx.'
54
+ - ! 'Entries accepted: 1'
55
+ - ! 'Entries rejected: 0'
57
56
 
58
57
  ========
59
58
  Detailed analyse of testdocument.log
@@ -61,17 +60,18 @@ testdocument-xxx.ilg:
61
60
  ###########
62
61
  ##The following list may contain wrong line assignments
63
62
  ###########
64
- ---
65
- :output:
66
- - Output written on testdocument.pdf (9 pages) [page0] [log#23] - []
67
- :package_warnings:
68
- minitoc(hints):
69
- - W0030 (./testdocument.tex) [log#96] - []
70
- - W0023 (./testdocument.tex) [log#101] - []
71
- - W0039 (./testdocument.tex) [log#106] - []
72
- - W0023 (./testdocument.tex) [log#111] - []
73
- - W0024 (./testdocument.tex) [log#163] - []
74
- :latex_warnings:
75
- - No \author given. (./testdocument.tex) [log#120] - []
76
- - Citation `irgendwas' on page 5 undefined on input line 57. (./testdocument.tex) [log#150] - []
77
- - There were undefined references. (./testdocument.tex) [log#177] - []
63
+ ---
64
+ :output:
65
+ - Output written on testdocument.pdf (9 pages) [page0] [log#22] - []
66
+ :package_warnings:
67
+ minitoc(hints):
68
+ - W0030 (./testdocument.tex) [log#97] - []
69
+ - W0023 (./testdocument.tex) [log#102] - []
70
+ - W0039 (./testdocument.tex) [log#107] - []
71
+ - W0023 (./testdocument.tex) [log#112] - []
72
+ - W0024 (./testdocument.tex) [log#159] - []
73
+ :latex_warnings:
74
+ - No \author given. (./testdocument.tex) [log#121] - []
75
+ - Citation `irgendwas' on page 5 undefined on input line 57. (./testdocument.tex)
76
+ [log#146] - []
77
+ - There were undefined references. (./testdocument.tex) [log#174] - []
@@ -1,2 +1 @@
1
-
2
1
  Create testdocument.overview.txt
@@ -1,4 +1,3 @@
1
-
2
1
  Statistic for testdocument:
3
2
  Document : 9 pages, 4 warnings (testdocument.log)
4
3
  Bibliography: Used testdocument.bib, 3 warnings (testdocument.blg)
@@ -59,15 +59,10 @@ if $0 == __FILE__
59
59
  app = Rake.application
60
60
  #~ Rake4LaTeX.set_latexrunner_default(:maxruns, 1)
61
61
  #~ Rake4LaTeX.set_latexrunner_default(:loglevel, Log4r::DEBUG)
62
- app[:default].invoke
62
+ #~ app[:default].invoke
63
63
 
64
- #~ app[:clean].invoke
64
+ #~ app[:clobber].invoke
65
+ #~ app[:test].invoke
66
+ #~ app[:test_bib].invoke
65
67
 
66
- #Simulate the unit test and build expected
67
- #~ [ :test, :test_bib, :clean ].each{|testcase|
68
- #~ stdout, stderr = catch_screen_output{
69
- #~ app[testcase].invoke
70
- #~ }
71
- #~ File.open("#{File.basename(Dir.pwd)}_#{testcase}.txt", 'w'){ |f| f << stdout }
72
- #~ }
73
68
  end
@@ -64,11 +64,4 @@ if $0 == __FILE__
64
64
 
65
65
  #~ app[:clean].invoke
66
66
 
67
- #Simulate the unit test and build expected
68
- #~ [ :test, :test_bib, :clean ].each{|testcase|
69
- #~ stdout, stderr = catch_screen_output{
70
- #~ app[testcase].invoke
71
- #~ }
72
- #~ File.open("#{File.basename(Dir.pwd)}_#{testcase}.txt", 'w'){ |f| f << stdout }
73
- #~ }
74
67
  end
@@ -2,11 +2,10 @@
2
2
  #Test Glossaries
3
3
  #http://theoval.cmp.uea.ac.uk/~nlct/latex/packages/glossaries/glossaries-manual.html
4
4
  #
5
- Dir.chdir('../../lib'){
6
- require './rake4latex'
7
- require './rake4latex/glossaries'
8
- }
9
- #~ require 'glossaries'
5
+
6
+ $:.unshift('../../lib')
7
+ require 'rake4latex'
8
+ require 'rake4latex/glossaries'
10
9
 
11
10
 
12
11
  deps = [
@@ -0,0 +1,76 @@
1
+ =begin rdoc
2
+ =end
3
+ gem 'more_unit_test', '> 0.0.2'
4
+ require 'more_unit_test/assert_equal_filecontent'
5
+
6
+ =begin rdoc
7
+ Generic test definition for testcases.
8
+ =end
9
+ module Rake4latex_testhelper
10
+ =begin rdoc
11
+ Test testcase(s).
12
+
13
+ Example:
14
+ class Test_testdocument < Test::Unit::TestCase
15
+ include Rake4latex_testhelper
16
+ #run testcase in directory 'splitindex'
17
+ def test_splitindex
18
+ mytest_testcase( 'splitindex')
19
+ end
20
+ end
21
+
22
+ 1) Changes to test directory and look for a rakefile.rb.
23
+ 2) Scan rakefile.rb for basefile
24
+ 3) Scan rakefile.rb for task :test____ and call rake for it
25
+ 4) Compare output with expected result
26
+
27
+ =end
28
+ def define_testcase( dir )
29
+ assert_equal( true, File.directory?(dir))
30
+
31
+ Dir.chdir(dir){
32
+ assert_equal( true, File.exist?('rakefile.rb'), "No rakefile in #{dir}")
33
+ #clean and check if test directory is empty in advance.
34
+ `call rake clobber`
35
+ assert_equal( true, Dir['*.{aux,log}'].empty?, "<#{dir}> contains old testdata")
36
+
37
+ #Logger umh�ngen auf file
38
+ #~ LaTeXRunner.logger.outputters = Log4r::FileOutputter.new("#{dir}.log4r")
39
+ LaTeXRunner::DEFAULT_SETTINGS[:loglevel] = Log4r::INFO
40
+ #testcases: test (test1 test2 ...)
41
+ testcase = nil
42
+ File.open('rakefile.rb'){|rakefile|
43
+ rakefile_content = rakefile.read
44
+ assert_match(/^\s*task\s*:basefile\s*=>|Rake4LaTeX::Basefile.set/, rakefile_content, "Missing basefile-task in Test #{dir}")
45
+ #Get all test cases
46
+ rakefile_content.scan(/^task\s*:(test\S*)\s*=>(.*)$/){|hit|
47
+ testcase = hit.first
48
+ dircontent = Dir['*'] #Remember the directory content before the task
49
+ result = `call rake #{testcase}`
50
+ result.sub!(/\(in .*?$/,'') #delete first line from rake (depends on directory the test runs).
51
+ result.sub!(/^call (.*?)\n$/,'') if RUBY_VERSION =~ /1.9/
52
+
53
+ #Take a look on the prerequisites
54
+ case hit[1]
55
+ #Special test with :log_overview.
56
+ #Don't test stdout, but content of the overview-file
57
+ when /:log_overview_file/
58
+ assert_equal( 1, Dir['*'].size - dircontent.size , 'No log-overview created' ) #One file created
59
+ end
60
+ self.folder_for_failure = "../_failure#{Date.today}"
61
+ assert_equal_filecontent( "../_expected/#{dir}_#{testcase}.txt", result,
62
+ "Testcase #{dir}/#{testcase} changed content"
63
+ )
64
+ }#loop on test-tasks
65
+ }#File rakefile
66
+ assert_not_nil(testcase, "No testcase found in <#{dir}>")
67
+
68
+ #Check overview file
69
+ #~
70
+ #~ `call rake log_overview`
71
+
72
+ #~ `call rake clean`
73
+ `call rake clobber` #PDFs not really needed after the test.
74
+ }
75
+ end
76
+ end
@@ -0,0 +1,29 @@
1
+ =begin
2
+ How to run individual Ruby Test::Unit tests
3
+ http://www.natontesting.com/2009/08/03/how-to-run-individual-ruby-testunit-tests/
4
+
5
+
6
+ =end
7
+ gem 'test-unit'
8
+ #relevant test::unit requires
9
+ require 'test/unit'
10
+ require 'test/unit/ui/console/testrunner'
11
+
12
+ #TestCase classes that contain the methods I want to execute
13
+ require './unittest_rake4latex_testcases'
14
+
15
+ #create a new empty TestSuite, giving it a name
16
+ my_tests = Test::Unit::TestSuite.new("My Special Tests")
17
+
18
+ #add the test method called 'test_one' defined
19
+ #in the TestOne TestCase class to the my_tests
20
+ #test suite defined above
21
+ #~ my_tests << Test_testdocument.new('test_error')
22
+ #~ my_tests << Test_testdocument.new('test_two_tasks')
23
+ #~ my_tests << Test_testdocument.new('test_bibtex')
24
+ #~ my_tests << Test_testdocument.new('test_gloss')
25
+ #~ my_tests << Test_testdocument.new('test_minitoc')
26
+
27
+
28
+ #run the suite
29
+ Test::Unit::UI::Console::TestRunner.run(my_tests)
@@ -0,0 +1,154 @@
1
+ gem 'test-unit'
2
+ gem 'test-unit', '<= 2.1.1' if RUBY_VERSION == '1.9.1'
3
+ require 'test/unit'
4
+
5
+ =begin
6
+ The original rail.exe is a 16bit version and works not
7
+ with Windows 64bit.
8
+
9
+ The compilation is no problem:
10
+
11
+ 1. Get rail source from http://ctan.org/tex-archive/support/rail
12
+ 2. You need devkit-tools (make, yacc...)
13
+ To use the ruby devkit:
14
+ PATH=%PATH%;C:\bin\devkit\mingw\bin;C:\bin\devkit\bin
15
+ make
16
+ =end
17
+
18
+ #~ require 'assert_equal_filecontent'
19
+ if $0 == __FILE__
20
+ $:.unshift('../lib')
21
+ else
22
+ #Change the directory. Relevant, if called from rakefile_rake4latex.rb
23
+ Dir.chdir(File.dirname(__FILE__))
24
+ end
25
+ require 'rake4latex'
26
+ include Rake4LaTeX
27
+ require_relative('rake4latex_testhelper')
28
+
29
+ class Test_rail < Test::Unit::TestCase
30
+ def test_rail_available
31
+ found = false
32
+ ENV['Path'].split(/;/).each{|path|
33
+ next if path.empty?
34
+ Dir.chdir(path){
35
+ found = true if File.exist?( 'rail.exe' )
36
+ } rescue Errno::ENOENT
37
+ break if found
38
+ }
39
+ assert_true(found, 'Rail.exe not found in search path')
40
+ end
41
+ def test_correct_programm
42
+ stdin, stdout, stderr, wait_thr = Open3.popen3('rail.exe xxx')
43
+ assert_true(wait_thr.value.exited?) #Process::Status
44
+ assert_false(wait_thr.value.success?) #Process::Status
45
+ assert_equal(1, wait_thr.value.exitstatus ) #Process::Status
46
+ #~ assert_equal([%{This is Rail, Version 1.0 #0\n}], stdout.readlines) #Win32
47
+ assert_equal([%{This is Rail, Version 1.2 #1\n}], stdout.readlines)
48
+ assert_equal([%{xxx.rai: No such file or directory\n}], stderr.readlines)
49
+ end
50
+ end
51
+
52
+ class Test_rail_ok < Test::Unit::TestCase
53
+ def self.startup
54
+ @@testrai_file = '_tmp_.rai'
55
+ @@delete_at_teardown = [@@testrai_file]
56
+ File.open(@@testrai_file, 'w'){|f|
57
+ f << "\\rail@i{1}{ block1 : ( lbrace | 'begin' ) ( ( '|' ( variable + ',' ) '|' ) | [Keine Blockvariablen] ) comm ( rbrace | 'end' ) ; }"
58
+ }
59
+ end
60
+ def self.shutdown
61
+ @@delete_at_teardown.each{|filename|
62
+ (File.delete(filename) if File.exist?(filename)) rescue Errno::EACCES
63
+ }
64
+ end
65
+ def setup
66
+ @rail = Rake4LaTeX::Rail.new(@@testrai_file)
67
+ end
68
+
69
+ def test_rail_cmd
70
+ assert_equal("rail.exe < #{@@testrai_file}", @rail.cmd)
71
+ end
72
+ def test_rail_cmd_execution
73
+ expected = <<'expect'
74
+ \rail@i {1}{ block1 : ( lbrace | 'begin' ) ( ( '|' ( variable + ',' ) '|' ) | [Keine Blockvariablen] ) comm ( rbrace | 'end' ) ; }
75
+ \rail@o {1}{
76
+ \rail@begin{3}{block1}
77
+ \rail@bar
78
+ \rail@nont{lbrace}[]
79
+ \rail@nextbar{1}
80
+ \rail@term{begin}[]
81
+ \rail@endbar
82
+ \rail@bar
83
+ \rail@term{|}[]
84
+ \rail@plus
85
+ \rail@nont{variable}[]
86
+ \rail@nextplus{1}
87
+ \rail@cterm{,}[]
88
+ \rail@endplus
89
+ \rail@term{|}[]
90
+ \rail@nextbar{2}
91
+ \rail@annote[Keine Blockvariablen]
92
+ \rail@endbar
93
+ \rail@nont{comm}[]
94
+ \rail@bar
95
+ \rail@nont{rbrace}[]
96
+ \rail@nextbar{1}
97
+ \rail@term{end}[]
98
+ \rail@endbar
99
+ \rail@end
100
+ }
101
+ expect
102
+
103
+ assert_true( @rail.execute )
104
+ assert_equal(expected.strip,@rail.stdout)
105
+ assert_equal('', @rail.stderr)
106
+ end
107
+ end #Test_Rail_ok
108
+
109
+
110
+
111
+ class Test_rail_error < Test::Unit::TestCase
112
+ def self.startup
113
+ @@testrai_file = '_tmp_.rai'
114
+ @@delete_at_teardown = [@@testrai_file]
115
+ File.open(@@testrai_file, 'w'){|f|
116
+ #rail-definition with error
117
+ f << "\rail@i{1}{ block1 : ( "
118
+ }
119
+ end
120
+ def self.shutdown
121
+ @@delete_at_teardown.each{|filename|
122
+ (File.delete(filename) if File.exist?(filename)) rescue Errno::EACCES
123
+ }
124
+ end
125
+ def setup
126
+ @rail = Rake4LaTeX::Rail.new(@@testrai_file)
127
+ end
128
+ def test_rail_cmd
129
+ assert_equal("rail.exe < #{@@testrai_file}", @rail.cmd)
130
+ end
131
+ def test_rail_cmd_execution
132
+ assert_false( @rail.execute )
133
+ assert_equal("",@rail.stdout.strip)
134
+ assert_equal(%{stdin, line 1: syntax error\n}, @rail.stderr)
135
+ end
136
+ end #Test_Rail_error
137
+
138
+
139
+ class Test_rail_testcases < Test::Unit::TestCase
140
+ include Rake4latex_testhelper #get define_testcase
141
+
142
+ def test_testdirectories()
143
+ assert_true(Dir.exist?('rail'))
144
+ assert_true(Dir.exist?('rail_error'))
145
+ end
146
+
147
+ def test_rail
148
+ define_testcase( 'rail')
149
+ end
150
+
151
+ def test_rail_error
152
+ define_testcase( 'rail_error')
153
+ end
154
+ end