class_docstr: Test class to test ThreatStream functionalities
class_docstr_tok: ["Test","class","to","test","ThreatStream","functionalities"]
docstr: ThreatStream - Load API creds from SSM with invalid JSON
docstr_tok: ["ThreatStream","-","Load","API","creds","from","SSM","with","invalid","JSON"]
code: def test_load_api_creds_invalid_json(self):
      """ThreatStream - Load API creds from SSM with invalid JSON"""
      boto3.client("ssm").put_parameter(
          Name=ThreatStream.CRED_PARAMETER_NAME,
          Value="invalid_value",
          Type="SecureString",
          Overwrite=True,
      )
      self.threatstream._load_api_creds()
  
imports: from datetime import datetime
  import os
  import boto3
  from botocore.exceptions import ClientError
  from mock import Mock, patch
  from moto import mock_ssm
  from nose.tools import assert_equal, raises
  from streamalert.shared.config import load_config
  from streamalert.threat_intel_downloader.exceptions import ThreatStreamCredsError, ThreatStreamLambdaInvokeError, ThreatStreamRequestsError
  from streamalert.threat_intel_downloader.main import ThreatStream
  from tests.unit.streamalert.apps.test_helpers import MockLambdaClient
  from tests.unit.streamalert.shared.test_config import get_mock_lambda_context
  from tests.unit.streamalert.threat_intel_downloader.test_helpers import put_mock_params
label_desc: Use image node_id 10 for calling the TestThreatStream obj's underlying member method code with example usage: obj.test_load_api_creds_invalid_json() without return types