datanommer.models 1.4.0__tar.gz → 1.4.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (19) hide show
  1. {datanommer_models-1.4.0 → datanommer_models-1.4.2}/NEWS.rst +33 -0
  2. {datanommer_models-1.4.0 → datanommer_models-1.4.2}/PKG-INFO +11 -5
  3. {datanommer_models-1.4.0 → datanommer_models-1.4.2}/datanommer/models/__init__.py +2 -2
  4. {datanommer_models-1.4.0 → datanommer_models-1.4.2}/pyproject.toml +11 -3
  5. {datanommer_models-1.4.0 → datanommer_models-1.4.2}/tests/test_model.py +1 -1
  6. {datanommer_models-1.4.0 → datanommer_models-1.4.2}/tox.ini +3 -5
  7. datanommer_models-1.4.0/coverage.xml +0 -266
  8. {datanommer_models-1.4.0 → datanommer_models-1.4.2}/LICENSE +0 -0
  9. {datanommer_models-1.4.0 → datanommer_models-1.4.2}/README.rst +0 -0
  10. {datanommer_models-1.4.0 → datanommer_models-1.4.2}/alembic.ini +0 -0
  11. {datanommer_models-1.4.0 → datanommer_models-1.4.2}/datanommer/models/alembic/env.py +0 -0
  12. {datanommer_models-1.4.0 → datanommer_models-1.4.2}/datanommer/models/alembic/script.py.mako +0 -0
  13. {datanommer_models-1.4.0 → datanommer_models-1.4.2}/datanommer/models/alembic/versions/429e6f2cba6f_message_agent_name.py +0 -0
  14. {datanommer_models-1.4.0 → datanommer_models-1.4.2}/datanommer/models/alembic/versions/5db25abc63be_init.py +0 -0
  15. {datanommer_models-1.4.0 → datanommer_models-1.4.2}/datanommer/models/alembic/versions/951c40020acc_unique.py +0 -0
  16. {datanommer_models-1.4.0 → datanommer_models-1.4.2}/datanommer/models/alembic/versions/f6918385051f_messages_headers_index.py +0 -0
  17. {datanommer_models-1.4.0 → datanommer_models-1.4.2}/datanommer/models/testing/__init__.py +0 -0
  18. {datanommer_models-1.4.0 → datanommer_models-1.4.2}/tests/conftest.py +0 -0
  19. {datanommer_models-1.4.0 → datanommer_models-1.4.2}/tests/test_jsonencodeddict.py +0 -0
@@ -6,6 +6,39 @@ For ``datanommer.models``
6
6
 
7
7
  .. towncrier release notes start
8
8
 
9
+ v1.4.2
10
+ ======
11
+
12
+ Released on 2025-06-07.
13
+
14
+ No significant changes.
15
+
16
+ v1.4.1
17
+ ======
18
+
19
+ Released on 2025-05-30.
20
+
21
+ Dependency Changes
22
+ ^^^^^^^^^^^^^^^^^^
23
+
24
+ * Add schema package mailman3-fedmsg-plugin-schemas (`#8ad6c47 <https://github.com/fedora-infra/datanommer/issues/8ad6c47>`_)
25
+ * Add schema package webhook-to-fedora-messaging-messages (`#865855c <https://github.com/fedora-infra/datanommer/issues/865855c>`_)
26
+ * Update koji-fedoramessaging-messages (`#c64cb31 <https://github.com/fedora-infra/datanommer/issues/c64cb31>`_)
27
+ * Add support for Python 3.9 (for RHEL9) (`#8d63e86 <https://github.com/fedora-infra/datanommer/issues/8d63e86>`_)
28
+ * Add the schema package journal-to-fedora-messaging-messages (`#3d9bc35 <https://github.com/fedora-infra/datanommer/issues/3d9bc35>`_)
29
+ * Add the `fedora-image-uploader-messages` schema package (`#7da3074 <https://github.com/fedora-infra/datanommer/issues/7da3074>`_)
30
+
31
+ Bug Fixes
32
+ ^^^^^^^^^
33
+
34
+ * Fix unit tests (`#085f5c4 <https://github.com/fedora-infra/datanommer/issues/085f5c4>`_)
35
+
36
+ Other Changes
37
+ ^^^^^^^^^^^^^
38
+
39
+ * Remove unneccessary int call (`#487341f <https://github.com/fedora-infra/datanommer/issues/487341f>`_)
40
+
41
+
9
42
  v1.4.0
