-
Notifications
You must be signed in to change notification settings - Fork 1
/
Readme-Hacking.txt
88 lines (64 loc) · 2.87 KB
/
Readme-Hacking.txt
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
This file is not completed now - any might be in future.
* Development Environment
** Tools
*** Mandatory
There are some mandatory tools to do development for rmtoo:
Debian 6: $ apt-get install make graphviz texlive-latex-extra
** Eclipse
For development of the source code, eclipse is used.
This has some advantages about the emacs / vi approach - especially
automated style and lint checking.
*** OpenJDK
Install the openjdk to use for eclipse - only JRE is needed.
Debian 6: $ apt-get install openjdk-6-jre
*** Eclipse
Goto http://www.eclipse.org/ and install latest version.
Be sure to use the non Java, non C++ version.
*** PyDev
Goto http://pydev.org and install the latest version.
*** PyLint
Install pylint
Debian 6: $ apt-get install pylint
In Eclipse goto: Preferences -> PyDev -> PyLint and enable pylint.
*** PyUnit
In Eclipse goto: Preferences -> PyUnit and choose Nose Test runner.
* Testing
** Comparing XML
There are many files containing XML data. These files are either
generated directly inside the rmtoo's output module or with the
help of an external library.
*** History
For some time (until version 19) an external library was used to
compare XML files. This library called xmldiff has a major
drawback: because it tries to generate the diff (what is much more
than really needed) it is very time consuming for bigger files.
The manual page of xmldiff notes that you can typically diff
documents with about 100 nodes with the help of this library.
Because the runtime of the comparison which was about 20 minutes
for some bigger document xmldiff was dropped and an own
function for comparing XML documents was established.
*** Directly Generated Files
Directly generated files are generated with the help of an output
module directly. In this case a simple compare should be enough.
It is defined that not only the (sub-) nodes should be equal but
also the order in which they appear.
*** External Libraries
For some outputs external libraries are used.
**** odfpy-svn20100810
This is the currently used version. This is the latest known
working version which works with OpenOffice using the automatic
generated odf documents.
The problem with this library is, that the order of (sub-)nodes
is arbitrary and even some (intermediate) nodes can be named
different when using another computer.
Therefore it is mostly not possible to do a simple xml comparison
to check if documents are equal.
**** odfpy-0.9.3
This version does not support creating ODF files which are
generated by OpenOffice 3.2 (which is somewhat strange).
*** Current 'solution'
Because of the problems comparing automated created XML documents,
the check is only done for the directly generated files.
Local Variables:
mode:outline
End: