rresume 0.0.3 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,543 @@
1
+ $:.unshift File.join(File.dirname(__FILE__), "..", "lib")
2
+
3
+ require 'test/unit' unless defined? $ZENTEST and $ZENTEST
4
+ require 'rubygems'
5
+ require 'rresume'
6
+
7
+ require "amrita/template"
8
+ include Amrita
9
+
10
+ class TestThomas < Test::Unit::TestCase
11
+
12
+ def setup
13
+
14
+ end
15
+
16
+ def test_thomas_profil_neue_methode
17
+ #-- Sprachen
18
+ ada = Tool.new("Ada")
19
+ php = Tool.new("PHP")
20
+ perl = Tool.new("Perl")
21
+ ruby = Tool.new("Ruby")
22
+ html = Tool.new("HTML")
23
+ abap = Tool.new("ABAP")
24
+ c = Tool.new("C")
25
+ shell = Tool.new("Shell-Script")
26
+ python = Tool.new("Python")
27
+ #-- Datenbanken
28
+ oracle = Tool.new("Oracle")
29
+ mysql = Tool.new("MySQL")
30
+ ctree = Tool.new("c-tree")
31
+ sybase = Tool.new("Sybase")
32
+ db2 = Tool.new("DB/2")
33
+ dbase = Tool.new("Dbase")
34
+ informix = Tool.new("Informix")
35
+ cisam = Tool.new("C-ISAM")
36
+ #-- Betriessysteme/Umgebungen
37
+ linux = Tool.new("Linux")
38
+ windows = Tool.new("Windows")
39
+ sap = Tool.new("SAP")
40
+ unix = Tool.new("UNIX")
41
+ os2 = Tool.new("OS/2")
42
+ amboss = Tool.new("AMBOSS")
43
+
44
+ #-- sonst
45
+ toad = Tool.new("TOAD")
46
+ oracledesigner = Tool.new("Oracle-Designer")
47
+ oraclereports = Tool.new("Oracle-Reports")
48
+
49
+ css = Tool.new("CSS")
50
+ cpp = Tool.new("C++")
51
+ cobol = Tool.new("COBOL")
52
+ #fortran = Tool.new("Fortran")
53
+ plsql = Tool.new("PL/SQL")
54
+ sqlloader = Tool.new("SQL-Loader")
55
+ awk = Tool.new("AWK")
56
+
57
+ # Person f�r Profil
58
+ thomas = Person.new("Thomas","Preymesser")
59
+ thomas.adresse = "Prinzenallee 36"
60
+ thomas.plz = "13359"
61
+ thomas.ort = "Berlin"
62
+ thomas.telefon = "030 - 49 78 37 06"
63
+ thomas.mobil = "0172 - 8111 959"
64
+ thomas.email = "tp@thopre.de"
65
+ thomas.education_list = [
66
+ "Fachhochschulreife",
67
+ "Studium Nachrichtentechnik",
68
+ "Fachinformatiker (Fachrichtung Anwendungsentwicklung)",
69
+ ]
70
+ thomas.weiterbildungen = [
71
+ "Certified Business Engineer (gepr&uuml;fter Wirtschaftsinformatiker)",
72
+ ]
73
+ thomas.fremdsprachen = [
74
+ "Englisch",
75
+ "Italienisch (Grundkenntnisse)",
76
+ ]
77
+
78
+ # Container fuer saemtliche Projekte
79
+ projectlist = ProjectList.new(thomas)
80
+
81
+ # diese Projektliste an Thomas zuweisen # NEU 2006-08-10
82
+ thomas << projectlist # NEU 2006-08-10
83
+
84
+ # folgende Tools koennen den Projekten zugeordnet werden
85
+ # hier koennen sowohl Programmiersprachen, Betriebssysteme, Datenbanken
86
+ # angegeben werden, je nach Vorlieben
87
+
88
+ # ein erstes Projekt
89
+ cronon = Project.new("Cronon")
90
+
91
+ # Start und Ende des Projekts (Monat/Jahr)
92
+ cronon.von(4,2006)
93
+ cronon.bis(8,2006)
94
+ cronon.branche="IT/Web-Dienstleistungen"
95
+ cronon.beschreibung="- ERP-Anwendungsentwicklung (Baan)"+
96
+ "- Web-Entwicklung (www.1plusi.de)"+
97
+ "- Web-Entwicklung f�r eine neuen Online-Community �hnlich OpenBC"
98
+
99
+ # Tools
100
+ cronon.used_tool(php)
101
+ cronon.used_tool(html)
102
+ cronon.used_tool(css)
103
+ cronon.used_tool(ruby)
104
+ cronon.used_tool(mysql)
105
+ cronon.used_tool(oracle)
106
+ cronon.used_tool(windows)
107
+
108
+ projectlist << cronon
109
+
110
+ #===================================================================
111
+ lulaliebe = Project.new("Lulaliebe")
112
+ lulaliebe.von(5,2005)
113
+ lulaliebe.bis(12,2005)
114
+ lulaliebe.branche="Web Dienstleistungen"
115
+ lulaliebe.beschreibung="Konzeption und Realisierung einer Dating-Site (www.lulaliebe.de)"
116
+ lulaliebe.used_tool(html)
117
+ lulaliebe.used_tool(ada)
118
+ lulaliebe.used_tool(mysql)
119
+ lulaliebe.used_tool(php)
120
+ lulaliebe.used_tool(linux)
121
+ projectlist << lulaliebe
122
+
123
+
124
+
125
+ #===================================================================
126
+ mcontacts = Project.new("mcontacts")
127
+ mcontacts.von(4,2005)
128
+ mcontacts.bis(4,2005)
129
+ mcontacts.branche="Web Dienstleistungen"
130
+ mcontacts.beschreibung="Kontakte- und Termine-Verwaltung �ber Web-Browser oder Mobiltelefon/PDA (www.mcontacts.de) (Pr�fungsarbeits im Rahmen der Weiterbildung Wirtschaftsinformatiker IHK)"
131
+ mcontacts.used_tool(html)
132
+ mcontacts.used_tool(php)
133
+ mcontacts.used_tool(mysql)
134
+ mcontacts.used_tool(ada)
135
+ mcontacts.used_tool(linux)
136
+ projectlist << mcontacts
137
+
138
+ #===================================================================
139
+ ausbildung = Project.new("ausbildung")
140
+ ausbildung.von(7,2002)
141
+ ausbildung.bis(12,2004)
142
+ ausbildung.branche="Ausbildung"
143
+ ausbildung.beschreibung="Ausbildung zum Fachinformatiker (Fachrichtung Anwendungsentwicklung sowie Weiterbildung zum gepr�ften Wirtschftsinformatiker IHK (inkl. einj�hriges Praktikum bei SAP Walldorf (Entwicklung automatisierter Tests f�r SAP-Anwendungen sowie Mitarbeit bei Benutzer- und Systemadministration)"
144
+ #ausbildung.used_tool(java)
145
+ #ausbildung.used_tool(cpp)
146
+ #ausbildung.used_tool(access)
147
+ #ausbildung.used_tool(html)
148
+ #ausbildung.used_tool(php)
149
+ #ausbildung.used_tool(mysql)
150
+ ausbildung.used_tool(linux)
151
+ ausbildung.used_tool(windows)
152
+ ausbildung.used_tool(sap)
153
+ ausbildung.used_tool(abap)
154
+ projectlist << ausbildung
155
+
156
+ #===================================================================
157
+ produkttester = Project.new("produkttester")
158
+ produkttester.von(9,2002)
159
+ produkttester.bis(10,2002)
160
+ produkttester.branche="Web Dienstleistungen"
161
+ produkttester.beschreibung="Konzeption und Realisierung einer Site f�r den Einsatz und die Verwaltung vonProdukttestern, Shoptestern, etc. (www.testeragentur.de, www.wir-testen-alles.de)"
162
+ produkttester.used_tool(html)
163
+ produkttester.used_tool(php)
164
+ produkttester.used_tool(mysql)
165
+ produkttester.used_tool(linux)
166
+ projectlist << produkttester
167
+
168
+ #===================================================================
169
+ profilmacher = Project.new("profilmacher")
170
+ profilmacher.von(1,2002)
171
+ profilmacher.bis(2,2002)
172
+ profilmacher.branche="IT"
173
+ profilmacher.beschreibung="Konzeption, Design und Realisierung f�r Online-Verwaltung von IT-Profilen f�r Freelancer oder andere Mitarbeiter."
174
+ profilmacher.used_tool(html)
175
+ profilmacher.used_tool(php)
176
+ profilmacher.used_tool(mysql)
177
+ profilmacher.used_tool(linux)
178
+ projectlist << profilmacher
179
+
180
+ #===================================================================
181
+ shops = Project.new("Heidelbergshops")
182
+ shops.von(9,2001)
183
+ shops.bis(12,2001)
184
+ shops.branche="WWW-Programmierung, Einzelhandel"
185
+ shops.beschreibung="Konzeption, Design und Realisierung f�r Shopping-Portale im Web."
186
+ shops.used_tool(html)
187
+ shops.used_tool(php)
188
+ shops.used_tool(mysql)
189
+ shops.used_tool(linux)
190
+ projectlist << shops
191
+
192
+ #===================================================================
193
+ postbank = Project.new("Postbank SAP")
194
+ postbank.von(3,2001)
195
+ postbank.bis(8,2001)
196
+ postbank.branche="Banken"
197
+ postbank.beschreibung="Mitarbeit bei der Spezifikation eines Datenarchivierungskonzepts im Rahmen einer Account-Management-Bankenanwendung"
198
+ postbank.used_tool(abap)
199
+ postbank.used_tool(windows)
200
+ postbank.used_tool(sap)
201
+ projectlist << postbank
202
+
203
+ #===================================================================
204
+ lehele = Project.new("Lehele")
205
+ lehele.von(8,2000)
206
+ lehele.bis(1,2001)
207
+ lehele.branche="Web-Dienstleistungsvermittlung"
208
+ lehele.beschreibung="Design und Realisierung im Rahmen einer Dienstleistungsvermittlung im WW (www.lehele.de)"
209
+ lehele.used_tool(linux)
210
+ lehele.used_tool(html)
211
+ lehele.used_tool(php)
212
+ lehele.used_tool(mysql)
213
+ projectlist << lehele
214
+
215
+
216
+ #===================================================================
217
+ markforschung = Project.new("Marktforschung")
218
+ markforschung.von(7,2000)
219
+ markforschung.bis(10,2000)
220
+ markforschung.branche="Marktforschumg GfK"
221
+ markforschung.beschreibung="C/C++ Programmierung im Rahmen der Umstellung von Kernprozessen, Migration von Artikelbewegungsdaten."
222
+ markforschung.used_tool(linux)
223
+ markforschung.used_tool(c)
224
+ markforschung.used_tool(cpp)
225
+ markforschung.used_tool(ctree)
226
+ markforschung.used_tool(sybase)
227
+ markforschung.used_tool(oracle)
228
+ projectlist << markforschung
229
+
230
+
231
+ #===================================================================
232
+ philips = Project.new("Philips speech systems")
233
+ philips.von(2,2000)
234
+ philips.bis(6,2000)
235
+ philips.branche="Telekommunikation/Spracherkennung"
236
+ philips.beschreibung="-Sprachgesteuerte Auskunftssystme. Wartung und Erweterung von PL/SQL-Programmen im Rahmen des Testumfelds. Integrit�tspr�fungen f�r Grammatiken."+
237
+ "-Aufbereiten, Importieren und statistische Analysen von Telefonauskunftsdateien."+
238
+ "PL-SQL"
239
+ philips.used_tool(plsql)
240
+ philips.used_tool(sqlloader)
241
+ philips.used_tool(ada)
242
+ philips.used_tool(c)
243
+ philips.used_tool(oracle)
244
+ philips.used_tool(unix)
245
+ projectlist << philips
246
+
247
+ #===================================================================
248
+ arcor = Project.new("Arcor")
249
+ arcor.von(7,1999)
250
+ arcor.bis(1,2000)
251
+ arcor.branche="Telekommunikation"
252
+ arcor.beschreibung="- Laden von unterschiedlichen Verkehrsme�daten, die im Telefonnetz anfallen in Datenbank sowie Auswertungen dar�ber (Schnittstellenprogrammierung). Erstellen von Generatorprogrammen zum automatisiereten Erzeugen von Datenbank-Scripts aus Definitionen, die in einem Spreadshet erfasst werden (Tabellen,, Views und andere Datenbankobjekte"+
253
+ "- Konzept und Programmierung im Rahmen eines Provisionierunsprogramms f�r ISDN-Kundenanschl�sse. Komplettieren und Laden von Kunden- und anschlu�daten aus gesendeten Daten, sowie R�ckmeldungen in Form von Ergebnisfiles oder Fehlermeldungen"+
254
+ "- Konzeption und Erstellung eines Systems unter Unix zzur Lastverteilung und Priorisierung bei Batch-Jobs. Triggern von Prozessen anhand empfangenre Datenfiles, Starten von Jabs nach Priorit�t und maximaler Anzahl gleichzeitig laufender Jobs, Auswerten von Bedingungen f�r Job-Start, Ansto�en einer Folgeverarbeitung je nach Job-Typ."
255
+ arcor.used_tool(awk)
256
+ arcor.used_tool(shell)
257
+ arcor.used_tool(plsql)
258
+ arcor.used_tool(sqlloader)
259
+ arcor.used_tool(oracle)
260
+ arcor.used_tool(unix)
261
+ arcor.used_tool(toad)
262
+ projectlist << arcor
263
+
264
+ #===================================================================
265
+ mblf = Project.new("MBLF")
266
+ mblf.von(9,1998)
267
+ mblf.bis(6,1999)
268
+ mblf.branche="Banken"
269
+ mblf.beschreibung="Migration von Fahrzeugfinanzierungs-Vertragsdaten."
270
+ mblf.used_tool(cpp)
271
+ mblf.used_tool(shell)
272
+ mblf.used_tool(plsql)
273
+ mblf.used_tool(sqlloader)
274
+ mblf.used_tool(oracle)
275
+ mblf.used_tool(toad)
276
+ mblf.used_tool(windows)
277
+ mblf.used_tool(unix)
278
+ projectlist << mblf
279
+
280
+ #===================================================================
281
+ qb = Project.new("Quelle Bank")
282
+ qb.von(10,1997)
283
+ qb.bis(9,1998)
284
+ qb.branche="Banken"
285
+ qb.beschreibung="Entwicklung im Rahmen der Neuimplementierung einer Direktbanken-Anwendung f�r Telefonkonten, Auto-Cash-Kredit, Sparbriefe, etc. Programmierung f�r allgemeine Programmentwicklungsinfrastruktur, Anbindung einer Datenbank f�r Adressen- und PLZensuche sowie Duplettenpr�fung (Fuzzy-Logic). Oracle-Designer, -Developer. Erstellung verschiedener BO (PL/SQL). "+
286
+ "Realisierung im Rahmen einer Neuentwicklung einer Banken-DV f�r eine Direktbank.
287
+ C-Programmierung, Embedded-SQL, PL/SQL-Funktionen. Betriebssystem HP-UX 10.20 und Windows-NT.
288
+ Datenbank Oracle 7.x.x, Shell-Scripts, awk, Python. - Realisierung von Batchprogrammen in C
289
+ -Serverprogramme f�r die Adre�- und Dublettenpr�fung in Verbindung mit externerSoftware (Fuzzy)
290
+ - Maschinelle Erzeugungvon Datenbankzugriffsmodulen f�r C und Embedded-SQL
291
+ - Programme zur automatischen Generierung von Programmdokumentation im HTML-Format
292
+ - Maschinelle Erzeugung von interner Projektdokumentation �ber Datenbanktabellen,Views, PL/SQL-Funktionen, u. �. im HTML-Format.
293
+ - Oracle-Reports "
294
+ qb.used_tool(plsql)
295
+ qb.used_tool(oracle)
296
+ qb.used_tool(oracledesigner)
297
+ qb.used_tool(c)
298
+ qb.used_tool(shell)
299
+ qb.used_tool(unix)
300
+ qb.used_tool(windows)
301
+ qb.used_tool(awk)
302
+ qb.used_tool(python)
303
+ qb.used_tool(html)
304
+ qb.used_tool(oraclereports)
305
+ qb.used_tool(toad)
306
+
307
+ projectlist << qb
308
+
309
+ #===================================================================
310
+ signaal = Project.new("Signaal")
311
+ signaal.von(3,1997)
312
+ signaal.bis(10,1997)
313
+ signaal.branche="Milit�r"
314
+ signaal.beschreibung="Enwicklung eines 'Message-Handling-Systems' (Erstellen, Dekodieren, Bearbeiten und Weiterleiten von milit�rischen Meldungen) f�r Marine. C, X-Window und grafische Oberfl�che GRIT 4.0 (GFT) inklusive Datenbankanbindung an Oracle-Datenbank. Interproze�kommunikation. "
315
+ signaal.used_tool(c)
316
+ signaal.used_tool(oracle)
317
+ signaal.used_tool(unix)
318
+
319
+ projectlist << signaal
320
+
321
+ #===================================================================
322
+ tpf = Project.new("Ticker Plant Frankfurt")
323
+ tpf.von(10,1996)
324
+ tpf.bis(12,1996)
325
+ tpf.branche="B�rse"
326
+ tpf.beschreibung="Programmierung im Rahmen des Redesigns eines Kursdaten-Informationssystems der Deutsche B�rse AG ('Ticker Plant Frankfurt')"
327
+ tpf.used_tool(c)
328
+ tpf.used_tool(oracle)
329
+ tpf.used_tool(unix)
330
+
331
+ projectlist << tpf
332
+
333
+ #===================================================================
334
+ hp = Project.new("HP B�blingen")
335
+ hp.von(4,1996)
336
+ hp.bis(6,1996)
337
+ hp.branche="IT"
338
+ hp.beschreibung="Erweiterung eines internen Release-Management-Systems auf Basis von UNIX-Tools: Shell-Scripts, SCCS, ftp, Perl, inklusive Host-Anbindung"
339
+ hp.used_tool(perl)
340
+ hp.used_tool(shell)
341
+ hp.used_tool(unix)
342
+
343
+ projectlist << hp
344
+
345
+ #===================================================================
346
+ hochregal = Project.new("Hochregal")
347
+ hochregal.von(6,1995)
348
+ hochregal.bis(11,1995)
349
+ hochregal.branche="Automobil-Industrie"
350
+ hochregal.beschreibung="Realisierung und Erweiterung verschiedener Steuerungen f�r Hochregallager."
351
+ hochregal.used_tool(c)
352
+ hochregal.used_tool(unix)
353
+ hochregal.used_tool(oracle)
354
+
355
+ projectlist << hochregal
356
+
357
+ #===================================================================
358
+ dasa = Project.new("DASA")
359
+ dasa.von(3,1995)
360
+ dasa.bis(5,1995)
361
+ dasa.branche="Raumfahrt"
362
+ dasa.beschreibung="Design und Realisierung von Komponenten f�r Software-Verification-Facility f�r International-Space-Station-Alpha"
363
+ dasa.used_tool(ada)
364
+ dasa.used_tool(unix)
365
+ dasa.used_tool(oracle)
366
+
367
+ projectlist << dasa
368
+
369
+ #===================================================================
370
+ fiku = Project.new("fiku")
371
+ fiku.von(1,1994)
372
+ fiku.bis(9,1994)
373
+ fiku.branche="Banken"
374
+ fiku.beschreibung="Neuentwicklung eines Programmpakets f�r Banken zur Verwaltung von Firmenkunden unter OS/2 "
375
+ fiku.used_tool(cpp)
376
+ fiku.used_tool(os2)
377
+ fiku.used_tool(db2)
378
+
379
+ projectlist << fiku
380
+
381
+ #===================================================================
382
+ tms = Project.new("Toppan Moore Systems")
383
+ tms.von(10,1992)
384
+ tms.bis(12,1993)
385
+ tms.branche="Banken"
386
+ tms.beschreibung="Konzipierung und Neuentwicklung eines umfangreichen Systems f�r den elektronischen Zahlungsverkehr von Banken gegen�ber Kunden und Landeszentralbanken (ELS, DTA, SWIFT-Daten) unter Unix auf IBM RS/6000 und PC-Unix "
387
+ tms.used_tool(unix)
388
+ tms.used_tool(c)
389
+ tms.used_tool(dbase)
390
+
391
+ projectlist << tms
392
+
393
+ #===================================================================
394
+ schumann2 = Project.new("Schumann")
395
+ schumann2.von(6,1992)
396
+ schumann2.bis(11,1992)
397
+ schumann2.branche="Lebensmittel-Einzelhandel"
398
+ schumann2.beschreibung="Erweiterung eines Warenwirtschaftssystems um Funktionen, die die Verwaltung mehrerer Filialen auf einer h�heren Ebene und den Datenaustausch mit diesen, sowie einem zentralen Host-System erlauben (Versorgen von neuen Filialen mit Daten, Konsistenzpr�fung von Host- und Filialdaten, DF�-Abwicklung) auf Siemens MX-300i (SINIX) "
399
+ schumann2.used_tool(unix)
400
+ schumann2.used_tool(cobol)
401
+ schumann2.used_tool(informix)
402
+
403
+ projectlist << schumann2
404
+
405
+ #===================================================================
406
+ orbi = Project.new("Orbi-MX")
407
+ orbi.von(7,1989)
408
+ orbi.bis(6,1991)
409
+ orbi.branche="Volkshochschulen / Bildungseinrichtungen"
410
+ orbi.beschreibung="Erstellung eines Feinkonzeptes und Programmierung einer Softwarel�sung f�r Volkshochschulen und Bildungseinrichtungen unter SINIX"
411
+ orbi.used_tool(unix)
412
+ orbi.used_tool(cobol)
413
+ orbi.used_tool(cisam)
414
+
415
+ projectlist << orbi
416
+
417
+ #===================================================================
418
+ abk = Project.new("abk")
419
+ abk.von(1,1990)
420
+ abk.bis(6,1990)
421
+ abk.branche="Banken"
422
+ abk.beschreibung="Aufbau und Erweiterung eines Systems f�r den elekronischen Zahlungsverkehr zwischen Banken und Landeszentralbanken auf MX-300i (SINIX) "
423
+ abk.used_tool(unix)
424
+ abk.used_tool(cobol)
425
+ abk.used_tool(cisam)
426
+
427
+ projectlist << abk
428
+
429
+ #===================================================================
430
+ schumann = Project.new("Schumann 1")
431
+ schumann.von(7,1987)
432
+ schumann.bis(12,1989)
433
+ schumann.branche="Lebensmittel-Einzelhandel"
434
+ schumann.beschreibung="Pflege und Erweiterung eines umfangreichen Warenwirtschaftsystems f�r den Lebensmitteleinzelhandel inkl. Einbindung von Siemens-Datenkassen und DF�-Abwicklung mit der Zentrale auf Siemens MX-2/MX300/MX300i"
435
+ schumann.used_tool(unix)
436
+ schumann.used_tool(cobol)
437
+ schumann.used_tool(informix)
438
+ schumann.used_tool(shell)
439
+
440
+ projectlist << schumann
441
+
442
+ #===================================================================
443
+ aerzte = Project.new("Aerzte")
444
+ aerzte.von(7,1986)
445
+ aerzte.bis(6,1987)
446
+ aerzte.branche="Gesundheitswesen"
447
+ aerzte.beschreibung=" Pflege und Erweiterung eines Paketes f�r die Verwaltung von Arztpraxen (Patientenverwaltung, Statistiken, Rezepte, etc.) unter SINIX/UNIX"
448
+ aerzte.used_tool(unix)
449
+ aerzte.used_tool(windows)
450
+ aerzte.used_tool(cobol)
451
+ aerzte.used_tool(cisam)
452
+ aerzte.used_tool(shell)
453
+
454
+ projectlist << aerzte
455
+
456
+ #===================================================================
457
+ vhs = Project.new("Bildungseinrichtungen")
458
+ vhs.von(1,1986)
459
+ vhs.bis(8,1986)
460
+ vhs.branche="Bildungseinrichtungen"
461
+ vhs.beschreibung="Erweiterung und Anpassung einer Software-L�sung f�r Volkshochschulen und Bildungeinrichtungen unter AMBOSS (Siemens 6.620) sowie Neuimplementierung auf SINIX (MX-2)"
462
+ vhs.used_tool(amboss)
463
+ vhs.used_tool(unix)
464
+ vhs.used_tool(cobol)
465
+ vhs.used_tool(cisam)
466
+
467
+ projectlist << vhs
468
+
469
+ buffer = ""
470
+
471
+ def buffer.write(str)
472
+ self << str
473
+ end
474
+
475
+ # Ausgabe umlenken
476
+ $stdout = buffer #-> ">>>"
477
+
478
+ # pers�nliche Angaben
479
+
480
+ categories = {"Programmiersprachen" => [ada,php,c,cpp,cobol,python,ruby,abap,html,perl],
481
+ "Datenbanken" => [mysql,oracle,sybase,ctree,db2,dbase,informix,cisam],
482
+ "Betriebssysteme" => [amboss,linux,windows,os2,unix,sap],
483
+ "sonstige Tools" => [awk,sqlloader,plsql,css,cisam,oraclereports,oracledesigner,toad,shell],
484
+ }
485
+
486
+ # Testen, ob wir alle Tools in eine Kategorie aufgenommen haben
487
+ # und keines doppelt vorkommt
488
+ tools_in_categories?(categories)
489
+
490
+ thomas << categories
491
+
492
+ ### AUSGABE
493
+
494
+ #thomas.write(mode=:html,order=:newest_first,:mit_verfuegbarkeit)
495
+ thomas.write(mode=:html,order=:newest_first)
496
+
497
+ # Ausgabe zur�cksetzen
498
+ $stdout = STDOUT
499
+
500
+ # Hat der Buffer und die Vorlagedatei den gleichen Inhalt?
501
+ vergleich=""
502
+ f=File.new("vorlage_profil.html","r")
503
+ f.each { |line|
504
+ # puts line
505
+ vergleich<<line
506
+ }
507
+
508
+ if vergleich==buffer
509
+ puts "sind gleich"
510
+ else
511
+ puts "sind nicht gleich"
512
+ File.open("/tmp/123","w") {|bf|
513
+ bf.print(buffer)
514
+ }
515
+ puts `diff /tmp/123 vorlage_profil.html`
516
+ end
517
+ assert_equal(vergleich,buffer,"Buffer ist nicht gleich der Vorlagedatei vorlage_profil.html")
518
+ end
519
+
520
+ # das sollte eigentlich uch noch in eine Klasse
521
+ def tools_in_categories?(categories)
522
+ # Testen, ob wir alle Tools in eine Kategorie aufgenommen haben
523
+ ObjectSpace.each_object(Tool) {|tool|
524
+ found=false
525
+ categories.each {|cate|
526
+ if cate[1] != cate[1].uniq
527
+ raise "doppelter Eintrag in Kategorie"
528
+ end
529
+ cate[1].each {|t|
530
+ if t.name == tool.name
531
+ found = true
532
+ end
533
+ }
534
+ }
535
+ if !found
536
+ puts "Tool #{tool.name} ist keiner Kategorie zugeordnet"
537
+ raise RuntimeError
538
+ end
539
+ }
540
+ end
541
+
542
+ end
543
+