10
43
  ======
11
44
 
@@ -1,17 +1,18 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.3
2
2
  Name: datanommer.models
3
- Version: 1.4.0
3
+ Version: 1.4.2
4
4
  Summary: SQLAlchemy models for datanommer
5
- Home-page: https://github.com/fedora-infra/datanommer
6
5
  License: GPL-3.0-or-later
7
6
  Author: Fedora Infrastructure
8
7
  Author-email: admin@fedoraproject.org
9
- Requires-Python: >=3.10,<4.0
8
+ Requires-Python: >=3.9,<4.0
10
9
  Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
11
10
  Classifier: Programming Language :: Python :: 3
11
+ Classifier: Programming Language :: Python :: 3.9
12
12
  Classifier: Programming Language :: Python :: 3.10
13
13
  Classifier: Programming Language :: Python :: 3.11
14
14
  Classifier: Programming Language :: Python :: 3.12
15
+ Classifier: Programming Language :: Python :: 3.13
15
16
  Provides-Extra: schemas
16
17
  Requires-Dist: SQLAlchemy (>=1.3.24,<3.0.0)
17
18
  Requires-Dist: alembic (>=1.6.5,<2.0.0)
@@ -23,15 +24,18 @@ Requires-Dist: copr-messaging ; extra == "schemas"
23
24
  Requires-Dist: discourse2fedmsg-messages ; extra == "schemas"
24
25
  Requires-Dist: fedocal-messages ; extra == "schemas"
25
26
  Requires-Dist: fedora-elections-messages ; extra == "schemas"
27
+ Requires-Dist: fedora-image-uploader-messages ; extra == "schemas"
26
28
  Requires-Dist: fedora-messaging (>=2.1.0)
27
29
  Requires-Dist: fedora-messaging-git-hook-messages ; extra == "schemas"
28
30
  Requires-Dist: fedora-messaging-the-new-hotness-schema ; extra == "schemas"
29
31
  Requires-Dist: fedora-planet-messages ; extra == "schemas"
30
32
  Requires-Dist: fedorainfra-ansible-messages ; extra == "schemas"
31
33
  Requires-Dist: fmn-messages ; extra == "schemas"
34
+ Requires-Dist: journal-to-fedora-messaging-messages ; extra == "schemas"
32
35
  Requires-Dist: kerneltest-messages (>=1.0.0,<2.0.0) ; extra == "schemas"
33
- Requires-Dist: koji-fedoramessaging-messages (>=1.2.2,<2.0.0) ; extra == "schemas"
36
+ Requires-Dist: koji-fedoramessaging-messages (>=1.2.6,<2.0.0) ; extra == "schemas"
34
37
  Requires-Dist: koschei-messages ; extra == "schemas"
38
+ Requires-Dist: mailman3-fedmsg-plugin-schemas ; extra == "schemas"
35
39
  Requires-Dist: maubot-fedora-messages ; extra == "schemas"
36
40
  Requires-Dist: mdapi-messages ; extra == "schemas"
37
41
  Requires-Dist: mediawiki-messages ; extra == "schemas"
@@ -41,6 +45,8 @@ Requires-Dist: nuancier-messages ; extra == "schemas"
41
45
  Requires-Dist: pagure-messages ; extra == "schemas"
42
46
  Requires-Dist: psycopg2 (>=2.9.1,<3.0.0)
43
47
  Requires-Dist: tahrir-messages ; extra == "schemas"
48
+ Requires-Dist: webhook-to-fedora-messaging-messages ; extra == "schemas"
49
+ Project-URL: Homepage, https://github.com/fedora-infra/datanommer
44
50
  Project-URL: Repository, https://github.com/fedora-infra/datanommer
