File cl_fix-lambda-runtimes-EOL-dates.patch of Package python-cfn-lint.13632

From 3189b0b190c80f9dcd1bd13188baff852e952ca1 Mon Sep 17 00:00:00 2001
From: Chuck Meyer <chuck.meyer@boldpenguin.com>
Date: Tue, 2 Jul 2019 12:58:34 -0400
Subject: [PATCH] Patched date tests and rule descriptions EOL lambda runtimes
 (#999)

---
 .gitignore                                    |  3 ++
 .../resources/lmbd/DeprecatedRuntimeEnd.py    |  2 +-
 .../results/public/lambda-poller.json         | 50 +++++++++----------
 .../results/quickstart/nist_config_rules.json |  9 ++--
 .../lmbd/test_deprecated_runtime_end.py       |  3 ++
 .../lmbd/test_deprecated_runtime_eol.py       |  3 ++
 6 files changed, 38 insertions(+), 32 deletions(-)

diff --git a/.gitignore b/.gitignore
index f8b9373f..54c5859f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -109,3 +109,6 @@ venv.bak/
 
 # vscode
 .vscode/
+
+# osx
+.DS_Store
diff --git a/src/cfnlint/rules/resources/lmbd/DeprecatedRuntimeEnd.py b/src/cfnlint/rules/resources/lmbd/DeprecatedRuntimeEnd.py
index e7c95b5f..9443b0f5 100644
--- a/src/cfnlint/rules/resources/lmbd/DeprecatedRuntimeEnd.py
+++ b/src/cfnlint/rules/resources/lmbd/DeprecatedRuntimeEnd.py
@@ -23,7 +23,7 @@ class DeprecatedRuntimeEnd(DeprecatedRuntime):
     """Check if EOL Lambda Function Runtimes are used"""
     id = 'E2531'
     shortdesc = 'Check if EOL Lambda Function Runtimes are used'
-    description = 'Check if an EOL Lambda Runtime is specified and give a warning if used. '
+    description = 'Check if an EOL Lambda Runtime is specified and give an error if used. '
     source_url = 'https://docs.aws.amazon.com/lambda/latest/dg/runtime-support-policy.html'
     tags = ['resources', 'lambda', 'runtime']
 
diff --git a/test/fixtures/results/public/lambda-poller.json b/test/fixtures/results/public/lambda-poller.json
index 5899e810..2bbb159e 100644
--- a/test/fixtures/results/public/lambda-poller.json
+++ b/test/fixtures/results/public/lambda-poller.json
@@ -1,29 +1,27 @@
-[
-    {
-        "Filename": "test/fixtures/templates/public/lambda-poller.yaml",
-        "Level": "Warning",
-        "Location": {
-            "End": {
-                "ColumnNumber": 14,
-                "LineNumber": 151
-            },
-            "Path": [
-                "Resources",
-                "PollerFunction",
-                "Properties",
-                "Runtime"
-            ],
-            "Start": {
-                "ColumnNumber": 7,
-                "LineNumber": 151
-            }
+[{
+    "Filename": "test/fixtures/templates/public/lambda-poller.yaml",
+    "Level": "Warning",
+    "Location": {
+        "End": {
+            "ColumnNumber": 14,
+            "LineNumber": 151
         },
-        "Message": "EOL runtime (nodejs6.10) specified. Runtime is EOL since 2019-04-30 and updating will be disabled at 2019-06-30, please consider to update to nodejs10.x",
-        "Rule": {
-            "Description": "Check if an EOL Lambda Runtime is specified and give a warning if used. ",
-            "Id": "W2531",
-            "ShortDescription": "Check if EOL Lambda Function Runtimes are used",
-            "Source": "https://docs.aws.amazon.com/lambda/latest/dg/runtime-support-policy.html"
+        "Path": [
+            "Resources",
+            "PollerFunction",
+            "Properties",
+            "Runtime"
+        ],
+        "Start": {
+            "ColumnNumber": 7,
+            "LineNumber": 151
         }
+    },
+    "Message": "EOL runtime (nodejs6.10) specified. Runtime is EOL since 2019-04-30 and updating will be disabled at 2019-06-30, please consider to update to nodejs10.x",
+    "Rule": {
+        "Description": "Check if an EOL Lambda Runtime is specified and give an error if used. ",
+        "Id": "E2531",
+        "ShortDescription": "Check if EOL Lambda Function Runtimes are used",
+        "Source": "https://docs.aws.amazon.com/lambda/latest/dg/runtime-support-policy.html"
     }
-]
+}]
\ No newline at end of file
diff --git a/test/fixtures/results/quickstart/nist_config_rules.json b/test/fixtures/results/quickstart/nist_config_rules.json
index 9ad3b5fb..55810ef8 100644
--- a/test/fixtures/results/quickstart/nist_config_rules.json
+++ b/test/fixtures/results/quickstart/nist_config_rules.json
@@ -1,5 +1,4 @@
-[
-    {
+[{
         "Filename": "test/fixtures/templates/quickstart/nist_config_rules.yaml",
         "Level": "Warning",
         "Location": {
@@ -46,7 +45,7 @@
         },
         "Message": "Deprecated runtime (nodejs) specified. Updating disabled since 2016-10-31, please consider to update to nodejs10.x",
         "Rule": {
-            "Description": "Check if an EOL Lambda Runtime is specified and give a warning if used. ",
+            "Description": "Check if an EOL Lambda Runtime is specified and give an error if used. ",
             "Id": "E2531",
             "ShortDescription": "Check if EOL Lambda Function Runtimes are used",
             "Source": "https://docs.aws.amazon.com/lambda/latest/dg/runtime-support-policy.html"
@@ -126,7 +125,7 @@
         },
         "Message": "Deprecated runtime (nodejs) specified. Updating disabled since 2016-10-31, please consider to update to nodejs10.x",
         "Rule": {
-            "Description": "Check if an EOL Lambda Runtime is specified and give a warning if used. ",
+            "Description": "Check if an EOL Lambda Runtime is specified and give an error if used. ",
             "Id": "E2531",
             "ShortDescription": "Check if EOL Lambda Function Runtimes are used",
             "Source": "https://docs.aws.amazon.com/lambda/latest/dg/runtime-support-policy.html"
@@ -159,4 +158,4 @@
             "Source": "https://github.com/aws-cloudformation/cfn-python-lint/blob/master/docs/cfn-resource-specification.md#valueprimitivetype"
         }
     }
-]
+]
\ No newline at end of file
diff --git a/test/rules/resources/lmbd/test_deprecated_runtime_end.py b/test/rules/resources/lmbd/test_deprecated_runtime_end.py
index 519fa560..9a3e1ccb 100644
--- a/test/rules/resources/lmbd/test_deprecated_runtime_end.py
+++ b/test/rules/resources/lmbd/test_deprecated_runtime_end.py
@@ -14,16 +14,19 @@
   OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
   SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 """
+from datetime import datetime
 from cfnlint.rules.resources.lmbd.DeprecatedRuntimeEnd import DeprecatedRuntimeEnd  # pylint: disable=E0401
 from ... import BaseRuleTestCase
 
 
 class TestDeprecatedRuntimeEnd(BaseRuleTestCase):
     """Test Lambda Deprecated Runtime usage"""
+
     def setUp(self):
         """Setup"""
         super(TestDeprecatedRuntimeEnd, self).setUp()
         self.collection.register(DeprecatedRuntimeEnd())
+        self.collection.rules[0].current_date = datetime(2019, 6, 29)
 
     def test_file_positive(self):
         """Test Positive"""
diff --git a/test/rules/resources/lmbd/test_deprecated_runtime_eol.py b/test/rules/resources/lmbd/test_deprecated_runtime_eol.py
index ff9daaa3..bb978400 100644
--- a/test/rules/resources/lmbd/test_deprecated_runtime_eol.py
+++ b/test/rules/resources/lmbd/test_deprecated_runtime_eol.py
@@ -14,16 +14,19 @@
   OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
   SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 """
+from datetime import datetime
 from cfnlint.rules.resources.lmbd.DeprecatedRuntimeEol import DeprecatedRuntimeEol  # pylint: disable=E0401
 from ... import BaseRuleTestCase
 
 
 class TestDeprecatedRuntimeEol(BaseRuleTestCase):
     """Test Lambda Deprecated Runtime usage"""
+
     def setUp(self):
         """Setup"""
         super(TestDeprecatedRuntimeEol, self).setUp()
         self.collection.register(DeprecatedRuntimeEol())
+        self.collection.rules[0].current_date = datetime(2019, 6, 29)
 
     def test_file_positive(self):
         """Test Positive"""
openSUSE Build Service is sponsored by