Skip to content

Commit 7b4581b

Browse files
authored
Merge pull request #4 from yechielb2000/fix/codacy-remaining-issues
Fix ADF duplication, docstring sections, and simplify test imports
2 parents 1a92b3d + 26f522b commit 7b4581b

5 files changed

Lines changed: 41 additions & 43 deletions

File tree

atlassian/models/jira/adf.py

Lines changed: 6 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ def heading(self, text: str, level: int = 1) -> ADFBuilder:
8282
)
8383
return self
8484

85-
def bullet_list(self, items: list[str]) -> ADFBuilder:
85+
def _list_node(self, list_type: str, items: list[str]) -> ADFBuilder:
8686
list_items = [
8787
{
8888
"type": "listItem",
@@ -95,24 +95,14 @@ def bullet_list(self, items: list[str]) -> ADFBuilder:
9595
}
9696
for item in items
9797
]
98-
self._content.append({"type": "bulletList", "content": list_items})
98+
self._content.append({"type": list_type, "content": list_items})
9999
return self
100100

101+
def bullet_list(self, items: list[str]) -> ADFBuilder:
102+
return self._list_node("bulletList", items)
103+
101104
def ordered_list(self, items: list[str]) -> ADFBuilder:
102-
list_items = [
103-
{
104-
"type": "listItem",
105-
"content": [
106-
{
107-
"type": "paragraph",
108-
"content": [{"type": "text", "text": item}],
109-
}
110-
],
111-
}
112-
for item in items
113-
]
114-
self._content.append({"type": "orderedList", "content": list_items})
115-
return self
105+
return self._list_node("orderedList", items)
116106

117107
def code_block(self, code: str, language: Optional[str] = None) -> ADFBuilder:
118108
node: dict[str, Any] = {

atlassian/models/jira/comment.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,8 @@ def __post_init__(self) -> None:
4141
def as_args(self) -> dict[str, Any]:
4242
"""Return keyword arguments for Jira.issue_add_comment().
4343
44-
Usage:
44+
Usage::
45+
4546
c = Comment("Fixed in PR #42", visibility=Visibility("role", "Developers"))
4647
jira.issue_add_comment("PLAT-123", **c.as_args())
4748
"""

atlassian/models/jira/transition.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,8 @@ def __post_init__(self) -> None:
2929
def as_args(self) -> dict[str, Any]:
3030
"""Return keyword arguments for Jira.set_issue_status().
3131
32-
Usage:
32+
Usage::
33+
3334
t = Transition("PLAT-123", "Done", resolution="Fixed")
3435
jira.set_issue_status(**t.as_args())
3536
"""

atlassian/models/jira/update.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,8 @@ class UpdateBuilder: # pylint: disable=too-many-public-methods
2626
Produces the dict format expected by Jira.issue_update() and
2727
Jira.update_issue_field().
2828
29-
Example:
29+
Example::
30+
3031
payload = (
3132
UpdateBuilder("PLAT-123")
3233
.set_summary("New title")

tests/test_jira_models.py

Lines changed: 29 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -5,45 +5,50 @@
55

66
import pytest
77

8-
from atlassian.models.jira.adf import ADFBuilder, MentionNode, TextNode
9-
from atlassian.models.jira.builders import (
10-
EpicBuilder,
11-
IssueBuilder,
12-
SubTaskBuilder,
13-
bug,
14-
epic,
15-
story,
16-
subtask,
17-
task,
18-
)
19-
from atlassian.models.jira.comment import Comment, Visibility
20-
from atlassian.models.jira.fields import (
8+
from atlassian.models.jira import (
9+
ADFBuilder,
10+
Bug,
11+
Comment,
2112
Component,
2213
CustomField,
14+
Epic,
15+
EpicBuilder,
16+
FieldMapping,
17+
IssueBuilder,
2318
IssueFields,
2419
IssueLink,
2520
IssueType,
21+
JiraIssue,
22+
MentionNode,
2623
Parent,
2724
Priority,
2825
PriorityLevel,
2926
Project,
30-
User,
31-
Version,
32-
)
33-
from atlassian.models.jira.issues import (
34-
Bug,
35-
Epic,
36-
JiraIssue,
3727
Story,
3828
SubTask,
29+
SubTaskBuilder,
3930
Task,
31+
TextNode,
32+
Transition,
33+
TransitionBuilder,
34+
UpdateBuilder,
35+
UpdatePayload,
36+
User,
37+
Version,
38+
Visibility,
39+
bug,
40+
bulk_serialize,
41+
epic,
4042
get_issue_type_registry,
4143
issue_type_for,
44+
serialize,
45+
story,
46+
subtask,
47+
task,
48+
to_fields_dict,
49+
validate,
50+
validate_or_raise,
4251
)
43-
from atlassian.models.jira.serializer import FieldMapping, bulk_serialize, serialize, to_fields_dict
44-
from atlassian.models.jira.transition import Transition, TransitionBuilder
45-
from atlassian.models.jira.update import UpdateBuilder, UpdatePayload
46-
from atlassian.models.jira.validation import validate, validate_or_raise
4752

4853

4954
def test_project_key_only_to_dict():

0 commit comments

Comments
 (0)