civics-cdf-validator 1.47.dev11__tar.gz → 1.48.dev0__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.
- {civics_cdf_validator-1.47.dev11/civics_cdf_validator.egg-info → civics_cdf_validator-1.48.dev0}/PKG-INFO +1 -1
- {civics_cdf_validator-1.47.dev11 → civics_cdf_validator-1.48.dev0/civics_cdf_validator.egg-info}/PKG-INFO +1 -1
- {civics_cdf_validator-1.47.dev11 → civics_cdf_validator-1.48.dev0}/rules.py +30 -0
- {civics_cdf_validator-1.47.dev11 → civics_cdf_validator-1.48.dev0}/version.py +1 -1
- {civics_cdf_validator-1.47.dev11 → civics_cdf_validator-1.48.dev0}/CONTRIBUTING.md +0 -0
- {civics_cdf_validator-1.47.dev11 → civics_cdf_validator-1.48.dev0}/LICENSE-2.0.txt +0 -0
- {civics_cdf_validator-1.47.dev11 → civics_cdf_validator-1.48.dev0}/MANIFEST.in +0 -0
- {civics_cdf_validator-1.47.dev11 → civics_cdf_validator-1.48.dev0}/README.md +0 -0
- {civics_cdf_validator-1.47.dev11 → civics_cdf_validator-1.48.dev0}/__init__.py +0 -0
- {civics_cdf_validator-1.47.dev11 → civics_cdf_validator-1.48.dev0}/base.py +0 -0
- {civics_cdf_validator-1.47.dev11 → civics_cdf_validator-1.48.dev0}/civics_cdf_validator.egg-info/SOURCES.txt +0 -0
- {civics_cdf_validator-1.47.dev11 → civics_cdf_validator-1.48.dev0}/civics_cdf_validator.egg-info/dependency_links.txt +0 -0
- {civics_cdf_validator-1.47.dev11 → civics_cdf_validator-1.48.dev0}/civics_cdf_validator.egg-info/entry_points.txt +0 -0
- {civics_cdf_validator-1.47.dev11 → civics_cdf_validator-1.48.dev0}/civics_cdf_validator.egg-info/requires.txt +0 -0
- {civics_cdf_validator-1.47.dev11 → civics_cdf_validator-1.48.dev0}/civics_cdf_validator.egg-info/top_level.txt +0 -0
- {civics_cdf_validator-1.47.dev11 → civics_cdf_validator-1.48.dev0}/gpunit_rules.py +0 -0
- {civics_cdf_validator-1.47.dev11 → civics_cdf_validator-1.48.dev0}/loggers.py +0 -0
- {civics_cdf_validator-1.47.dev11 → civics_cdf_validator-1.48.dev0}/office_utils.py +0 -0
- {civics_cdf_validator-1.47.dev11 → civics_cdf_validator-1.48.dev0}/setup.cfg +0 -0
- {civics_cdf_validator-1.47.dev11 → civics_cdf_validator-1.48.dev0}/setup.py +0 -0
- {civics_cdf_validator-1.47.dev11 → civics_cdf_validator-1.48.dev0}/stats.py +0 -0
- {civics_cdf_validator-1.47.dev11 → civics_cdf_validator-1.48.dev0}/validator.py +0 -0
|
@@ -4106,6 +4106,35 @@ class OfficeHolderSubFeedDatesAreSequential(base.DateRule):
|
|
|
4106
4106
|
)
|
|
4107
4107
|
|
|
4108
4108
|
|
|
4109
|
+
class FeedInactiveDateIsLatestDate(base.BaseRule):
|
|
4110
|
+
"""Partner feeds should have a FeedInactiveDate that occurs after the FullDeliveryDate and EndDate."""
|
|
4111
|
+
|
|
4112
|
+
def elements(self):
|
|
4113
|
+
return ["Feed"]
|
|
4114
|
+
|
|
4115
|
+
def check(self, element):
|
|
4116
|
+
if element_has_text(element.find("FeedInactiveDate")):
|
|
4117
|
+
feed_inactive_date = base.PartialDate.init_partial_date(
|
|
4118
|
+
element.find("FeedInactiveDate").text
|
|
4119
|
+
)
|
|
4120
|
+
for full_delivery_date_element in element.iter("FullDeliveryDate"):
|
|
4121
|
+
full_delivery_date = base.PartialDate.init_partial_date(
|
|
4122
|
+
full_delivery_date_element.text
|
|
4123
|
+
)
|
|
4124
|
+
if feed_inactive_date.is_older_than(full_delivery_date) > 0:
|
|
4125
|
+
raise loggers.ElectionError.from_message(
|
|
4126
|
+
"FeedInactiveDate is older than FullDeliveryDate",
|
|
4127
|
+
[element],
|
|
4128
|
+
)
|
|
4129
|
+
for end_date_element in element.iter("EndDate"):
|
|
4130
|
+
end_date = base.PartialDate.init_partial_date(end_date_element.text)
|
|
4131
|
+
if feed_inactive_date.is_older_than(end_date) > 0:
|
|
4132
|
+
raise loggers.ElectionError.from_message(
|
|
4133
|
+
"FeedInactiveDate is older than EndDate",
|
|
4134
|
+
[element],
|
|
4135
|
+
)
|
|
4136
|
+
|
|
4137
|
+
|
|
4109
4138
|
class FeedHasValidCountryCode(base.BaseRule):
|
|
4110
4139
|
"""Feeds should have valid country code."""
|
|
4111
4140
|
|
|
@@ -4470,6 +4499,7 @@ METADATA_RULES = (
|
|
|
4470
4499
|
Encoding,
|
|
4471
4500
|
FeedHasValidCountryCode,
|
|
4472
4501
|
FeedIdsAreUnique,
|
|
4502
|
+
FeedInactiveDateIsLatestDate,
|
|
4473
4503
|
FeedInactiveDateSetForNonEvergreenFeed,
|
|
4474
4504
|
FeedTypeHasValidFeedLongevity,
|
|
4475
4505
|
NoSourceDirPathBeforeInitialDeliveryDate,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|