def get_projects_with_permisions(nr_projects, session): #Before running, there has to performance users in the DB. projects = get_projects(nr_projects, session) # print("AllProjects: " + str(projects)) projects_with_perm = [] for project in projects: projectKey = project['key'] diagrams_response = session.get( "/rest/api/2/user/permission/search?permissions=ASSIGN_ISSUE&projectKey=" + projectKey + "&username=per", auth=('admin', 'admin')) # print(str(diagrams_response.json())) #for local test with user ADMIN if ((len(diagrams_response.json())) == 0): diagrams_response = session.get( "/rest/api/2/user/permission/search?permissions=ASSIGN_ISSUE&projectKey=" + projectKey + "&username=admin", auth=('admin', 'admin')) if (len(diagrams_response.json())) > 0: projectId = project['id'] projects_with_perm.append(project) if (len(projects_with_perm) >= nr_projects): break print("PROJECTS WITH PERM:" + str(len(projects_with_perm))) return projects_with_perm
def test_create_issue_links(self, base_url, nr_projects, session): # get all projects projStartAt = 0 respProj = session.get('/rest/api/latest/project', auth=('admin', 'admin')) print("GGGG") projects = get_projects_with_permisions(nr_projects, session) print(projects) print("GGGG") create_filter_if_missing(projects, session) issueLinkTypeId = get_link_type(session) assert respProj.status_code == 200 projects = respProj.json() print("NR of projects: " + str(nr_projects)) if len(projects) > nr_projects: projects = x = islice(projects, 0, nr_projects) for project in projects: project_key = project['key'] # collect keys of all issues in this project into issue_ids link_percentage = 30 issue_ids = [] startAt = 0 while True: resp = session.get( f'/rest/api/latest/search?maxResults=100&startAt={startAt}&jql=project={project_key}&fields=key', auth=('admin', 'admin')) assert resp.status_code == 200 result = resp.json() # print(f"if {startAt} >= {result['total']}") if startAt >= result['total'] or not ('issues' in result): break issue_ids.extend( list(map(lambda issue: issue['id'], result['issues']))) startAt = len(issue_ids) if len(issue_ids) == 0: break # generate link_percentage random issue pairs out of issue_ids # all pairs are in increasing order, to avoid link cycles pair_count = min( len(issue_ids) * link_percentage / 100, binom( len(issue_ids), 2)) # limit wanted number of links by theoretical maximum pairs = set( ) # set of tuples, as tuples can be added to a set, but not lists while len(pairs) < pair_count: pair = tuple(sorted(random.sample(issue_ids, 2))) if pair not in pairs: pairs.add(pair) for pair in pairs: print(pair) self.create_link(session, issueLinkTypeId, pair[0], pair[1]) print("end")
def test_change_color_mapping(self, session): HOSTNAME = os.environ.get('application_hostname') # Get user diagrams_response = session.get('http://' + HOSTNAME + ':8080/rest/dependency-map/1.0/user') assert diagrams_response.status_code == 200 userKey = diagrams_response.json()["key"] print("User key: " + userKey) # Create diagram payload ={ 'name':"D100", 'author':userKey, 'lastEditedBy':userKey, 'layoutId':0, 'filterKey': 10000, 'boxColorFieldKey': "priority", 'groupedLayoutFieldKey': "priority", 'matrixLayoutHorizontalFieldKey': 'fixVersions', 'matrixLayoutVerticalFieldKey': 'fixVersions'} diagrams_response = session.post('http://' + HOSTNAME + ':8080/rest/dependency-map/1.0/diagram', json=payload) assert diagrams_response.status_code == 200 newDiagram = diagrams_response.json() diagramId = str(newDiagram["id"]) print('diagramid=' +diagramId) # Get all priorities diagrams_response = session.get('http://' + HOSTNAME + ':8080/rest/dependency-map/1.0/fieldOption/priority') assert diagrams_response.status_code == 200 priorityItem = diagrams_response.json()[4] priorityItemId = str(priorityItem['id']) print('priorityItemId=' + priorityItemId) #Get colore palete entry for diagram for field=priority option=5 diagrams_response = session.get('http://' + HOSTNAME + ':8080/rest/dependency-map/1.0/boxColor?diagramId=' + diagramId + '&fieldId=priority&fieldOptionId=' + priorityItemId) assert diagrams_response.status_code == 200 value = diagrams_response.text if not value: print( "No response value") else: print( diagrams_response.json() ) #create box coloure resource entry payload = {"diagramId":diagramId,"fieldId":"priority","fieldOptionId":priorityItemId,"colorPaletteEntryId":4} diagrams_response = session.post('http://' + HOSTNAME + ':8080/rest/dependency-map/1.0/boxColor', json=payload) assert diagrams_response.status_code == 200 print( diagrams_response.json() ) boxColorResource = diagrams_response.json()['id'] #update box coloure resource entry, created if not exists. payload = {"id":boxColorResource,"diagramId":diagramId,"fieldId":"priority","fieldOptionId":priorityItemId,"colorPaletteEntryId":5} diagrams_response = session.put('http://' + HOSTNAME + ':8080/rest/dependency-map/1.0/boxColor', json=payload) assert diagrams_response.status_code == 200 print( diagrams_response.json() )
def test_get_filter(self, session): # request list of diagrams using the session id HOSTNAME = os.environ.get('application_hostname') diagrams_response = session.get('http://' + HOSTNAME + ':8080/rest/dependency-map/1.0/filter?searchTerm=&page=0&resultsPerPage=25') filters = diagrams_response.json()["filters"] assert diagrams_response.status_code == 200 print( filters)
def change_color_mapping(session, diagramId): HOSTNAME = os.environ.get('application_hostname') # Get all priorities diagrams_response = session.get( '/rest/dependency-map/1.0/fieldOption/status') assert diagrams_response.status_code == 200 nrOfFieldOptions = len(diagrams_response.json()) fieldIemList = diagrams_response.json() #Nr of field options print(nrOfFieldOptions) #We do not need to create boxColor entries for over 300 colors. fieldIemList5 = itertools.islice(fieldIemList, 5) for field in fieldIemList5: fieldOptionId = field["id"] colorPaletteEntryId = random.randint(0, 19) #create box coloure resource entry payload = { "diagramId": diagramId, "fieldId": "status", "fieldOptionId": fieldOptionId, "colorPaletteEntryId": colorPaletteEntryId } diagrams_response = session.post('/rest/dependency-map/1.0/boxColor', json=payload) assert diagrams_response.status_code == 200 print(diagrams_response.json())
def test_login(self, session): # request list of diagrams using the session id HOSTNAME = os.environ.get('application_hostname') diagrams_response = session.get( 'http://' + HOSTNAME + ':8080/rest/dependency-map/1.0/diagram?searchTerm=&startAt=0&maxResults=50' ) assert diagrams_response.status_code == 200 assert diagrams_response.json()["total"] >= 0
def create_link(self, session, issueLinkTypeId, from_issue_id, to_issue_id): #before diagrams_response = session.get('/rest/api/2/issue/' + from_issue_id) before_issue_links = diagrams_response.json()['fields']['issuelinks'] before_size = len(before_issue_links) payload = { 'type': { 'id': issueLinkTypeId }, #blocks? 'inwardIssue': { 'id': to_issue_id }, 'outwardIssue': { 'id': from_issue_id } } diagrams_response = session.post('/rest/api/2/issueLink', json=payload) print(f"created link from issue {from_issue_id} to {to_issue_id} ") #JIRA Get new issue links id diagrams_response = session.get('/rest/api/2/issue/' + from_issue_id) issueLinks = diagrams_response.json()['fields']['issuelinks'] #print(issueLinks) if (len(issueLinks) > before_size): issueLinksId = 0 for issueLink in issueLinks: if 'inwardIssue' in issueLink and issueLink['inwardIssue']: if issueLink['inwardIssue']['id'] == to_issue_id: issueLinksId = issueLink['id'] #issueLinksId = issueLinks[-1]['id'] print("New issue Links Id=" + issueLinksId) if issueLinksId != 0: try: with open(out_file_path, "a") as f: issueLink_delete_request = '/rest/api/latest/issueLink/' + issueLinksId f.write(issueLink_delete_request) f.write("\n") f.close() except IOError: print("File not accessible delete...")
def get_filter(projectId, session): page = 0 exit = 0 filterKey = "" print("PROJECT" + str(projectId)) while True: result_response = session.get( '/rest/dependency-map/1.0/filter?searchTerm=&page=' + str(page) + '&resultsPerPage=50', auth=('admin', 'admin')) assert result_response.status_code == 200 filter_response = result_response.json()["filters"] # print ("all filters json: " + str(filter_response)) page = page + 1 if len(filter_response) == 0: break for filter in filter_response: filter_id = str(filter['filterKey']) # print("filter['filterKey']" +filter_id) permission_response = session.get('/rest/api/2/filter/' + filter_id + '/permission', auth=('admin', 'admin')) # print ("for filter: " + str(permission_response.json())) for sharePer in permission_response.json(): # print("Permission: " + str(sharePer)) # print(sharePer['type']=='project') # print (sharePer['project']['id'] == projectId ) # print("F2 SharePer['project']['id']" + sharePer['project']['id']) # print("F2 projectId" + projectId) if sharePer['type'] == 'project' and sharePer['project'][ 'id'] == projectId: filterKey = filter_id exit = 1 break if exit == 1: break if exit == 1: break return filterKey
def get_link_type(session): #JIRA Get list of available link types issueLinkTypeId = 0 diagrams_response = session.get('/rest/api/2/issueLinkType', auth=('admin', 'admin')) issueLinkTypes = diagrams_response.json()['issueLinkTypes'] for linkType in issueLinkTypes: print(linkType) if linkType["name"] == "Blocks": issueLinkTypeId = linkType["id"] break print(issueLinkTypeId) return issueLinkTypeId
def get_link_type(session): #JIRA Get list of available link types HOSTNAME = os.environ.get('application_hostname') issueLinkTypeId = 0 diagrams_response = session.get('/rest/api/2/issueLinkType') issueLinkTypes = diagrams_response.json()['issueLinkTypes'] for linkType in issueLinkTypes: print_in_shell(linkType) if linkType["name"] == "Blocks": issueLinkTypeId = linkType["id"] break print_in_shell(issueLinkTypeId) return issueLinkTypeId
def test_copy_diagram(self, base_url, session): HOSTNAME = os.environ.get('application_hostname') #Get filterKey randomly among the project in the project file filterKey= getRandomFilter(session) diagrams_response = session.get('/rest/dependency-map/1.0/diagram?filterKey=' + filterKey + '&searchTerm=&sortBy=name&reverseSort=&startAt=0&maxResults=50') assert diagrams_response.status_code == 200 result = diagrams_response.json()['values'] if len(result)>0: diagramId=result[0]['id'] #create a copy of the diagram diagrams_response = session.post('/rest/dependency-map/1.0/diagram/duplicate/' + str(diagramId) ) assert diagrams_response.status_code == 200 diagramId = diagrams_response.json()['diagram']['id'] saveRemoveDiagramCmd(diagramId)
def create_data(session): # Get user diagrams_response = session.get('/rest/dependency-map/1.0/user') assert diagrams_response.status_code == 200 userKey = diagrams_response.json()["key"] print_in_shell("User key: " + userKey) # Get filter key diagrams_response = session.get( '/rest/dependency-map/1.0/filter?searchTerm=&page=0&resultsPerPage=25') assert diagrams_response.status_code == 200 # Get field priority diagrams_response = session.get('/rest/dependency-map/1.0/field/priority') assert diagrams_response.status_code == 200 field = diagrams_response.json()["id"] # Get field status diagrams_response = session.get('/rest/dependency-map/1.0/field/status') assert diagrams_response.status_code == 200 field2 = diagrams_response.json()["id"] # Get field fix version diagrams_response = session.get( '/rest/dependency-map/1.0/field/fixVersions') assert diagrams_response.status_code == 200 field3 = diagrams_response.json()["id"] # Get project and filter id from the list of projects we shall use, saved in a file projectId = getRandomProjectId() filterId = getFilterId(projectId) # Create diagram payload = { 'name': "F100", 'author': userKey, 'lastEditedBy': userKey, 'layoutId': 2, 'filterKey': filterId, 'boxColorFieldKey': field, 'groupedLayoutFieldKey': field2, 'matrixLayoutHorizontalFieldKey': field2, 'matrixLayoutVerticalFieldKey': field3 } diagrams_response = session.post('/rest/dependency-map/1.0/diagram', json=payload) assert diagrams_response.status_code == 200 diagramId = diagrams_response.json()['id'] diagramIdStr = str(diagramId) print_in_shell("Nytt diagram med id=" + diagramIdStr) saveRemoveDiagramCmd(diagramIdStr) ############################################################## # Add to favorit ############################################################## #Get favoritDiagram diagrams_response = session.get('/rest/dependency-map/1.0/favoriteDiagram') assert diagrams_response.status_code == 200 favoritDiagrams = diagrams_response.json() #add to favorits favoritDiagrams.insert(0, diagramId) payload = favoritDiagrams diagrams_response = session.post( '/rest/dependency-map/1.0/favoriteDiagram') #Get favoritDiagram diagrams_response = session.get('/rest/dependency-map/1.0/favoriteDiagram') assert diagrams_response.status_code == 200 favoritDiagrams = diagrams_response.json() #update box colore resource entry, created if not exists. payload = { "diagramId": diagramId, "fieldId": "status", "fieldOptionId": 1, "colorPaletteEntryId": 5 } diagrams_response = session.post('/rest/dependency-map/1.0/boxColor', json=payload) assert diagrams_response.status_code == 200 #print_in_shell( diagrams_response.json() ) ####################################################### # Creae linkConfig ####################################################### #Get color palet entrie diagrams_response = session.get( '/rest/dependency-map/1.0/colorPaletteEntry?paletteId=' + '1') assert diagrams_response.status_code == 200 print(diagrams_response.json()) colorPaletteEntryId = diagrams_response.json()[14]["id"] colorPaletteEntryId2 = diagrams_response.json()[10]["id"] colorPaletteEntryId3 = diagrams_response.json()[12]["id"] diagrams_response = session.get('/rest/api/2/issueLinkType') issueLinkTypeIdStr = diagrams_response.json()['issueLinkTypes'][0]['id'] issueLinkTypeId = int(issueLinkTypeIdStr) issueLinkTypeId2Str = diagrams_response.json()['issueLinkTypes'][1]['id'] issueLinkTypeId2 = int(issueLinkTypeId2Str) issueLinkTypeId3Str = diagrams_response.json()['issueLinkTypes'][2]['id'] issueLinkTypeId3 = int(issueLinkTypeId3Str) payload = { 'diagramId': diagramId, 'linkKey': issueLinkTypeId, 'visible': True, 'dashType': 0, 'width': 0, 'colorPaletteEntryId': colorPaletteEntryId } diagrams_response = session.post( '/rest/dependency-map/1.0/linkConfig?diagramId=' + diagramIdStr, json=payload) assert (diagrams_response.status_code == 200) payload = { 'diagramId': diagramId, 'linkKey': issueLinkTypeId2, 'visible': True, 'dashType': 0, 'width': 0, 'colorPaletteEntryId': colorPaletteEntryId2 } diagrams_response = session.post( '/rest/dependency-map/1.0/linkConfig?diagramId=' + diagramIdStr, json=payload) assert (diagrams_response.status_code == 200) payload = { 'diagramId': diagramId, 'linkKey': issueLinkTypeId3, 'visible': True, 'dashType': 0, 'width': 0, 'colorPaletteEntryId': colorPaletteEntryId3 } diagrams_response = session.post( '/rest/dependency-map/1.0/linkConfig?diagramId=' + diagramIdStr, json=payload) assert (diagrams_response.status_code == 200) yield { 'diagramId': diagramId, 'projectId': projectId, 'filterId': filterId } diagrams_response2 = session.delete('/rest/dependency-map/1.0/diagram/' + diagramIdStr) assert diagrams_response2.status_code == 200 print_in_shell("Deleted diagram id=" + diagramIdStr) return { 'diagramId': diagramId, 'projectId': projectId, 'filerId': filterId }
def test_create_issue_link_flow_ci(self, base_url, session, create_data): projectId = create_data['projectId'] filterIdStr = create_data['filterId'] # print_in_shell("projectId=" + projectId ) #JIRA Get list of available issues # Get filter diagrams_response = session.get('/rest/api/2/filter/' + filterIdStr) assert diagrams_response.status_code == 200 searchUrl = diagrams_response.json()['searchUrl'] #remove everytning before '/rest/api/2/search' startPos = searchUrl.find("/rest/api/2/search?") endPos = len(searchUrl) shortSearchUrl = searchUrl[startPos:endPos] diagrams_response = session.get( shortSearchUrl + "&fields=priority,status,fixVersions,assignee,duedate,summary,issuelinks&startAt=0&maxResults=50" ) assert diagrams_response.status_code == 200 if len(diagrams_response.json()['issues']) >= 3: assert diagrams_response.status_code == 200 to_issue_id = diagrams_response.json()['issues'][0]['id'] to_issue_Key = diagrams_response.json()['issues'][0]['key'] from_issue_id = diagrams_response.json()['issues'][2]['id'] from_issue_Key = diagrams_response.json()['issues'][2]['key'] #JIRA Get list of available link types issueLinkTypeId = get_link_type(session) #before diagrams_response = session.get('/rest/api/2/issue/' + from_issue_id) before_issue_links = diagrams_response.json( )['fields']['issuelinks'] before_size = len(before_issue_links) #JIRA create link # payload = { 'type': { 'id': issueLinkTypeId }, 'inwardIssue': { 'id': to_issue_id }, 'outwardIssue': { 'id': from_issue_id } } diagrams_response = session.post('/rest/api/2/issueLink', json=payload) assert diagrams_response.status_code == 201 #after# diagrams_response = session.get('/rest/api/2/issue/' + from_issue_id) issue_links = diagrams_response.json()['fields']['issuelinks'] if (len(issue_links) > before_size): issueLinksId = 0 for issueLink in issue_links: if 'inwardIssue' in issueLink and issueLink['inwardIssue']: if issueLink['inwardIssue']['id'] == to_issue_id: issueLinksId = issueLink['id'] #issueLinksId = issueLinks[-1]['id'] if issueLinksId != 0: try: saveRemoveIssueLinkCmd(issueLinksId) except IOError: print_in_shell("File not accessible")
def test_delete_diagram(self, base_url, session): # Prepare # request list of diagrams using the session id HOSTNAME = os.environ.get('application_hostname') ##CREATE DIAGRAM # Get user diagrams_response = session.get('/rest/dependency-map/1.0/user') assert diagrams_response.status_code == 200 userKey = diagrams_response.json()["key"] # Get filter key diagrams_response = session.get( '/rest/dependency-map/1.0/filter?searchTerm=&page=0&resultsPerPage=25' ) assert diagrams_response.status_code == 200 # Get field status diagrams_response = session.get( '/rest/dependency-map/1.0/field/status') assert diagrams_response.status_code == 200 field = diagrams_response.json()["id"] # Get field priority diagrams_response = session.get( '/rest/dependency-map/1.0/field/priority') assert diagrams_response.status_code == 200 field2 = diagrams_response.json()["id"] #Get filterKey randomly among the project in the project file filterKey = getRandomFilter(session) # Create diagram payload = { 'name': "F100", 'author': userKey, 'lastEditedBy': userKey, 'layoutId': 2, 'filterKey': filterKey, 'boxColorFieldKey': field, 'groupedLayoutFieldKey': field, 'matrixLayoutHorizontalFieldKey': field, 'matrixLayoutVerticalFieldKey': field2 } diagrams_response = session.post('/rest/dependency-map/1.0/diagram', json=payload) assert diagrams_response.status_code == 200 diagramId = diagrams_response.json()['id'] print("Hej") ##FIND DIAGRAM # To make it thread save need to create the diagram before removing # Get user diagrams_response = session.get('/rest/dependency-map/1.0/user') assert diagrams_response.status_code == 200 userKey = diagrams_response.json()["key"] # Get filter key diagrams_response = session.get( '/rest/dependency-map/1.0/filter?searchTerm=&page=0&resultsPerPage=25' ) assert diagrams_response.status_code == 200 #Get favoritDiagram diagrams_response = session.get( '/rest/dependency-map/1.0/favoriteDiagram') assert diagrams_response.status_code == 200 #Get diagrams with filterKey diagrams_response = session.get( '/rest/dependency-map/1.0/diagram?filterKey=' + filterKey + '&searchTerm=&sortBy=name&reverseSort=&startAt=0&maxResults=50') assert diagrams_response.status_code == 200 # #Get filter diagrams_response = session.get('/rest/api/2/filter/' + filterKey) assert diagrams_response.status_code == 200 #Get diagram diagrams_response = session.get('/rest/dependency-map/1.0/diagram/' + str(diagramId)) assert diagrams_response.status_code == 200 ##REMOVE #remove diagrams_response2 = session.delete( '/rest/dependency-map/1.0/diagram/' + str(diagramId)) assert diagrams_response2.status_code == 200 print_in_shell("Diagram removed" + str(diagramId)) #print_in_shell( diagrams_response.json() ); #get all diagrams after delete diagrams_response = session.get( '/rest/dependency-map/1.0/diagram?filterKey=' + filterKey + '&searchTerm=&sortBy=name&reverseSort=&startAt=0&maxResults=50') assert diagrams_response.status_code == 200
def test_create_change_link(self, session): HOSTNAME = os.environ.get('application_hostname') # Get user diagrams_response = session.get('http://' + HOSTNAME + ':8080/rest/dependency-map/1.0/user') assert diagrams_response.status_code == 200 userKey = diagrams_response.json()["key"] print("User key: " + userKey) # Create diagram payload = { 'name': "D100", 'author': userKey, 'lastEditedBy': userKey, 'layoutId': 0, 'filterKey': 10000, 'boxColorFieldKey': "priority", 'groupedLayoutFieldKey': "priority", 'matrixLayoutHorizontalFieldKey': 'fixVersions', 'matrixLayoutVerticalFieldKey': 'fixVersions' } diagrams_response = session.post( 'http://' + HOSTNAME + ':8080/rest/dependency-map/1.0/diagram', json=payload) newDiagram = diagrams_response.json() diagramId = str(newDiagram["id"]) print("New diagram id: " + diagramId) # Get all link configs diagrams_response = session.get( 'http://' + HOSTNAME + ':8080/rest/dependency-map/1.0/linkConfig?diagramId=' + diagramId) print(diagrams_response.json()) # Create linkConfig payload = { 'diagramId': diagramId, 'linkKey': 10000, 'visible': True, 'dashType': 0, 'width': 0, 'colorPaletteEntryId': 20 } diagrams_response = session.post( 'http://' + HOSTNAME + ':8080/rest/dependency-map/1.0/linkConfig?diagramId=' + diagramId, json=payload) newLinkConfig = diagrams_response.json() linkConfigId = str(newLinkConfig["id"]) print(linkConfigId) assert (diagrams_response.status_code == 200) # Get all link configs diagrams_response = session.get( 'http://' + HOSTNAME + ':8080/rest/dependency-map/1.0/linkConfig?diagramId=' + diagramId) print(diagrams_response.json())
def test_create_change_link(self, base_url, session): # Get project and filter id from the list of projects we shall use, saved in a file projectId = getRandomProjectId() filterId = getFilterId(projectId) # Get user diagrams_response = session.get('/rest/dependency-map/1.0/user') assert diagrams_response.status_code == 200 userKey = diagrams_response.json()["key"] print_in_shell("User key: " + userKey) # Create diagram payload = { 'name': "E100", 'author': userKey, 'lastEditedBy': userKey, 'layoutId': 0, 'filterKey': filterId, 'boxColorFieldKey': "priority", 'groupedLayoutFieldKey': "priority", 'matrixLayoutHorizontalFieldKey': 'fixVersions', 'matrixLayoutVerticalFieldKey': 'fixVersions' } diagrams_response = session.post('/rest/dependency-map/1.0/diagram', json=payload) newDiagram = diagrams_response.json() diagramId = str(newDiagram["id"]) saveRemoveDiagramCmd(diagramId) issueLinkTypeId = get_link_type(session) print(issueLinkTypeId) # Get all link configs #diagrams_response = session.get('/rest/dependency-map/1.0/linkConfig?diagramId=' + diagramId) #print_in_shell("all link configs") #print_in_shell( diagrams_response.json() ) # Create linkConfig payload = { 'diagramId': diagramId, 'linkKey': issueLinkTypeId, 'visible': True, 'dashType': 0, 'width': 0, 'colorPaletteEntryId': 20 } diagrams_response = session.post( '/rest/dependency-map/1.0/linkConfig?diagramId=' + diagramId, json=payload) newLinkConfig = diagrams_response.json() linkConfigId = str(newLinkConfig["id"]) print_in_shell(linkConfigId) assert (diagrams_response.status_code == 200) # Update linkConfig payload = { 'id': linkConfigId, 'diagramId': diagramId, 'linkKey': issueLinkTypeId, 'visible': True, 'dashType': 1, 'width': 2, 'colorPaletteEntryId': 39 } diagrams_response = session.put( '/rest/dependency-map/1.0/linkConfig?diagramId=' + diagramId, json=payload) assert (diagrams_response.status_code == 200) # Get all link configs diagrams_response = session.get( '/rest/dependency-map/1.0/linkConfig?diagramId=' + diagramId) print_in_shell(diagrams_response.json())
def create_diagram(filterKey, session): # Get filter key HOSTNAME = os.environ.get('application_hostname') # Get user diagrams_response = session.get('/rest/dependency-map/1.0/user') assert diagrams_response.status_code == 200 userKey = diagrams_response.json()["key"] print("User key: " + userKey) # Get field priority diagrams_response = session.get('/rest/dependency-map/1.0/field/priority') assert diagrams_response.status_code == 200 field = diagrams_response.json()["id"] print(field) # Get field status diagrams_response = session.get('/rest/dependency-map/1.0/field/status') assert diagrams_response.status_code == 200 field2 = diagrams_response.json()["id"] print(field2) # Get field fix version diagrams_response = session.get( '/rest/dependency-map/1.0/field/fixVersions') assert diagrams_response.status_code == 200 field3 = diagrams_response.json()["id"] print(field3) # Create diagram payload = { 'name': "A100", 'author': userKey, 'lastEditedBy': userKey, 'layoutId': 2, 'filterKey': filterKey, 'boxColorFieldKey': field, 'groupedLayoutFieldKey': field2, 'matrixLayoutHorizontalFieldKey': field2, 'matrixLayoutVerticalFieldKey': field3 } diagram_response = session.post('/rest/dependency-map/1.0/diagram', json=payload) assert diagram_response.status_code == 200 diagramId = str(diagram_response.json()["id"]) print("New diagram id: " + diagramId) # Create linkConfig payload = { 'diagramId': diagramId, 'linkKey': 10000, 'visible': True, 'dashType': 0, 'width': 0, 'colorPaletteEntryId': 20 } diagrams_response = session.post( '/rest/dependency-map/1.0/linkConfig?diagramId=' + diagramId, json=payload) newLinkConfig = diagrams_response.json() linkConfigId = str(newLinkConfig["id"]) print(linkConfigId) assert (diagrams_response.status_code == 200) change_color_mapping(session, diagramId) return diagramId
def test_create_diagram(self, session): #GET /rest/api/2/issueLinkType HTTP/1.1" 200 229 3 "http://localhost:8080/plugins/servlet/dependency-map/diagram" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) A #GET /rest/dependency-map/1.0/filter?searchTerm=&page=0&resultsPerPage=25&_=1580893219884 HTTP/1.1" 200 153 2 "http://localhost:8080/plugins/servlet/dependenc #GET /rest/dependency-map/1.0/field?searchTerm=&page=0&resultsPerPage=25&_=1580893250444 HTTP/1.1" 200 243 1 "http://localhost:8080/plugins/servlet/dependency #GET /rest/dependency-map/1.0/field?searchTerm=&page=0&resultsPerPage=25&_=1580893254366 HTTP/1.1" 200 243 1 "http://localhost:8080/plugins/servlet/dependency #GET /rest/dependency-map/1.0/user HTTP/1.1" 200 96 1 "http://localhost:8080/plugins/servlet/dependency-map/diagram" "Mozilla/5.0 (Windows NT 10.0; Win64; x64 #POST /rest/dependency-map/1.0/diagram HTTP/1.1" 200 226 2 "http://localhost:8080/plugins/servlet/dependency-map/diagram" "Mozilla/5.0 (Windows NT 10.0; Win64 #POST /rest/dependency-map/1.0/linkConfig HTTP/1.1" 200 134 5 "http://localhost:8080/plugins/servlet/dependency-map/diagram" "Mozilla/5.0 (Windows NT 10.0; Wi # ??? POST /rest/webResources/1.0/resources HTTP/1.1" 200 494 3 "http://localhost:8080/plugins/servlet/dependency-map/diagram" "Mozilla/5.0 (Windows NT 10.0; Win64 #GET /rest/dependency-map/1.0/diagram?searchTerm=&startAt=0&maxResults=50 HTTP/1.1" 200 960 3 "http://localhost:8080/plugins/servlet/dependency-map/diagram" " # Get filter key HOSTNAME = os.environ.get('application_hostname') diagrams_response = session.get( 'http://' + HOSTNAME + ':8080/rest/dependency-map/1.0/filter?searchTerm=&page=0&resultsPerPage=25' ) assert diagrams_response.status_code == 200 filterKey = str(diagrams_response.json()["filters"][1]["filterKey"]) print(filterKey) # Get field diagrams_response = session.get( 'http://' + HOSTNAME + ':8080/rest/dependency-map/1.0/field?searchTerm=&page=0&resultsPerPage=25' ) assert diagrams_response.status_code == 200 field = diagrams_response.json()["fields"][0]["id"] print(field) # Get field diagrams_response = session.get( 'http://' + HOSTNAME + ':8080/rest/dependency-map/1.0/field?searchTerm=&page=0&resultsPerPage=25' ) assert diagrams_response.status_code == 200 field = diagrams_response.json()["fields"][0]["id"] print(field) # Get user diagrams_response = session.get('http://' + HOSTNAME + ':8080/rest/dependency-map/1.0/user') assert diagrams_response.status_code == 200 userKey = diagrams_response.json()["key"] print("User key: " + userKey) # Create diagram payload = { 'name': "D100", 'author': userKey, 'lastEditedBy': userKey, 'layoutId': 0, 'filterKey': filterKey, 'boxColorFieldKey': field, 'groupedLayoutFieldKey': field, 'matrixLayoutHorizontalFieldKey': 'fixVersions', 'matrixLayoutVerticalFieldKey': 'fixVersions' } diagram_response = session.post( 'http://' + HOSTNAME + ':8080/rest/dependency-map/1.0/diagram', json=payload) assert diagram_response.status_code == 200 diagramId = str(diagram_response.json()["id"]) print("New diagram id: " + diagramId) # try: # with open(out_file_path, "a") as f: # diagrams_delete_request ='http://' + HOSTNAME + ':8080/rest/dependency-map/1.0/diagram/' + diagramId # f.write(diagrams_delete_request) # f.write("\n") # f.close() # except IOError: # print("File not accessible") # Create linkConfig payload = { 'diagramId': diagramId, 'linkKey': 10000, 'visible': True, 'dashType': 0, 'width': 0, 'colorPaletteEntryId': 20 } diagrams_response = session.post( 'http://' + HOSTNAME + ':8080/rest/dependency-map/1.0/linkConfig?diagramId=' + diagramId, json=payload) newLinkConfig = diagrams_response.json() linkConfigId = str(newLinkConfig["id"]) print(linkConfigId) assert (diagrams_response.status_code == 200) # Get diagrams diagrams_response = session.get( 'http://' + HOSTNAME + ':8080/rest/dependency-map/1.0/diagram?searchTerm=&startAt=0&maxResults=50' ) assert diagrams_response.status_code == 200
def get_projects(nr_projects, session): resp = session.get('/rest/api/latest/project', auth=('admin', 'admin')) assert resp.status_code == 200 result = resp.json() return result
def test_create_diagram_flow_cd(self, base_url, session): #JIRA Get list of available link types HOSTNAME = os.environ.get('application_hostname') # Get field priority # diagrams_response = session.get( '/rest/dependency-map/1.0/field/priority') assert diagrams_response.status_code == 200 field = diagrams_response.json()["id"] # Get field option priority # diagrams_response = session.get( '/rest/dependency-map/1.0/fieldOption/priority') assert diagrams_response.status_code == 200 print(diagrams_response.json()) # Get color palette entry# diagrams_response = session.get( '/rest/dependency-map/1.0/colorPaletteEntry?palettId=' + '1') assert diagrams_response.status_code == 200 # Get issue linktype # diagrams_response = session.get('/rest/api/2/issueLinkType') assert diagrams_response.status_code == 200 # Get field # diagrams_response = session.get('/rest/api/2/field') assert diagrams_response.status_code == 200 # Get field # diagrams_response = session.get('/rest/api/2/field') assert diagrams_response.status_code == 200 # Get field fix version # diagrams_response = session.get( '/rest/dependency-map/1.0/field/fixVersions') assert diagrams_response.status_code == 200 field3 = diagrams_response.json()["id"] ############ Give name and select filter # Get filter diagrams_response = session.get( '/rest/dependency-map/1.0/filter?searchTerm=&page=0&resultsPerPage=25' ) assert diagrams_response.status_code == 200 # Get color palette entry# diagrams_response = session.get( '/rest/dependency-map/1.0/colorPaletteEntry?palettId=' + '0') assert diagrams_response.status_code == 200 # Get field priority , repeat this because if some other value was selected such a call had been made# diagrams_response = session.get( '/rest/dependency-map/1.0/field/priority') assert diagrams_response.status_code == 200 field = diagrams_response.json()["id"] # Get field option priority # diagrams_response = session.get( '/rest/dependency-map/1.0/fieldOption/priority') assert diagrams_response.status_code == 200 ############# Select issue color field # Get filter - diagrams_response = session.get( '/rest/dependency-map/1.0/filter?searchTerm=&page=0&resultsPerPage=25' ) assert diagrams_response.status_code == 200 #Get color palet entry diagrams_response = session.get( '/rest/dependency-map/1.0/colorPaletteEntry?palettId=' + '0') assert diagrams_response.status_code == 200 ############# Select Map layout matrix # Get field status diagrams_response = session.get( '/rest/dependency-map/1.0/field/status') assert diagrams_response.status_code == 200 field2 = diagrams_response.json()["id"] ############# Select filter # Get filter - diagrams_response = session.get( '/rest/dependency-map/1.0/filter?searchTerm=&page=0&resultsPerPage=25' ) assert diagrams_response.status_code == 200 ############## Select columns field # Get filter - diagrams_response = session.get( '/rest/dependency-map/1.0/filter?searchTerm=&page=0&resultsPerPage=25' ) assert diagrams_response.status_code == 200 ################ Create diagram ##################### #Get filterKey randomly among the project in the project file filterKey = getRandomFilter(session) # Get user diagrams_response = session.get('/rest/dependency-map/1.0/user') assert diagrams_response.status_code == 200 userKey = diagrams_response.json()["key"] # Create diagram payload = { 'name': "F100", 'author': userKey, 'lastEditedBy': userKey, 'layoutId': 2, 'filterKey': filterKey, 'boxColorFieldKey': field, 'groupedLayoutFieldKey': field2, 'matrixLayoutHorizontalFieldKey': field2, 'matrixLayoutVerticalFieldKey': field3 } diagrams_response = session.post('/rest/dependency-map/1.0/diagram', json=payload) assert diagrams_response.status_code == 200 diagramId = diagrams_response.json()['id'] guid = diagrams_response.json()['guid'] diagramKey = str(diagramId) saveRemoveDiagramCmd(diagramId) #get diagram diagrams_response = session.get('/rest/dependency-map/1.0/diagram/' + diagramKey) ###### update issue colors # Get user diagrams_response = session.get('/rest/dependency-map/1.0/user') assert diagrams_response.status_code == 200 userKey = diagrams_response.json()["key"] #Update diagram payload = { 'name': "F200", 'id': diagramId, 'author': userKey, 'lastEditedBy': userKey, 'layoutId': 2, 'filterKey': filterKey, 'boxColorFieldKey': field, 'groupedLayoutFieldKey': field2, 'matrixLayoutHorizontalFieldKey': field2, 'matrixLayoutVerticalFieldKey': field3, 'guid': guid } diagrams_response = session.put('/rest/dependency-map/1.0/diagram', json=payload) print(diagrams_response.json()) assert diagrams_response.status_code == 200 #create box colore resource entries. payload = { "diagramId": diagramId, "fieldId": "priority", "fieldOptionId": 1, "colorPaletteEntryId": 5 } diagrams_response = session.post('/rest/dependency-map/1.0/boxColor', json=payload) assert diagrams_response.status_code == 200 payload = { "diagramId": diagramId, "fieldId": "priority", "fieldOptionId": 2, "colorPaletteEntryId": 6 } diagrams_response = session.post('/rest/dependency-map/1.0/boxColor', json=payload) assert diagrams_response.status_code == 200 payload = { "diagramId": diagramId, "fieldId": "priority", "fieldOptionId": 3, "colorPaletteEntryId": 7 } diagrams_response = session.post('/rest/dependency-map/1.0/boxColor', json=payload) assert diagrams_response.status_code == 200 payload = { "diagramId": diagramId, "fieldId": "priority", "fieldOptionId": 4, "colorPaletteEntryId": 8 } diagrams_response = session.post('/rest/dependency-map/1.0/boxColor', json=payload) assert diagrams_response.status_code == 200 ###############Create link config entries # Get user diagrams_response = session.get('/rest/dependency-map/1.0/user') assert diagrams_response.status_code == 200 userKey = diagrams_response.json()["key"] #Update diagram payload = { 'name': "F100", 'id': diagramId, 'author': userKey, 'lastEditedBy': userKey, 'layoutId': 2, 'filterKey': filterKey, 'boxColorFieldKey': field, 'groupedLayoutFieldKey': field2, 'matrixLayoutHorizontalFieldKey': field2, 'matrixLayoutVerticalFieldKey': field3, 'guid': guid } diagrams_response = session.put('/rest/dependency-map/1.0/diagram', json=payload) assert diagrams_response.status_code == 200 #Get color palet entrie diagrams_response = session.get( '/rest/dependency-map/1.0/colorPaletteEntry?paletteId=' + '1') assert diagrams_response.status_code == 200 print(diagrams_response.json()) colorPaletteEntryId = diagrams_response.json()[14]["id"] colorPaletteEntryId2 = diagrams_response.json()[10]["id"] colorPaletteEntryId3 = diagrams_response.json()[12]["id"] #Create linkConfig diagrams_response = session.get('/rest/api/2/issueLinkType') print(diagrams_response.json()) issueLinkTypeIdStr = diagrams_response.json( )['issueLinkTypes'][0]['id'] issueLinkTypeId = int(issueLinkTypeIdStr) issueLinkTypeId2Str = diagrams_response.json( )['issueLinkTypes'][1]['id'] issueLinkTypeId2 = int(issueLinkTypeId2Str) issueLinkTypeId3Str = diagrams_response.json( )['issueLinkTypes'][2]['id'] issueLinkTypeId3 = int(issueLinkTypeId3Str) payload = { 'diagramId': diagramId, 'linkKey': issueLinkTypeId, 'visible': True, 'dashType': 0, 'width': 0, 'colorPaletteEntryId': colorPaletteEntryId } diagrams_response = session.post( '/rest/dependency-map/1.0/linkConfig?diagramId=' + diagramKey, json=payload) assert (diagrams_response.status_code == 200) payload = { 'diagramId': diagramId, 'linkKey': issueLinkTypeId2, 'visible': True, 'dashType': 0, 'width': 0, 'colorPaletteEntryId': colorPaletteEntryId2 } diagrams_response = session.post( '/rest/dependency-map/1.0/linkConfig?diagramId=' + diagramKey, json=payload) assert (diagrams_response.status_code == 200) payload = { 'diagramId': diagramId, 'linkKey': issueLinkTypeId3, 'visible': True, 'dashType': 0, 'width': 0, 'colorPaletteEntryId': colorPaletteEntryId3 } diagrams_response = session.post( '/rest/dependency-map/1.0/linkConfig?diagramId=' + diagramKey, json=payload) assert (diagrams_response.status_code == 200) print("inside11")
def test_show_diagram_flow_ci(self, base_url, session, create_data): print(create_data) diagramIdStr = create_data['diagramId'] projectId = create_data['projectId'] filterIdStr = create_data['filterId'] print(filterIdStr) # To make it thread save need to create the diagram before removing # Get user diagrams_response = session.get('/rest/dependency-map/1.0/user') assert diagrams_response.status_code == 200 userKey = diagrams_response.json()["key"] # Get filter key diagrams_response = session.get( '/rest/dependency-map/1.0/filter?searchTerm=&page=0&resultsPerPage=25' ) assert diagrams_response.status_code == 200 #Get favoritDiagram diagrams_response = session.get( '/rest/dependency-map/1.0/favoriteDiagram') assert diagrams_response.status_code == 200 #Get diagrams with filterKey diagrams_response = session.get( '/rest/dependency-map/1.0/diagram?filterKey=' + filterIdStr + '&searchTerm=&sortBy=name&reverseSort=&startAt=0&maxResults=50') assert diagrams_response.status_code == 200 # #Get filter diagrams_response = session.get('/rest/api/2/filter/' + filterIdStr) assert diagrams_response.status_code == 200 ############# When opening diagram #Get diagram diagrams_response = session.get('/rest/dependency-map/1.0/diagram/' + diagramIdStr) assert diagrams_response.status_code == 200 #Get color palet entrie diagrams_response = session.get( '/rest/dependency-map/1.0/colorPaletteEntry?palettId=' + '0') assert diagrams_response.status_code == 200 #Get color palet entrie diagrams_response = session.get( '/rest/dependency-map/1.0/colorPaletteEntry?palettId=' + '1') assert diagrams_response.status_code == 200 # Get issue linktype # diagrams_response = session.get('/rest/api/2/issueLinkType') assert diagrams_response.status_code == 200 # Get field # diagrams_response = session.get('/rest/api/2/field') assert diagrams_response.status_code == 200 # Get field # diagrams_response = session.get('/rest/api/2/field') assert diagrams_response.status_code == 200 # Get field priority diagrams_response = session.get( '/rest/dependency-map/1.0/field/status') assert diagrams_response.status_code == 200 # Get field options - status diagrams_response = session.get( '/rest/dependency-map/1.0/fieldOption/status') assert diagrams_response.status_code == 200 # Get field options - fixVersions diagrams_response = session.get( '/rest/dependency-map/1.0/fieldOption/fixVersions') assert diagrams_response.status_code == 200 # Get issue linktype # diagrams_response = session.get('/rest/api/2/issueLinkType') assert diagrams_response.status_code == 200 # Get filter moved to the next section #diagrams_response = session.get('/rest/dependency-map/1.0/filter' + filterIdStr) #assert diagrams_response.status_code == 200 #searchUrl = diagrams_response.json()['searchUrl'] ##remove everytning before '/rest/api/2/search' #shortSearchUrl = re.sub("/rest/api/2/search?", '', searchUrl) #diagrams_response = session.get(shortSearchUrl + "&fields=priority,status,fixVersions,assignee,duedate,summary,issuelinks&startAt=0&maxResults=50") #assert diagrams_response.status_code == 200 # Get field priority diagrams_response = session.get( '/rest/dependency-map/1.0/field/status') assert diagrams_response.status_code == 200 # Get field options - status diagrams_response = session.get( '/rest/dependency-map/1.0/fieldOption/status') assert diagrams_response.status_code == 200 # Get field options - fixVersions diagrams_response = session.get( '/rest/dependency-map/1.0/fieldOption/fixVersions') assert diagrams_response.status_code == 200 #Get boxcolor, värden när dessa är explicit ändrade. diagrams_response = session.get( '/rest/dependency-map/1.0/boxColor?diagramId=' + diagramIdStr + '&fieldId=priority') assert diagrams_response.status_code == 200 value = diagrams_response.text
def create_data(session): # print_in_shell("Create diagram") # session = requests.session() # Get user diagrams_response = session.get('/rest/dependency-map/1.0/user') assert diagrams_response.status_code == 200 userKey = diagrams_response.json()["key"] print_in_shell("User key: " + userKey) # Get filter key diagrams_response = session.get( '/rest/dependency-map/1.0/filter?searchTerm=&page=0&resultsPerPage=25') assert diagrams_response.status_code == 200 # Get field priority diagrams_response = session.get('/rest/dependency-map/1.0/field/priority') assert diagrams_response.status_code == 200 field = diagrams_response.json()["id"] # Get field fixVersions diagrams_response = session.get( '/rest/dependency-map/1.0/field/fixVersions') assert diagrams_response.status_code == 200 field2 = diagrams_response.json()["id"] # Get project and filter id from the list of projects we shall use, saved in a file projectId = getRandomProjectId() filterId = getFilterId(projectId) # Create diagram nedan går att skapa men inte att öppna #payload ={ 'name':"G100", 'author': userKey, # 'lastEditedBy':userKey, 'layoutId':0, 'filterKey': filterId, # 'boxColorFieldKey': field, 'groupedLayoutFieldKey': field, # 'matrixLayoutHorizontalFieldKey': field2, 'matrixLayoutVerticalFieldKey': field2} # Create diagram payload = { 'name': "G100", 'author': userKey, 'lastEditedBy': userKey, 'layoutId': 0, 'filterKey': filterId, 'boxColorFieldKey': field, 'groupedLayoutFieldKey': field2, 'matrixLayoutHorizontalFieldKey': 'status', 'matrixLayoutVerticalFieldKey': field2 } diagrams_response = session.post('/rest/dependency-map/1.0/diagram', json=payload) assert diagrams_response.status_code == 200 diagramId = diagrams_response.json()['id'] diagramIdStr = str(diagramId) #create box colore resource entries. payload = { "diagramId": diagramId, "fieldId": "status", "fieldOptionId": 1, "colorPaletteEntryId": 5 } diagrams_response = session.post('/rest/dependency-map/1.0/boxColor', json=payload) assert diagrams_response.status_code == 200 payload = { "diagramId": diagramId, "fieldId": "status", "fieldOptionId": 2, "colorPaletteEntryId": 6 } diagrams_response = session.post('/rest/dependency-map/1.0/boxColor', json=payload) assert diagrams_response.status_code == 200 payload = { "diagramId": diagramId, "fieldId": "status", "fieldOptionId": 3, "colorPaletteEntryId": 7 } diagrams_response = session.post('/rest/dependency-map/1.0/boxColor', json=payload) assert diagrams_response.status_code == 200 payload = { "diagramId": diagramId, "fieldId": "status", "fieldOptionId": 4, "colorPaletteEntryId": 8 } diagrams_response = session.post('/rest/dependency-map/1.0/boxColor', json=payload) assert diagrams_response.status_code == 200 #Create link config entries # Create linkConfig #Get color palet entrie diagrams_response = session.get( '/rest/dependency-map/1.0/colorPaletteEntry?paletteId=' + '1') assert diagrams_response.status_code == 200 print(diagrams_response.json()) colorPaletteEntryId = diagrams_response.json()[14]["id"] colorPaletteEntryId2 = diagrams_response.json()[10]["id"] colorPaletteEntryId3 = diagrams_response.json()[12]["id"] diagrams_response = session.get('/rest/api/2/issueLinkType') issueLinkTypeIdStr = diagrams_response.json()['issueLinkTypes'][0]['id'] issueLinkTypeId = int(issueLinkTypeIdStr) issueLinkTypeId2Str = diagrams_response.json()['issueLinkTypes'][1]['id'] issueLinkTypeId2 = int(issueLinkTypeId2Str) issueLinkTypeId3Str = diagrams_response.json()['issueLinkTypes'][2]['id'] issueLinkTypeId3 = int(issueLinkTypeId3Str) payload = { 'diagramId': diagramId, 'linkKey': issueLinkTypeId, 'visible': True, 'dashType': 0, 'width': 0, 'colorPaletteEntryId': colorPaletteEntryId } diagrams_response = session.post( '/rest/dependency-map/1.0/linkConfig?diagramId=' + diagramIdStr, json=payload) assert (diagrams_response.status_code == 200) payload = { 'diagramId': diagramId, 'linkKey': issueLinkTypeId2, 'visible': True, 'dashType': 0, 'width': 0, 'colorPaletteEntryId': colorPaletteEntryId2 } diagrams_response = session.post( '/rest/dependency-map/1.0/linkConfig?diagramId=' + diagramIdStr, json=payload) assert (diagrams_response.status_code == 200) payload = { 'diagramId': diagramId, 'linkKey': issueLinkTypeId3, 'visible': True, 'dashType': 0, 'width': 0, 'colorPaletteEntryId': colorPaletteEntryId3 } diagrams_response = session.post( '/rest/dependency-map/1.0/linkConfig?diagramId=' + diagramIdStr, json=payload) assert (diagrams_response.status_code == 200) yield { 'diagramId': diagramIdStr, 'projectId': projectId, 'filterId': filterId } diagrams_response2 = session.delete('/rest/dependency-map/1.0/diagram/' + diagramIdStr) assert diagrams_response2.status_code == 200 print_in_shell("Deleted diagram id=" + diagramIdStr) return { 'diagramId': diagramIdStr, 'projectId': projectId, 'filerId': filterId }
def test_show_diagram_flow_sd(self, base_url, session, create_data): filterIdStr = create_data['filterId'] diagramId = create_data['diagramId'] diagramIdStr = str(diagramId) # Get user diagrams_response = session.get('/rest/dependency-map/1.0/user') assert diagrams_response.status_code == 200 userKey = diagrams_response.json()["key"] print_in_shell("User key: " + userKey) #Get favoritDiagram diagrams_response = session.get( '/rest/dependency-map/1.0/favoriteDiagram') assert diagrams_response.status_code == 200 favoritDiagrams = diagrams_response.json() print(favoritDiagrams) # firstDiagId = favoritDiagrams[0]["diagramId"] for diag in favoritDiagrams: id = diag["diagramId"] diagrams_response = session.get( '/rest/dependency-map/1.0/diagram/' + str(id)) print(diagrams_response.json()) filterKey = diagrams_response.json()['filterKey'] assert diagrams_response.status_code == 200 # Get filter key diagrams_response = session.get("/rest/api/2/filter/" + str(filterKey)) assert diagrams_response.status_code == 200 print(diagramIdStr) #Selecting and opening diagram diagrams_response = session.get('/rest/dependency-map/1.0/diagram/' + diagramIdStr) assert diagrams_response.status_code == 200 #Get color palet entrie diagrams_response = session.get( '/rest/dependency-map/1.0/colorPaletteEntry?paletteId=' + '0') assert diagrams_response.status_code == 200 #Get color palet entrie diagrams_response = session.get( '/rest/dependency-map/1.0/colorPaletteEntry?paletteId=' + '1') assert diagrams_response.status_code == 200 # Get issue linktype # diagrams_response = session.get('/rest/api/2/issueLinkType') assert diagrams_response.status_code == 200 # Get field # diagrams_response = session.get('/rest/api/2/field') assert diagrams_response.status_code == 200 # Get field # diagrams_response = session.get('/rest/api/2/field') assert diagrams_response.status_code == 200 # Get linkConfig # diagrams_response = session.get( '/rest/dependency-map/1.0/linkConfig?diagramId=' + diagramIdStr) assert diagrams_response.status_code == 200 # Get field priority diagrams_response = session.get( '/rest/dependency-map/1.0/field/priority') assert diagrams_response.status_code == 200 # Get field options - status diagrams_response = session.get( '/rest/dependency-map/1.0/fieldOption/status') assert diagrams_response.status_code == 200 # Get field options - fixVersions diagrams_response = session.get( '/rest/dependency-map/1.0/fieldOption/fixVersions') assert diagrams_response.status_code == 200 # Get issue linktype # diagrams_response = session.get('/rest/api/2/issueLinkType') assert diagrams_response.status_code == 200 # Get field priority diagrams_response = session.get( '/rest/dependency-map/1.0/field/status') assert diagrams_response.status_code == 200 diagrams_response = session.get("/rest/api/2/filter/" + filterIdStr) assert diagrams_response.status_code == 200 # Get field options - priority diagrams_response = session.get( '/rest/dependency-map/1.0/fieldOption/priority') assert diagrams_response.status_code == 200 # Get field options - status diagrams_response = session.get( '/rest/dependency-map/1.0/fieldOption/status') assert diagrams_response.status_code == 200 # Get field options - fixVersions diagrams_response = session.get( '/rest/dependency-map/1.0/fieldOption/fixVersions') assert diagrams_response.status_code == 200 #Get boxcolor, värden när dessa är explicit ändrade. diagrams_response = session.get( '/rest/dependency-map/1.0/boxColor?diagramId=' + diagramIdStr + '&fieldId=priority') assert diagrams_response.status_code == 200 value = diagrams_response.text