2015-07-29 15:33:52 +00:00
|
|
|
import sys
|
2010-11-28 18:14:45 -02:00
|
|
|
from twisted.trial import unittest
|
|
|
|
from twisted.internet import defer
|
|
|
|
|
|
|
|
import scrapy
|
|
|
|
from scrapy.utils.testproc import ProcessTest
|
|
|
|
|
|
|
|
|
|
|
|
class VersionTest(ProcessTest, unittest.TestCase):
|
|
|
|
|
|
|
|
command = 'version'
|
|
|
|
|
|
|
|
@defer.inlineCallbacks
|
|
|
|
def test_output(self):
|
2015-07-29 15:33:52 +00:00
|
|
|
encoding = getattr(sys.stdout, 'encoding') or 'utf-8'
|
2010-11-28 18:14:45 -02:00
|
|
|
_, out, _ = yield self.execute([])
|
2015-08-13 19:30:06 -03:00
|
|
|
self.assertEqual(
|
|
|
|
out.strip().decode(encoding),
|
|
|
|
"Scrapy %s" % scrapy.__version__,
|
|
|
|
)
|
|
|
|
|
|
|
|
@defer.inlineCallbacks
|
|
|
|
def test_verbose_output(self):
|
|
|
|
encoding = getattr(sys.stdout, 'encoding') or 'utf-8'
|
|
|
|
_, out, _ = yield self.execute(['-v'])
|
|
|
|
headers = [l.partition(":")[0].strip()
|
|
|
|
for l in out.strip().decode(encoding).splitlines()]
|
|
|
|
self.assertEqual(headers, ['Scrapy', 'lxml', 'libxml2', 'Twisted',
|
|
|
|
'Python', 'pyOpenSSL', 'Platform'])
|