Ejemplo n.º 1
0
 def setUp(self):
     self.incorrect_credentials = ClientSettingsFactory().create(
         'database',
         username='******',
         password='******',
         host='not-host',
         port='not-port',
         database_name='not-db')
 def setUp(self):
     self.valid_value = "valid"
     self.test_credentials =\
         ClientSettingsFactory().create('cycle',
                                        username='******',
                                        password='******',
                                        host='',
                                        port='',
                                        uows_url='https://api.valid-uows.com/?wsdl',
                                        scheduler_url='https://api.valid-scheduler.com/?wsdl')
Ejemplo n.º 3
0
 def test_invalid_connection(self):
     """
     Test: A ValueError is raised
     When: connect is called while invalid credentials are held
     """
     invalid_settings = ClientSettingsFactory().create(
         'icat',
         username='******',
         password='******',
         host=r'www.fake-url.com',
         port='',
         authentication_type='none')
     self.assertRaises(ValueError, ICATClient, invalid_settings)
 def test_connection_failed_invalid_credentials(self):
     """
     Test: A ConnectionException is raised
     When: _test_connection is called while invalid credentials are held
     """
     incorrect_credentials = ClientSettingsFactory().create(
         'queue',
         username='******',
         password='******',
         host='not-host',
         port='1234')
     client = QueueClient(incorrect_credentials)
     with self.assertRaises(ConnectionException):
         client.connect()
Ejemplo n.º 5
0
CONFIG = configparser.ConfigParser()
INI_FILE = os.path.join(PROJECT_ROOT, 'utils', 'credentials.ini')
CONFIG.read(INI_FILE)


def get_setting(section: str, key: str) -> str:
    """
    Gets the value of the key from the section.
    """
    return str(
        CONFIG.get(section, key, raw=True)
    )  # raw=True to allow strings with special characters to be passed


SETTINGS_FACTORY = ClientSettingsFactory()

ICAT_SETTINGS = SETTINGS_FACTORY.create(
    'icat',
    username=get_setting('ICAT', 'user'),
    password=get_setting('ICAT', 'password'),
    host=get_setting('ICAT', 'host'),
    port='',
    authentication_type=get_setting('ICAT', 'auth'))

MYSQL_SETTINGS = SETTINGS_FACTORY.create(
    'database',
    username=get_setting('DATABASE', 'user'),
    password=get_setting('DATABASE', 'password'),
    host=get_setting('DATABASE', 'host'),
    port=get_setting('DATABASE', 'port'),
 def setUp(self):
     self.factory = ClientSettingsFactory()
class TestClientSettingsFactory(unittest.TestCase):
    def setUp(self):
        self.factory = ClientSettingsFactory()

    def test_create_database(self):
        actual = self.factory.create('database',
                                     username='******',
                                     password='******',
                                     host='test-host',
                                     port='test-port',
                                     database_name='test-name')
        self.assertIsInstance(actual, MySQLSettings)
        self.assertEqual(actual.username, 'test-user')
        self.assertEqual(actual.password, 'test-pass')
        self.assertEqual(actual.host, 'test-host')
        self.assertEqual(actual.port, 'test-port')
        self.assertEqual(actual.database, 'test-name')
        self.assertEqual(
            actual.get_full_connection_string(),
            'mysql+mysqldb://test-user:test-pass@test-host/test-name')

    def test_create_queue(self):
        actual = self.factory.create('queue',
                                     username='******',
                                     password='******',
                                     host='test-host',
                                     port='test-port',
                                     data_ready='test-dr')
        self.assertIsInstance(actual, ActiveMQSettings)
        self.assertEqual(actual.username, 'test-user')
        self.assertEqual(actual.password, 'test-pass')
        self.assertEqual(actual.host, 'test-host')
        self.assertEqual(actual.port, 'test-port')
        self.assertEqual(actual.data_ready, 'test-dr')

    def test_create_icat(self):
        actual = self.factory.create('icat',
                                     username='******',
                                     password='******',
                                     host='test-host',
                                     port='test-port',
                                     authentication_type='test-auth')
        self.assertIsInstance(actual, ICATSettings)
        self.assertEqual(actual.username, 'test-user')
        self.assertEqual(actual.password, 'test-pass')
        self.assertEqual(actual.host, 'test-host')
        self.assertEqual(actual.port, 'test-port')
        self.assertEqual(actual.auth, 'test-auth')

    def test_invalid_not_a_factory(self):
        self.assertRaisesRegex(
            ValueError, f"Factories creation settings type must be one of:"
            f"{','.join(self.factory.valid_types)}", self.factory.create,
            'not-factory', 'user', 'pass', 'host', 'port')

    def test_invalid_database_args(self):
        self.assertRaisesRegex(ValueError,
                               "database_invalid is not a recognised key "
                               "word argument.",
                               self.factory.create,
                               'database',
                               'user',
                               'pass',
                               'host',
                               'port',
                               database_invalid='invalid')

    def test_invalid_queue_args(self):
        self.assertRaisesRegex(
            ValueError,
            "queue_invalid is not a recognised key word argument.",
            self.factory.create,
            'queue',
            'user',
            'pass',
            'host',
            'port',
            queue_invalid='invalid')

    def test_invalid_icat_args(self):
        self.assertRaisesRegex(
            ValueError,
            "icat_invalid is not a recognised key word argument.",
            self.factory.create,
            'icat',
            'user',
            'pass',
            'host',
            'port',
            icat_invalid='invalid')
Ejemplo n.º 8
0
 def setUp(self):
     self.incorrect_credentials = ClientSettingsFactory().create('queue',
                                                                 username='******',
                                                                 password='******',
                                                                 host='not-host',
                                                                 port='1234')