def test_noScriptsInSubproject(self): """ When calling getScripts for a project which doesn't actually have any scripts in the context of that project's individual project structure, an empty list should be returned. """ basedir = self.mktemp() os.mkdir(basedir) scripts = dist.getScripts('noscripts', basedir=basedir) self.assertEquals(scripts, [])
def test_noScriptsInSVN(self): """ When calling getScripts for a project which doesn't actually have any scripts, in the context of an SVN checkout, an empty list should be returned. """ basedir = self.mktemp() os.mkdir(basedir) os.mkdir(os.path.join(basedir, 'bin')) os.mkdir(os.path.join(basedir, 'bin', 'otherproj')) scripts = dist.getScripts('noscripts', basedir=basedir) self.assertEquals(scripts, [])
def test_scriptsInRelease(self): """ getScripts should return the scripts associated with a project in the context of a released subproject tarball. """ basedir = self.mktemp() os.mkdir(basedir) os.mkdir(os.path.join(basedir, 'bin')) f = open(os.path.join(basedir, 'bin', 'exy'), 'w') f.write('yay') f.close() scripts = dist.getScripts('proj', basedir=basedir) self.assertEquals(len(scripts), 1) self.assertEquals(os.path.basename(scripts[0]), 'exy')
def test_getScriptsTopLevel(self): """ Passing the empty string to getScripts returns scripts that are (only) in the top level bin directory. """ basedir = FilePath(self.mktemp()) basedir.createDirectory() bindir = basedir.child("bin") bindir.createDirectory() included = bindir.child("included") included.setContent("yay included") subdir = bindir.child("subdir") subdir.createDirectory() subdir.child("not-included").setContent("not included") scripts = dist.getScripts("", basedir=basedir.path) self.assertEquals(scripts, [included.path])
"Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python", "Topic :: Communications :: Chat", "Topic :: Communications :: Chat :: AOL Instant Messenger", "Topic :: Communications :: Chat :: ICQ", "Topic :: Communications :: Chat :: Internet Relay Chat", "Topic :: Internet", "Topic :: Software Development :: Libraries :: Python Modules", ]) else: extraMeta = {} dist.setup( twisted_subproject="words", scripts=dist.getScripts("words"), # metadata name="Twisted Words", description="Twisted Words contains Instant Messaging implementations.", author="Twisted Matrix Laboratories", author_email="*****@*****.**", maintainer="Jp Calderone", url="http://twistedmatrix.com/trac/wiki/TwistedWords", license="MIT", long_description="""\ Twisted Words contains implementations of many Instant Messaging protocols, including IRC, Jabber, MSN, OSCAR (AIM & ICQ), TOC (AOL), and some functionality for creating bots, inter-protocol gateways, and a client application for many of the protocols. In support of Jabber, Twisted Words also contains X-ish, a library for