A web scraper build to search specific information for a given compound (and its pseudonyms)
at develop 68 lines 2.9 kB view raw
1import unittest 2import ConfigParser 3 4from utils.configurator import Configurator 5 6 7class TestConfigurator(unittest.TestCase): 8 9 def setUp(self): 10 self.conf = Configurator() 11 12 def test_set_output(self): 13 self.conf.set_output(filename="test.txt", fileformat="csv", compound="test") 14 self.assertEqual(self.conf.scrapy_settings["FEED_URI"], "test.txt") 15 self.assertEqual(self.conf.scrapy_settings["FEED_FORMAT"], "csv") 16 17 self.conf.set_output("<compound>.*format*", "jsonlines", "test") 18 self.assertEqual(self.conf.scrapy_settings["FEED_URI"], "test.json") 19 self.assertEqual(self.conf.scrapy_settings["FEED_FORMAT"], "jsonlines") 20 21 self.conf.set_output("<compound>.*format*", "csv", "test") 22 self.assertEqual(self.conf.scrapy_settings["FEED_URI"], "test.csv") 23 self.assertEqual(self.conf.scrapy_settings["FEED_FORMAT"], "csv") 24 25 def test_start_log(self): 26 for i in range(0, 3): 27 self.conf.set_logging("TEST", i) 28 self.assertEqual(self.conf.scrapy_settings.get("LOG_FILE"), "TEST") 29 if i > 0: 30 self.assertEqual(self.conf.scrapy_settings.get("LOG_ENABLED"), True) 31 if i > 1: 32 self.assertEqual(self.conf.scrapy_settings.get("LOG_STDOUT"), False) 33 else: 34 self.assertEqual(self.conf.scrapy_settings.get("LOG_STDOUT"), True) 35 else: 36 self.assertEqual(self.conf.scrapy_settings.get("LOG_ENABLED"), False) 37 self.assertEqual(self.conf.scrapy_settings.get("LOG_STDOUT"), True) 38 if i == 1: 39 self.assertEqual(self.conf.scrapy_settings.get("LOG_LEVEL"), "WARNING") 40 elif i == 2: 41 self.assertEqual(self.conf.scrapy_settings.get("LOG_LEVEL"), "INFO") 42 elif i == 3: 43 self.assertEqual(self.conf.scrapy_settings.get("LOG_LEVEL"), "DEBUG") 44 45 self.conf.set_logging(verbose=i) 46 self.assertEqual(self.conf.scrapy_settings.get("LOG_FILE"), None) 47 48 def test_read_sourceconfiguration(self): 49 config = self.conf.read_sourceconfiguration() 50 self.assertIsInstance(config, ConfigParser.ConfigParser) 51 52 def test_get_section(self): 53 config = ConfigParser.ConfigParser() 54 section = self.conf.get_section(config, 'test') 55 self.assertIn('reliability', section) 56 self.assertEquals(section['reliability'], '') 57 58 config.set('DEFAULT', 'reliability', 'Low') 59 60 section = self.conf.get_section(config, 'test') 61 self.assertEquals(section['reliability'], 'Low') 62 63 config.add_section('test') 64 config.set('test', 'var', 'Maybe') 65 66 section = self.conf.get_section(config, 'test') 67 self.assertEquals(section['reliability'], 'Low') 68 self.assertEqual(section['var'], 'Maybe')