While a lambda is still processing (archive unpacking etc), the lambda state should be set to "Pending" (currently "Active") and invocations to that lambda should fail (currently, it can end up in a inconsistent state in this case, like lambdas being executed without layers).

Lambda state should reflect the current internal state, and invocations should fail if not active.
)
            response = self.client.get(
                "{0}/functions/{1}".format(API_PATH_ROOT, self.FUNCTION_NAME)
            )
            result = json.loads(response.get_data())
            self.assertTrue("Concurrency" in result)
            self.assertDictEqual(concurrency_data, result["Concurrency"])
    def test_list_tags(self):
        with self.app.test_request_context():
            self._create_function(self.FUNCTION_NAME, self.TAGS)
            arn = lambda_api.func_arn(self.FUNCTION_NAME)
            response = self.client.get("{0}/tags/{1}".format(API_PATH_ROOT, arn))
            result = json.loads(response.get_data())
            self.assertTrue("Tags" in result)
            self.assertDictEqual(self.TAGS, result["Tags"])
    def test_tag_resource(self):
        with self.app.test_request_context():
            self._create_function(self.FUNCTION_NAME)
            arn = lambda_api.func_arn(self.FUNCTION_NAME)
            response = self.client.get("{0}/tags/{1}".format(API_PATH_ROOT, arn))
            result = json.loads(response.get_data())
            self.assertTrue("Tags" in result)
            self.assertDictEqual({}, result["Tags"])
            self.client.post(
                "{0}/tags/{1}".format(API_PATH_ROOT, arn),
                data=json.dumps({"Tags": self.TAGS}),
            )
            response = self.client.get("{0}/tags/{1}".format(API_PATH_ROOT, arn))
            result = json.loads(response.get_data())
            self.assertTrue("Tags" in result)