def test_update_config_and_ini(self, section, option, value, expect_return):
     updated_config_ini_path = './tests/config/updated_config.ini'
     if os.path.exists(updated_config_ini_path):
         os.remove(updated_config_ini_path)
     config = Config(updated_config_ini_path)
     print(config.path)
     assert config.update_config_and_ini(section, option, value) is expect_return
Exemple #2
0
class ConfigTestCase(unittest.TestCase):

    def setUp(self):
        self.root_path = os.path.realpath(os.path.dirname(__file__))
        self.config = Config(self.root_path)

    def test_from_pyfile(self):
        self.config.from_pyfile('config_for_test.py')
        self.assertEqual(self.config['KEY'], 'VALUE')
        self.assertFalse(self.config.from_pyfile('no_file.py', True))
        self.assertRaises(IOError, self.config.from_pyfile, 'no_file.py')

    def test_from_object(self):
        self.config.from_object(__name__)
        self.assertEqual(self.config['TEST_KEY'], 'key-for-test')
        self.assertEqual(self.config['SECRET_KEY'], 'secret_key___')
 def test_wrong_schema(self):
     wrong_schema = {
         "type": True
     }
     try:
         Config(config_schema=wrong_schema)
     except SystemExit:
         assert True
     else:
         assert False
 def test_customize_config(self):
     customize_dict = {'multi': {'process_number': cpu_count(),
                                 'thread_number': cpu_count() if cpu_count() > 5 else 5,
                                 'delay': 2.0},
                       'customize': {'use': 1,
                                     'char': 'a'}
                       }
     customize_ini_path = './tests/config/customize_config.ini'
     default_config = Config(DEFAULT_INI_PATH)
     Config(path=customize_ini_path, config_dict=customize_dict)
     customize_config = Config(path=customize_ini_path, config_dict=customize_dict)
     customize_config.list_config()
     assert customize_config.ini['multi'] != default_config.ini['multi']
     assert customize_config.ini['proxy'] == default_config.ini['proxy']
     assert customize_config.ini['customize']['use'] == '1'
Exemple #5
0
 def setUp(self):
     self.root_path = os.path.realpath(os.path.dirname(__file__))
     self.config = Config(self.root_path)
from crawler.config import Config

config_dict = {'sample': {'value': 1}}
config_schema = {
    "type": "object",
    "properties": {
        "sample": {
            "type": "object",
            "properties": {
                "value": {
                    "type": "integer",
                    "minimum": 0,
                    "exclusiveMaximum": 10
                }
            }
        }
    }
}
if __name__ == "__main__":
    config = Config("config_sample.ini",
                    config_dict,
                    config_schema,
                    use_default_config=False)
    config.list_config()
    # value :  1
    print(config.get_config("sample", "value"))
    # 1
def main():
    cfg = Config()
    crawler = Crawler(cfg.TG_SESSION, cfg.API_ID, cfg.API_HASH, cfg.PROXY)
    loop = asyncio.get_event_loop()
    loop.run_until_complete(crawler.start_poll())
 def setup_method():
     if os.path.exists(CONFIG_DIR_PATH):
         rmtree(CONFIG_DIR_PATH)
     os.mkdir(CONFIG_DIR_PATH)
     Config.make_default_ini(DEFAULT_INI_PATH)
import asyncio
import logging
import sys

from crawler.api import create_app
from crawler.config import Config
from structlog import get_logger

config = Config()
logging.basicConfig(format="%(message)s",
                    stream=sys.stdout,
                    level=config.LOG_LEVEL.upper())
logger = get_logger()
logger.debug("config:", config=config)
loop = asyncio.get_event_loop()
app = create_app(config, loop)
Exemple #10
0
 def __init__(self, *config: Config):
     self.config = copy.deepcopy(
         config[0]) if len(config) == 1 else Config()
     self.chinese_support = False