def test_not_exist_domain(self, fake_http): fake_http.get(f'{self.API_URL}/', status_code=404, json='') fake_http.head(f'{self.API_URL}/', headers={'X-Total-Count': str(len(self.domain))}) fake_http.post(f'{self.API_URL}/', json={ "name": "unit.tests", "create_date": 1507154178, "id": 100000 }) fake_http.get(f'{self.API_URL}/unit.tests/records/', json=list()) fake_http.head(f'{self.API_URL}/unit.tests/records/', headers={'X-Total-Count': str(len(self.api_record))}) fake_http.post(f'{self.API_URL}/100000/records/', json=list()) provider = SelectelProvider(123, 'test_token') zone = Zone('unit.tests.', []) for record in self.expected: zone.add_record(record) plan = provider.plan(zone) self.assertEquals(8, len(plan.changes)) self.assertEquals(8, provider.apply(plan))
def test_change_record(self, fake_http): exist_record = [ self.aaaa_record, { "content": "6.6.5.7", "ttl": 100, "type": "A", "id": 100001, "name": "delete.unit.tests" }, { "content": "9.8.2.1", "ttl": 100, "type": "A", "id": 100002, "name": "unit.tests" } ] # exist fake_http.get('{}/unit.tests/records/'.format(self.API_URL), json=exist_record) fake_http.get('{}/'.format(self.API_URL), json=self.domain) fake_http.get('{}/100000/records/'.format(self.API_URL), json=exist_record) fake_http.head('{}/unit.tests/records/'.format(self.API_URL), headers={'X-Total-Count': str(len(exist_record))}) fake_http.head('{}/'.format(self.API_URL), headers={'X-Total-Count': str(len(self.domain))}) fake_http.head('{}/100000/records/'.format(self.API_URL), headers={'X-Total-Count': str(len(exist_record))}) fake_http.post('{}/100000/records/'.format(self.API_URL), json=list()) fake_http.delete('{}/100000/records/100001'.format(self.API_URL), text="") fake_http.delete('{}/100000/records/100002'.format(self.API_URL), text="") provider = SelectelProvider(123, 'test_token') zone = Zone('unit.tests.', []) for record in self.expected: zone.add_record(record) plan = provider.plan(zone) self.assertEquals(8, len(plan.changes)) self.assertEquals(8, provider.apply(plan))
def test_apply(self, fake_http): fake_http.get(f'{self.API_URL}/unit.tests/records/', json=list()) fake_http.get(f'{self.API_URL}/', json=self.domain) fake_http.head(f'{self.API_URL}/unit.tests/records/', headers={'X-Total-Count': '0'}) fake_http.head(f'{self.API_URL}/', headers={'X-Total-Count': str(len(self.domain))}) fake_http.post(f'{self.API_URL}/100000/records/', json=list()) provider = SelectelProvider(123, 'test_token') zone = Zone('unit.tests.', []) for record in self.expected: zone.add_record(record) plan = provider.plan(zone) self.assertEquals(8, len(plan.changes)) self.assertEquals(8, provider.apply(plan))