コード例 #1
0
def test_can_add_new_group(default_connection, group):
    inner_logic.add_group(default_connection, group.name, group.description,
                          group.vip_address, group.mysql_user,
                          group.mysql_pass, group.relp_user, group.relp_pass)

    assert inner_logic.get_added_group(group.name,
                                       default_connection).name == group.name
コード例 #2
0
def test_not_master_master_with_one_node(default_connection, group, node):
    inner_logic.add_group(default_connection, group.name, group.description,
                          group.vip_address, group.mysql_user,
                          group.mysql_pass, group.relp_user, group.relp_pass)
    inner_logic.add_node(default_connection, node.group, node.name, node.ip,
                         node.port, node.mode, node.status)
    assert not inner_logic.is_master_master(group.name, default_connection)
コード例 #3
0
def test_can_delete_added_group(default_connection, group):
    inner_logic.add_group(default_connection, group.name, group.description,
                          group.vip_address, group.mysql_user,
                          group.mysql_pass, group.relp_user, group.relp_pass)
    assert inner_logic.delete_group(default_connection, group.name)

    with pytest.raises(GroupNotFoundError):
        inner_logic.get_group(group.name, default_connection)
コード例 #4
0
def test_cannot_delete_group_with_nodes(default_connection, group, node):
    inner_logic.add_group(default_connection, group.name, group.description,
                          group.vip_address, group.mysql_user,
                          group.mysql_pass, group.relp_user, group.relp_pass)
    inner_logic.add_node(default_connection, node.group, node.name, node.ip,
                         node.port, node.mode, node.status)

    with pytest.raises(GroupWithNodesError):
        inner_logic.delete_group(default_connection, group.name)
コード例 #5
0
def test_cannot_add_added_group(default_connection, group):
    inner_logic.add_group(default_connection, group.name, group.description,
                          group.vip_address, group.mysql_user,
                          group.mysql_pass, group.relp_user, group.relp_pass)

    with pytest.raises(GroupAlreadyAddedError):
        inner_logic.add_group(default_connection, group.name,
                              group.description, group.vip_address,
                              group.mysql_user, group.mysql_pass,
                              group.relp_user, group.relp_pass)
コード例 #6
0
def test_can_delete_added_node(default_connection, node, group):
    inner_logic.add_group(default_connection, group.name, group.description,
                          group.vip_address, group.mysql_user,
                          group.mysql_pass, group.relp_user, group.relp_pass)

    inner_logic.add_node(default_connection, node.group, node.name, node.ip,
                         node.port, node.mode, node.status)
    inner_logic.delete_node(default_connection, node.group, node.ip)

    with pytest.raises(NodeNotFoundError):
        inner_logic.get_node(node.group, node.ip, default_connection)
コード例 #7
0
def test_cannot_add_added_node(default_connection, node, group):
    inner_logic.add_group(default_connection, group.name, group.description,
                          group.vip_address, group.mysql_user,
                          group.mysql_pass, group.relp_user, group.relp_pass)

    inner_logic.add_node(default_connection, node.group, node.name, node.ip,
                         node.port, node.mode, node.status)

    with pytest.raises(NodeAlreadyAddedError):
        inner_logic.add_node(default_connection, node.group, node.name,
                             node.ip, node.port, node.mode, node.status)
コード例 #8
0
def test_can_add_node(default_connection, node, group):
    inner_logic.add_group(default_connection, group.name, group.description,
                          group.vip_address, group.mysql_user,
                          group.mysql_pass, group.relp_user, group.relp_pass)

    inner_logic.add_node(default_connection, node.group, node.name, node.ip,
                         node.port, node.mode, node.status)

    added_node = inner_logic.get_node(node.group, node.ip, default_connection)
    assert added_node.group == node.group
    assert added_node.ip == node.ip
    assert added_node.name == node.name
コード例 #9
0
def test_not_master_master_with_more_than_two_nodes(default_connection, group,
                                                    node):
    inner_logic.add_group(default_connection, group.name, group.description,
                          group.vip_address, group.mysql_user,
                          group.mysql_pass, group.relp_user, group.relp_pass)
    inner_logic.add_node(default_connection, node.group, node.name, node.ip,
                         node.port, node.mode, node.status)
    inner_logic.add_node(default_connection, node.group, 'Fake-2', '127.0.0.2',
                         node.port, node.mode, node.status)
    inner_logic.add_node(default_connection, node.group, 'Fake-3', '127.0.0.3',
                         node.port, node.mode, node.status)

    is_master_master = inner_logic.is_master_master(group.name,
                                                    default_connection)
    assert inner_logic.delete_node(default_connection, node.group, '127.0.0.2')
    assert inner_logic.delete_node(default_connection, node.group, '127.0.0.3')
    assert not is_master_master
コード例 #10
0
ファイル: provider.py プロジェクト: globocom/dbaas-foxha
 def add_group(self, group_name, description, vip_address, mysql_user,
               mysql_password, repl_user, repl_password):
     LOG.info("Adding group: {}".format(group_name))
     return inner_logic.add_group(self.fox_connection, group_name,
                                  description, vip_address, mysql_user,
                                  mysql_password, repl_user, repl_password)