Exemplo n.º 1
0
def test_convert_secondaries_to_dict():
    z = ns1_zone.NS1Zone()
    secondaries = [
        {
            "ip": "1.1.1.1",
            "port": 1,
            "networks": [0],
            "notify": True
        },
        {
            "ip": "2.2.2.2",
            "port": 2,
            "networks": [0],
            "notify": True
        },
    ]
    exp = {
        ("1.1.1.1", 1): {
            "ip": "1.1.1.1",
            "port": 1,
            "networks": [0],
            "notify": True,
        },
        ("2.2.2.2", 2): {
            "ip": "2.2.2.2",
            "port": 2,
            "networks": [0],
            "notify": True,
        },
    }
    assert z.convert_secondaries_to_dict(secondaries) == exp
Exemplo n.º 2
0
def test_diff_params(have, want, exp):
    FakeAnsibleModule.set_module_args({
        "apiKey": "testkey",
        "name": "test.zone"
    })
    z = ns1_zone.NS1Zone()
    assert z.diff_params(have, want) == exp
Exemplo n.º 3
0
def test_build_result(zone_data, changed, check_mode, exp_result, ns1_config):
    m = FakeAnsibleModule("test.zone")
    mock_zone = None
    if zone_data:
        mock_zone = ns1.zones.Zone(ns1_config, m.name)
        mock_zone.data = m.get_zone_data(**zone_data)
    z = ns1_zone.NS1Zone()
    z.module.check_mode = check_mode
    result = z.build_result(changed, mock_zone)
    assert result == exp_result
Exemplo n.º 4
0
def test_create(mock_zone_create, ns1_config):
    args = {"nx_ttl": 1}
    m = FakeAnsibleModule("test.zone")
    m.set_module_args(m.get_args(**args))

    z = ns1_zone.NS1Zone()
    z.create(args)

    mock_zone_create.assert_called_once_with("test.zone",
                                             **m.get_request_args(**args))
Exemplo n.º 5
0
def test_delete(mock_zone_delete, ns1_config):
    m = FakeAnsibleModule("test.zone")

    mock_zone = ns1.zones.Zone(ns1_config, m.name)
    mock_zone.data = m.get_zone_data()

    z = ns1_zone.NS1Zone()
    z.delete(mock_zone)

    mock_zone_delete.assert_called_once_with(**m.get_request_args())
Exemplo n.º 6
0
def test_update(mock_zone_update, ns1_config, zone_data, args):
    m = FakeAnsibleModule("test.zone")

    mock_zone = ns1.zones.Zone(ns1_config, m.name)
    mock_zone.data = m.get_zone_data(**zone_data)

    z = ns1_zone.NS1Zone()
    zone = z.update(mock_zone, args)
    mock_zone_update.assert_called_once_with(**m.get_request_args(**args))
    assert zone != mock_zone
Exemplo n.º 7
0
def test_present(mock_create, mock_update_on_change, mock_zone, exp_changed):
    mock_update_on_change.return_value = (exp_changed, mock_zone)
    z = ns1_zone.NS1Zone()
    changed, zone = z.present(mock_zone)
    assert changed == exp_changed
    assert zone is not None
    if mock_zone:
        mock_create.assert_not_called()
        mock_update_on_change.assert_called_once()
    else:
        mock_update_on_change.assert_not_called()
        mock_create.assert_called_once()
Exemplo n.º 8
0
def test_update_on_change(mock_update, mock_get_changed_params, diff,
                          exp_changed):
    mock_zone = Mock()
    mock_want = Mock()
    mock_get_changed_params.return_value = diff
    mock_update.return_value = diff
    z = ns1_zone.NS1Zone()
    changed, zone = z.update_on_change(mock_zone, mock_want)
    assert changed == exp_changed
    if exp_changed:
        assert zone != mock_zone
    else:
        assert zone == mock_zone
Exemplo n.º 9
0
def test_get_zone(mock_zone_load, ns1_config):
    zone_name = "test.zone"
    m = FakeAnsibleModule(zone_name)

    mock_zone = ns1.zones.Zone(ns1_config, m.name)
    mock_zone.data = m.get_zone_data()
    mock_zone_load.return_value(mock_zone)

    z = ns1_zone.NS1Zone()
    zone = z.get_zone(zone_name)

    mock_zone_load.assert_called_once()
    zone.data["zone"] = zone_name
Exemplo n.º 10
0
def test_check_mode(mock_zone_update, ns1_config, check_mode):
    m = FakeAnsibleModule("test.zone")

    mock_zone = ns1.zones.Zone(ns1_config, m.name)
    mock_zone.data = m.get_zone_data(nx_ttl=0)

    z = ns1_zone.NS1Zone()
    args = {"nx_ttl": 1}

    z.module.check_mode = check_mode
    zone = z.update(mock_zone, args)
    if check_mode:
        mock_zone_update.assert_not_called()
        assert zone is None
    else:
        mock_zone_update.assert_called_once_with(**m.get_request_args(**args))
        assert zone != mock_zone
Exemplo n.º 11
0
def test_get_changed_params(mock_diff_in_secondaries, mock_diff_params):
    z = ns1_zone.NS1Zone()

    # verify we perform compare on secondaries when diff contains secondaries
    # and secondaries is stripped if no diff
    mock_diff_params.return_value = {
        "primary": {
            "secondaries": [{
                "ip": "1.1.1.1"
            }]
        }
    }
    have = {"primary": {"secondaries": [{"ip": "1.1.1.1"}]}}
    want = {"primary": {"secondaries": [{"ip": "1.1.1.1"}]}}
    mock_diff_in_secondaries.return_value = False
    diff = z.get_changed_params(have, want)
    mock_diff_in_secondaries.assert_called_once()
    assert diff == {}
Exemplo n.º 12
0
def test_absent(mock_delete, mock_zone, exp_changed):
    z = ns1_zone.NS1Zone()
    changed = z.absent(mock_zone)
    assert changed == exp_changed
Exemplo n.º 13
0
def test_sanitize_params(module_args, exp_params):
    z = ns1_zone.NS1Zone()
    params = z.sanitize_params(module_args)
    assert params == exp_params
Exemplo n.º 14
0
def test_diff_in_secondaries(have, want, exp):
    z = ns1_zone.NS1Zone()
    assert z.diff_in_secondaries(have, want) == exp