-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathtest_linked_pa_templates.py
More file actions
111 lines (92 loc) · 5.82 KB
/
Copy pathtest_linked_pa_templates.py
File metadata and controls
111 lines (92 loc) · 5.82 KB
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
import unittest
from fds.analyticsapi.engines.api.linked_pa_templates_api import LinkedPATemplatesApi
from fds.analyticsapi.engines.model.linked_pa_template_parameters_root import LinkedPATemplateParametersRoot
from fds.analyticsapi.engines.model.linked_pa_template_parameters import LinkedPATemplateParameters
from fds.analyticsapi.engines.model.template_content_types import TemplateContentTypes
from fds.analyticsapi.engines.model.linked_pa_template_summary import LinkedPATemplateSummary
from fds.analyticsapi.engines.model.linked_pa_template_post_summary import LinkedPATemplatePostSummary
from fds.analyticsapi.engines.model.linked_pa_template_update_parameters import LinkedPATemplateUpdateParameters
from fds.analyticsapi.engines.model.linked_pa_template_update_parameters_root import LinkedPATemplateUpdateParametersRoot
from fds.analyticsapi.engines.model.linked_pa_template_root import LinkedPATemplateRoot
from fds.analyticsapi.engines.model.linked_pa_template import LinkedPATemplate
from common_functions import CommonFunctions
class TestLinkedPaTemplatesApi(unittest.TestCase):
def setUp(self):
self.linked_pa_templates_api = LinkedPATemplatesApi(CommonFunctions.build_api_client())
def test_a_create_linked_pa_template(self):
linked_pa_template_parameters = LinkedPATemplateParameters(
directory="Personal:SDKTests/DoNotModify/LinkedPATemplates/",
parent_component_id="801B800245E468A52AEBEC4BE31CFF5AF82F371DAEF5F158AC2E98C2FA324B46",
description="This is a linked PA template that only returns security level data",
content = TemplateContentTypes(
mandatory = ["accounts", "benchmarks"],
optional = ["groups", "columns"],
locked = ["componentdetail"]
)
)
linked_pa_template_parameters_root = LinkedPATemplateParametersRoot(
data = linked_pa_template_parameters
)
response = self.linked_pa_templates_api.create_linked_pa_templates(
linked_pa_template_parameters_root = linked_pa_template_parameters_root)
firsttemplate = response[0].data['id']
self.assertEqual(response[1], 201, "Response should be 201 - Success")
self.assertEqual(type(response[0].data), LinkedPATemplatePostSummary, "Response should be of LinkedPATemplatePostSummary type.")
self.assertEqual(type(response[0].data['id']), str, "Response should be of String type.")
self.assertGreater(len(response[0].data['id']), 0, "Response result should not be an empty list.")
def test_b_get_all_linked_pa_templates(self):
response = self.linked_pa_templates_api.get_linked_pa_templates(
directory = "Personal:SDKTests/DoNotModify/LinkedPATemplates/"
)
firsttemplate = list(response[0].data.keys())[0]
self.assertEqual(response[1], 200, "Response should be 200 - Success")
self.assertEqual(type(response[0].data), dict, "Response should be of Dictionary type.")
self.assertEqual(type(response[0].data[firsttemplate]),
LinkedPATemplateSummary, "Response should be of LinkedPATemplateSummary type.")
self.assertGreater(len(response[0].data), 0, "Response result should not be an empty list.")
def test_c_update_linked_pa_template(self):
templates = self.linked_pa_templates_api.get_linked_pa_templates(
directory = "Personal:SDKTests/DoNotModify/LinkedPATemplates/"
)
template_id = list(templates[0].data.keys())[0]
linked_pa_template_update_parameters = LinkedPATemplateUpdateParameters(
parent_component_id="801B800245E468A52AEBEC4BE31CFF5AF82F371DAEF5F158AC2E98C2FA324B46",
description="This is an updated linked PA template that only returns security level data",
content = TemplateContentTypes(
mandatory = ["accounts", "benchmarks"],
optional = ["groups", "columns"],
locked = ["componentdetail"]
)
)
linked_pa_template_update_parameters_root = LinkedPATemplateUpdateParametersRoot(
data = linked_pa_template_update_parameters
)
response = self.linked_pa_templates_api.update_linked_pa_templates(
id = template_id, linked_pa_template_update_parameters_root=linked_pa_template_update_parameters_root
)
self.assertEqual(response[1], 200, "Response should be 200 - Success")
self.assertEqual(type(response[0].data), LinkedPATemplatePostSummary, "Response should be of LinkedPATemplatePostSummary type.")
self.assertGreater(len(response[0].data['id']), 0, "Response result should not be an empty list.")
def test_d_get_linked_pa_template_by_id(self):
templates = self.linked_pa_templates_api.get_linked_pa_templates(
directory = "Personal:SDKTests/DoNotModify/LinkedPATemplates/"
)
template_id = list(templates[0].data.keys())[0]
response = self.linked_pa_templates_api.get_linked_pa_templates_by_id(
id = template_id
)
self.assertEqual(response[1], 200, "Response should be 200 - Success")
self.assertEqual(type(response[0]), LinkedPATemplateRoot, "Response should be of LinkedPATemplateRoot type.")
self.assertEqual(type(response[0].data),
LinkedPATemplate, "Response should be of LinkedPATemplate type.")
def test_e_delete_linked_pa_template(self):
templates = self.linked_pa_templates_api.get_linked_pa_templates(
directory = "Personal:SDKTests/DoNotModify/LinkedPATemplates/"
)
template_id = list(templates[0].data.keys())[0]
response = self.linked_pa_templates_api.delete_linked_pa_templates(
id = template_id
)
self.assertEqual(response[1], 204, "Response should be 204 - Success")
if __name__ == '__main__':
unittest.main()