1
2
3
4 import os
5 import StringIO
6
7 from twisted.trial import unittest
8
9 from moap.test import common
10
11 from moap.util import log
12
13 from moap.command import doap
14
17 self.doap = os.path.join(os.path.dirname(__file__), 'doap',
18 'mach.doap')
19 self.ical = os.path.join(os.path.dirname(__file__), 'ical',
20 'mach.ics')
21 self.grss = os.path.join(os.path.dirname(__file__), 'rss',
22 'mach.rss.genshi')
23 self.crss = os.path.join(os.path.dirname(__file__), 'rss',
24 'mach.rss.cheetah')
25 self.stdout = StringIO.StringIO()
26 self.command = doap.Doap(stdout=self.stdout)
27
29 ret = self.command.parse(['-f', self.doap, 'ical'])
30 ref = open(self.ical).read()
31 self.assertEquals(self.stdout.getvalue(), ref)
32
34 try:
35 import genshi
36 except ImportError:
37 raise unittest.SkipTest("No genshi module, skipping.")
38
39 ret = self.command.parse(['-f', self.doap, 'rss'])
40 ref = open(self.grss).read()
41 self.assertEquals(self.stdout.getvalue(), ref)
42
44 try:
45 import Cheetah
46 except ImportError:
47 raise unittest.SkipTest("No Cheetah module, skipping.")
48 ret = self.command.parse(['-f', self.doap, 'rss', '-t', 'cheetah'])
49 ref = open(self.crss).read()
50 self.assertEquals(self.stdout.getvalue(), ref)
51
53 ret = self.command.parse(['-f', self.doap, 'show'])
54 ref = u"""DOAP file: %s
55 project: Mach
56 short description: mach makes chroots
57 created: 2002-06-06
58 homepage: http://thomas.apestaart.org/projects/mach/
59 bug database: https://apestaart.org/thomas/trac/newticket
60 download page: http://thomas.apestaart.org/projects/mach/
61 Latest release: version 0.9.0 'Cambria' on branch 2.
62 """ % self.doap
63 self.assertEquals(self.stdout.getvalue(), ref)
64
66
68 self._cwd = os.getcwd()
69 doapdir = os.path.join(os.path.dirname(__file__), 'doap')
70 os.chdir(doapdir)
71 self.stdout = StringIO.StringIO()
72 self.command = doap.Doap(stdout=self.stdout)
73
75 doap = os.path.join(os.path.dirname(__file__), 'doap',
76 'mach.doap')
77 ret = self.command.parse(['show'])
78 ref = u"""DOAP file: %s
79 project: Mach
80 short description: mach makes chroots
81 created: 2002-06-06
82 homepage: http://thomas.apestaart.org/projects/mach/
83 bug database: https://apestaart.org/thomas/trac/newticket
84 download page: http://thomas.apestaart.org/projects/mach/
85 Latest release: version 0.9.0 'Cambria' on branch 2.
86 """ % doap
87 self.assertEquals(self.stdout.getvalue(), ref)
88
91
92 try:
93 import RDF
94 except ImportError:
95 TestDoapMach.skip = "No rdf module, skipping."
96 TestDoapUnspecified.skip = "No rdf module, skipping."
97