summaryrefslogtreecommitdiffstats
path: root/ipatests/test_ipapython/test_dnssec.py
blob: c4b830e7279001c8e73f1a53e02d613cc147bd27 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#
# Copyright (C) 2016  FreeIPA Contributors see COPYING for license
#
"""
Test the `ipapython/dnssec` package.
"""
import dns.name

from ipapython.dnssec.odsmgr import ODSZoneListReader


ZONELIST_XML = """<?xml version="1.0" encoding="UTF-8"?>
<ZoneList>
  <Zone name="ipa.example">
    <Policy>default</Policy>
    <Adapters>
      <Input>
        <Adapter type="File">/var/lib/ipa/dns/zone/entryUUID/12345</Adapter>
      </Input>
      <Output>
        <Adapter type="File">/var/lib/ipa/dns/zone/entryUUID/12345</Adapter>
      </Output>
    </Adapters>
  </Zone>
</ZoneList>
"""


def test_ods_zonelist_reader():
    uuid = '12345'
    name = dns.name.from_text('ipa.example.')

    reader = ODSZoneListReader("<ZoneList/>")
    assert reader.mapping == {}
    assert reader.names == set()
    assert reader.uuids == set()

    reader = ODSZoneListReader(ZONELIST_XML)
    assert reader.mapping == {uuid: name}
    assert reader.names == {name}
    assert reader.uuids == {uuid}