def test__get_binlog_info_parses_file(): mock_client = mock.Mock() mock_client.execute.return_value = ("mysql-bin.000002\t1054", None) rmt_sql = RemoteMySQLSource({ "run_type": INTERVALS[0], "backup_type": 'full', "mysql_connect_info": MySQLConnectInfo("/"), "ssh_connection_info": None }) rmt_sql._ssh_client = mock_client assert rmt_sql._get_binlog_info('foo') == ("mysql-bin.000002", 1054)
def test__get_binlog_info_parses_file(): mock_client = mock.Mock() mock_client.execute.return_value = ("mysql-bin.000002\t1054", None) rmt_sql = RemoteMySQLSource({ "run_type": INTERVALS[0], "backup_type": "full", "mysql_connect_info": MySQLConnectInfo("/"), "ssh_connection_info": None, }) rmt_sql._ssh_client = mock_client assert rmt_sql._get_binlog_info("foo") == ("mysql-bin.000002", 1054)
def test__clone(dest, port): arg = 'bash -c "sudo innobackupex --stream=xbstream ./ | gzip -c - | nc %s %d"' % ( dest, port) mock_client = mock.Mock() rmt_sql = RemoteMySQLSource({ "run_type": INTERVALS[0], "full_backup": INTERVALS[0], "mysql_connect_info": MySQLConnectInfo("/"), "ssh_connection_info": None }) rmt_sql._ssh_client = mock_client rmt_sql.clone(dest, port) mock_client.execute.assert_called_with(arg)
def test___mem_available(): mock_client = mock.Mock() mock_client.execute.return_value = ("100500", None) rmt_sql = RemoteMySQLSource({ "run_type": INTERVALS[0], "backup_type": 'full', "mysql_connect_info": MySQLConnectInfo("/"), "ssh_connection_info": None }) rmt_sql._ssh_client = mock_client assert rmt_sql._mem_available() == 100500 * 1024
def test___mem_available(): mock_client = mock.Mock() mock_client.execute.return_value = ("100500", None) rmt_sql = RemoteMySQLSource({ "run_type": INTERVALS[0], "backup_type": "full", "mysql_connect_info": MySQLConnectInfo("/"), "ssh_connection_info": None, }) rmt_sql._ssh_client = mock_client assert rmt_sql._mem_available() == 100500 * 1024
def test__mem_available_raise_exception(): mock_client = mock.Mock() mock_client.execute.return_value = ("", None) rmt_sql = RemoteMySQLSource({ "run_type": INTERVALS[0], "backup_type": 'full', "mysql_connect_info": MySQLConnectInfo("/"), "ssh_connection_info": None }) rmt_sql._ssh_client = mock_client with pytest.raises(OSError): rmt_sql._mem_available()
def test__mem_available_raise_exception(): mock_client = mock.Mock() mock_client.execute.return_value = ("", None) rmt_sql = RemoteMySQLSource({ "run_type": INTERVALS[0], "backup_type": "full", "mysql_connect_info": MySQLConnectInfo("/"), "ssh_connection_info": None, }) rmt_sql._ssh_client = mock_client with pytest.raises(OSError): rmt_sql._mem_available()