45
51
  Description-Content-Type: text/x-rst
46
52
 
@@ -65,7 +65,7 @@ except ImportError: # pragma: no cover
65
65
  UniqueViolation = lookup_error("23505")
66
66
 
67
67
 
68
- __version__ = importlib.metadata.version("datanommer.models")
68
+ __version__ = importlib.metadata.version("datanommer-models")
69
69
 
70
70
 
71
71
  log = logging.getLogger("datanommer")
@@ -547,7 +547,7 @@ class Message(DeclarativeBase):
547
547
  pages = 1
548
548
  else:
549
549
  total = session.scalar(query_total)
550
- pages = int(math.ceil(total / float(rows_per_page)))
550
+ pages = math.ceil(total / float(rows_per_page))
551
551
  query = query.offset(rows_per_page * (page - 1)).limit(rows_per_page)
552
552
 
553
553
  if defer:
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "datanommer.models"
3
- version = "1.4.0"
3
+ version = "1.4.2"
4
4
  description = "SQLAlchemy models for datanommer"
5
5
  authors = [
6
6
  "Fedora Infrastructure <admin@fedoraproject.org>"
@@ -24,7 +24,7 @@ include = [
24
24
  ]
25
25
 
26
26
  [tool.poetry.dependencies]
27
- python = "^3.10"
27
+ python = "^3.9"
28
28
  SQLAlchemy = "^1.3.24 || ^2.0.0"
29
29
  alembic = "^1.6.5"
30
30
  psycopg2 = "^2.9.1"
@@ -41,13 +41,16 @@ discourse2fedmsg-messages = {version = "*", optional = true}
41
41
  fedocal-messages = {version = "*", optional = true}
42
42
  fedorainfra-ansible-messages = {version = "*", optional = true}
43
43
  fedora-elections-messages = {version = "*", optional = true}
44
+ fedora-image-uploader-messages = {version = "*", optional = true}
44
45
  fedora-messaging-git-hook-messages = {version = "*", optional = true}
45
46
  fedora-messaging-the-new-hotness-schema = {version = "*", optional = true}
46
47
  fedora-planet-messages = {version = "*", optional = true}
47
48
  fmn-messages = {version = "*", optional = true}
49
+ journal-to-fedora-messaging-messages = {version = "*", optional = true}
48
50
  kerneltest-messages = {version = "^1.0.0", optional = true}
49
- koji-fedoramessaging-messages = {version = "^1.2.2", optional = true}
51
+ koji-fedoramessaging-messages = {version = "^1.2.6", optional = true}
50
52
  koschei-messages = {version = "*", optional = true}
53
+ mailman3-fedmsg-plugin-schemas = {version = "*", optional = true}
51
54
  maubot-fedora-messages = {version = "*", optional = true}
52
55
  mediawiki-messages = {version = "*", optional = true}
53
56
  meetbot-messages = {version = "*", optional = true}
@@ -56,6 +59,7 @@ noggin-messages = {version = "*", optional = true}
56
59
  nuancier-messages = {version = "*", optional = true}
57
60
  pagure-messages = {version = "*", optional = true}
58
61
  tahrir-messages = {version = "*", optional = true}
62
+ webhook-to-fedora-messaging-messages = {version = "*", optional = true}
59
63
 
60
64
  [tool.poetry.group.dev.dependencies]
61
65
  pre-commit = "*"
@@ -80,13 +84,16 @@ schemas = [
80
84
  "fedocal-messages",
81
85
  "fedorainfra-ansible-messages",
82
86
  "fedora-elections-messages",
87
+ "fedora-image-uploader-messages",
83
88
  "fedora-messaging-git-hook-messages",
84
89
  "fedora-messaging-the-new-hotness-schema",
85
90
  "fedora-planet-messages",
86
91
  "fmn-messages",
92
+ "journal-to-fedora-messaging-messages",
87
93
  "kerneltest-messages",
88
94
  "koji-fedoramessaging-messages",
89
95
  "koschei-messages",
96
+ "mailman3-fedmsg-plugin-schemas",
90
97
  "maubot-fedora-messages",
91
98
  "mediawiki-messages",
92
99
  "meetbot-messages",
@@ -95,6 +102,7 @@ schemas = [
95
102
  "nuancier-messages",
96
103
  "pagure-messages",
97
104
  "tahrir-messages",
105
+ "webhook-to-fedora-messaging-messages",
98
106
  ]
99
107
 
100
108
 
@@ -647,7 +647,7 @@ def test_as_fedora_message_dict_no_headers(datanommer_models):
647
647
  dm.add(example_message)
648
648
 
649
649
  dbmsg = dm.session.scalar(select(dm.Message))
650
- assert len(dbmsg.headers.keys()) == 4
650
+ assert len(dbmsg.headers.keys()) == 5
651
651
 
652
652
  # Clear the headers
653
653
  dbmsg.headers = None
@@ -7,11 +7,8 @@ isolated_build = true
7
7
  passenv = HOME
8
8
  sitepackages = false
9
9
  skip_install = true
10
- # Use allowlist for poetry when poetry 1.2+ is more widespread
11
- # allowlist_externals =
12
- # poetry
13
- deps =
14
- poetry>=1.2
10
+ allowlist_externals =
11
+ poetry
15
12
  env =
16
13
  SQLALCHEMY_WARN_20=1
17
14
  commands_pre =
@@ -21,6 +18,7 @@ commands =
21
18
 
22
19
  [testenv:licenses]
23
20
  allowlist_externals =
21
+ {[testenv]allowlist_externals}
24
22
  {toxinidir}/../tools/run-liccheck.sh
25
23
  commands =
26
24
  {toxinidir}/../tools/run-liccheck.sh
@@ -1,266 +0,0 @@
1
- <?xml version="1.0" ?>
2
- <coverage version="7.5.3" timestamp="1717783023237" lines-valid="247" lines-covered="247" line-rate="1" branches-valid="118" branches-covered="118" branch-rate="1" complexity="0">
3
- <!-- Generated by coverage.py: https://coverage.readthedocs.io/en/7.5.3 -->
4
- <!-- Based on https://raw.githubusercontent.com/cobertura/web/master/htdocs/xml/coverage-04.dtd -->
5
- <sources>
6
- <source>/home/abompard/Fedora/apps/datanommer/datanommer.models/datanommer</source>
7
- </sources>
8
- <packages>
9
- <package name="models" line-rate="1" branch-rate="1" complexity="0">
10
- <classes>
11
- <class name="__init__.py" filename="models/__init__.py" complexity="0" line-rate="1" branch-rate="1">
12
- <methods/>
13
- <lines>
14
- <line number="16" hits="1"/>
15
- <line number="17" hits="1"/>
16
- <line number="18" hits="1"/>
17
- <line number="19" hits="1"/>
18
- <line number="20" hits="1"/>
19
- <line number="21" hits="1"/>
20
- <line number="22" hits="1"/>
21
- <line number="23" hits="1"/>
22
- <line number="25" hits="1"/>
23
- <line number="48" hits="1"/>
24
- <line number="49" hits="1"/>
25
- <line number="50" hits="1"/>
26
- <line number="57" hits="1"/>
27
- <line number="60" hits="1"/>
28
- <line number="61" hits="1"/>
29
- <line number="68" hits="1"/>
30
- <line number="71" hits="1"/>
31
- <line number="73" hits="1"/>
32
- <line number="74" hits="1"/>
33
- <line number="76" hits="1"/>
34
- <line number="77" hits="1"/>
35
- <line number="80" hits="1"/>
36
- <line number="83" hits="1" branch="true" condition-coverage="100% (2/2)"/>
37
- <line number="84" hits="1"/>
38
- <line number="86" hits="1" branch="true" condition-coverage="100% (2/2)"/>
39
- <line number="87" hits="1"/>
40
- <line number="89" hits="1" branch="true" condition-coverage="100% (2/2)"/>
41
- <line number="90" hits="1"/>
42
- <line number="95" hits="1" branch="true" condition-coverage="100% (2/2)"/>
43
- <line number="96" hits="1"/>
44
- <line number="97" hits="1"/>
45
- <line number="98" hits="1"/>
46
- <line number="100" hits="1"/>
47
- <line number="101" hits="1"/>
48
- <line number="103" hits="1" branch="true" condition-coverage="100% (2/2)"/>
49
- <line number="104" hits="1" branch="true" condition-coverage="100% (2/2)"/>
50
- <line number="105" hits="1"/>
51
- <line number="106" hits="1"/>
52
- <line number="117" hits="1"/>
53
- <line number="121" hits="1"/>
54
- <line number="122" hits="1"/>
55
- <line number="124" hits="1" branch="true" condition-coverage="100% (2/2)"/>
56
- <line number="127" hits="1"/>
57
- <line number="128" hits="1"/>
58
- <line number="129" hits="1"/>
59
- <line number="130" hits="1"/>
60
- <line number="131" hits="1"/>
61
- <line number="133" hits="1"/>
62
- <line number="136" hits="1"/>
63
- <line number="137" hits="1"/>
64
- <line number="138" hits="1"/>
65
- <line number="139" hits="1"/>
66
- <line number="144" hits="1"/>
67
- <line number="145" hits="1"/>
68
- <line number="146" hits="1"/>
69
- <line number="147" hits="1"/>
70
- <line number="148" hits="1"/>
71
- <line number="153" hits="1"/>
72
- <line number="155" hits="1"/>
73
- <line number="167" hits="1"/>
74
- <line number="173" hits="1"/>
75
- <line number="176" hits="1"/>
76
- <line number="178" hits="1"/>
77
- <line number="180" hits="1"/>
78
- <line number="181" hits="1" branch="true" condition-coverage="100% (2/2)"/>
79
- <line number="182" hits="1"/>
80
- <line number="184" hits="1"/>
81
- <line number="186" hits="1"/>
82
- <line number="187" hits="1" branch="true" condition-coverage="100% (2/2)"/>
83
- <line number="188" hits="1"/>
84
- <line number="189" hits="1"/>
85
- <line number="191" hits="1"/>
86
- <line number="193" hits="1" branch="true" condition-coverage="100% (2/2)"/>
87
- <line number="194" hits="1"/>
88
- <line number="196" hits="1"/>
89
- <line number="199" hits="1"/>
90
- <line number="207" hits="1"/>
91
- <line number="216" hits="1"/>
92
- <line number="217" hits="1"/>
93
- <line number="218" hits="1"/>
94
- <line number="228" hits="1"/>
95
- <line number="229" hits="1"/>
96
- <line number="230" hits="1"/>
97
- <line number="231" hits="1"/>
98
- <line number="232" hits="1"/>
99
- <line number="233" hits="1"/>
100
- <line number="234" hits="1"/>
101
- <line number="235" hits="1"/>
102
- <line number="236" hits="1"/>
103
- <line number="237" hits="1"/>
104
- <line number="238" hits="1"/>
105
- <line number="239" hits="1" branch="true" condition-coverage="100% (2/2)"/>
106
- <line number="240" hits="1"/>
107
- <line number="241" hits="1"/>
108
- <line number="242" hits="1" branch="true" condition-coverage="100% (2/2)"/>
109
- <line number="251" hits="1" branch="true" condition-coverage="100% (2/2)"/>
110
- <line number="261" hits="1"/>
111
- <line number="262" hits="1" branch="true" condition-coverage="100% (2/2)"/>
112
- <line number="268" hits="1"/>
113
- <line number="269" hits="1"/>
114
- <line number="270" hits="1"/>
115
- <line number="271" hits="1"/>
116
- <line number="272" hits="1"/>
117
- <line number="273" hits="1"/>
118
- <line number="274" hits="1"/>
119
- <line number="276" hits="1"/>
120
- <line number="277" hits="1" branch="true" condition-coverage="100% (2/2)"/>
121
- <line number="278" hits="1"/>
122
- <line number="279" hits="1"/>
123
- <line number="280" hits="1" branch="true" condition-coverage="100% (2/2)"/>
124
- <line number="281" hits="1"/>
125
- <line number="282" hits="1"/>
126
- <line number="283" hits="1"/>
127
- <line number="285" hits="1"/>
128
- <line number="286" hits="1"/>
129
- <line number="287" hits="1"/>
130
- <line number="288" hits="1"/>
131
- <line number="289" hits="1" branch="true" condition-coverage="100% (2/2)"/>
132
- <line number="290" hits="1"/>
133
- <line number="296" hits="1"/>
134
- <line number="301" hits="1"/>
135
- <line number="302" hits="1"/>
136
- <line number="304" hits="1"/>
137
- <line number="305" hits="1"/>
138
- <line number="307" hits="1"/>
139
- <line number="308" hits="1" branch="true" condition-coverage="100% (2/2)"/>
140
- <line number="309" hits="1"/>
141
- <line number="310" hits="1"/>
142
- <line number="311" hits="1"/>
143
- <line number="312" hits="1" branch="true" condition-coverage="100% (2/2)"/>
144
- <line number="313" hits="1"/>
145
- <line number="317" hits="1"/>
146
- <line number="324" hits="1"/>
147
- <line number="325" hits="1"/>
148
- <line number="327" hits="1"/>
149
- <line number="328" hits="1" branch="true" condition-coverage="100% (2/2)"/>
150
- <line number="329" hits="1"/>
151
- <line number="331" hits="1"/>
152
- <line number="332" hits="1" branch="true" condition-coverage="100% (2/2)"/>
153
- <line number="350" hits="1"/>
154
- <line number="351" hits="1"/>
155
- <line number="352" hits="1" branch="true" condition-coverage="100% (2/2)"/>
156
- <line number="353" hits="1"/>
157
- <line number="354" hits="1"/>
158
- <line number="363" hits="1"/>
159
- <line number="364" hits="1"/>
160
- <line number="370" hits="1"/>
161
- <line number="372" hits="1"/>
162
- <line number="373" hits="1" branch="true" condition-coverage="100% (2/2)"/>
163
- <line number="374" hits="1"/>
164
- <line number="380" hits="1"/>
165
- <line number="382" hits="1"/>
166
- <line number="383" hits="1" branch="true" condition-coverage="100% (2/2)"/>
167
- <line number="429" hits="1"/>
168
- <line number="430" hits="1"/>
169
- <line number="431" hits="1"/>
170
- <line number="432" hits="1"/>
171
- <line number="433" hits="1"/>
172
- <line number="434" hits="1"/>
173
- <line number="435" hits="1"/>
174
- <line number="436" hits="1"/>
175
- <line number="437" hits="1"/>
176
- <line number="438" hits="1"/>
177
- <line number="439" hits="1"/>
178
- <line number="441" hits="1"/>
179
- <line number="442" hits="1"/>
180
- <line number="446" hits="1" branch="true" condition-coverage="100% (2/2)"/>
181
- <line number="447" hits="1"/>
182
- <line number="451" hits="1" branch="true" condition-coverage="100% (2/2)"/>
183
- <line number="452" hits="1"/>
184
- <line number="454" hits="1" branch="true" condition-coverage="100% (2/2)"/>
185
- <line number="455" hits="1"/>
186
- <line number="458" hits="1" branch="true" condition-coverage="100% (2/2)"/>
187
- <line number="459" hits="1" branch="true" condition-coverage="100% (2/2)"/>
188
- <line number="461" hits="1" branch="true" condition-coverage="100% (2/2)"/>
189
- <line number="462" hits="1" branch="true" condition-coverage="100% (2/2)"/>
190
- <line number="464" hits="1" branch="true" condition-coverage="100% (2/2)"/>
191
- <line number="465" hits="1" branch="true" condition-coverage="100% (2/2)"/>
192
- <line number="467" hits="1" branch="true" condition-coverage="100% (2/2)"/>
193
- <line number="468" hits="1" branch="true" condition-coverage="100% (2/2)"/>
194
- <line number="470" hits="1" branch="true" condition-coverage="100% (2/2)"/>
195
- <line number="471" hits="1" branch="true" condition-coverage="100% (2/2)"/>
196
- <line number="473" hits="1" branch="true" condition-coverage="100% (2/2)"/>
197
- <line number="474" hits="1" branch="true" condition-coverage="100% (2/2)"/>
198
- <line number="477" hits="1" branch="true" condition-coverage="100% (2/2)"/>
199
- <line number="478" hits="1" branch="true" condition-coverage="100% (2/2)"/>
200
- <line number="480" hits="1" branch="true" condition-coverage="100% (2/2)"/>
201
- <line number="481" hits="1" branch="true" condition-coverage="100% (2/2)"/>
202
- <line number="485" hits="1" branch="true" condition-coverage="100% (2/2)"/>
203
- <line number="486" hits="1" branch="true" condition-coverage="100% (2/2)"/>
204
- <line number="488" hits="1" branch="true" condition-coverage="100% (2/2)"/>
205
- <line number="489" hits="1" branch="true" condition-coverage="100% (2/2)"/>
206
- <line number="491" hits="1" branch="true" condition-coverage="100% (2/2)"/>
207
- <line number="492" hits="1" branch="true" condition-coverage="100% (2/2)"/>
208
- <line number="494" hits="1"/>
209
- <line number="495" hits="1"/>
210
- <line number="497" hits="1"/>
211
- <line number="498" hits="1" branch="true" condition-coverage="100% (2/2)"/>
212
- <line number="539" hits="1"/>
213
- <line number="541" hits="1"/>
214
- <line number="543" hits="1"/>
215
- <line number="544" hits="1"/>
216
- <line number="545" hits="1"/>
217
- <line number="547" hits="1" branch="true" condition-coverage="100% (2/2)"/>
218
- <line number="548" hits="1"/>
219
- <line number="550" hits="1"/>
220
- <line number="551" hits="1"/>
221
- <line number="552" hits="1"/>
222
- <line number="554" hits="1" branch="true" condition-coverage="100% (2/2)"/>
223
- <line number="555" hits="1" branch="true" condition-coverage="100% (2/2)"/>
224
- <line number="556" hits="1"/>
225
- <line number="557" hits="1"/>
226
- <line number="560" hits="1"/>
227
- <line number="561" hits="1" branch="true" condition-coverage="100% (2/2)"/>
228
- <line number="562" hits="1"/>
229
- <line number="563" hits="1"/>
230
- <line number="565" hits="1"/>
231
- <line number="566" hits="1" branch="true" condition-coverage="100% (2/2)"/>
232
- <line number="568" hits="1"/>
233
- <line number="569" hits="1"/>
234
- <line number="570" hits="1"/>
235
- <line number="573" hits="1"/>
236
- <line number="574" hits="1"/>
237
- <line number="575" hits="1"/>
238
- <line number="577" hits="1"/>
239
- <line number="578" hits="1" branch="true" condition-coverage="100% (2/2)"/>
240
- <line number="584" hits="1" branch="true" condition-coverage="100% (2/2)"/>
241
- <line number="587" hits="1"/>
242
- <line number="588" hits="1"/>
243
- <line number="589" hits="1" branch="true" condition-coverage="100% (2/2)"/>
244
- <line number="590" hits="1"/>
245
- <line number="591" hits="1"/>
246
- <line number="592" hits="1"/>
247
- <line number="593" hits="1"/>
248
- <line number="594" hits="1"/>
249
- <line number="596" hits="1"/>
250
- <line number="597" hits="1" branch="true" condition-coverage="100% (2/2)"/>
251
- <line number="598" hits="1"/>
252
- <line number="601" hits="1"/>
253
- <line number="602" hits="1"/>
254
- <line number="603" hits="1"/>
255
- <line number="606" hits="1"/>
256
- <line number="607" hits="1"/>
257
- <line number="608" hits="1"/>
258
- <line number="611" hits="1"/>
259
- <line number="612" hits="1"/>
260
- <line number="619" hits="1"/>
261
- </lines>
262
- </class>
263
- </classes>
264
- </package>
265
- </packages>
266
- </coverage>