Exemplo n.º 1
0
    def test_cloudant_bluemix_context_helper_raise_error_for_missing_iam_and_creds(
            self):
        """
        Test that the cloudant_bluemix context helper raises a CloudantClientException
        when the IAM key, username, and password are missing in the VCAP_SERVICES env variable.
        """
        instance_name = 'Cloudant NoSQL DB-lv'
        vcap_services = {
            'cloudantNoSQLDB': [{
                'credentials': {
                    'host': '{0}.cloudant.com'.format(self.account),
                    'port': 443,
                    'url': self.url
                },
                'name': instance_name,
            }]
        }

        try:
            with cloudant_bluemix(vcap_services,
                                  instance_name=instance_name) as c:
                self.assertIsInstance(c, Cloudant)
                self.assertIsInstance(c.r_session, requests.Session)
        except CloudantClientException as err:
            self.assertEqual(
                'Invalid service: IAM API key or username/password credentials are required.',
                str(err))
Exemplo n.º 2
0
    def test_cloudant_bluemix_context_helper(self):
        """
        Test that the cloudant_bluemix context helper works as expected.
        """
        instance_name = 'Cloudant NoSQL DB-lv'
        vcap_services = {
            'cloudantNoSQLDB': [{
                'credentials': {
                    'username': self.user,
                    'password': self.pwd,
                    'host': '{0}.cloudant.com'.format(self.account),
                    'port': 443,
                    'url': self.url
                },
                'name': instance_name,
            }]
        }

        try:
            with cloudant_bluemix(vcap_services,
                                  instance_name=instance_name) as c:
                self.assertIsInstance(c, Cloudant)
                self.assertIsInstance(c.r_session, requests.Session)
                self.assertEquals(c.session()['userCtx']['name'], self.user)
        except Exception as err:
            self.fail('Exception {0} was raised.'.format(str(err)))
Exemplo n.º 3
0
def connect_cloudant():
    is_bluemix_env = os.getenv("cloudant_env") == "bluemix"

    global __cloudant_client__

    if is_bluemix_env:
        with cloudant_bluemix(
                os.getenv("VCAP_SERVICES")) as __cloudant_client__:
            print("connected to cloudant bluemix service!!")
    else:
        __cloudant_client__ = Cloudant("admin",
                                       "pass",
                                       url="http://localhost:7080",
                                       connect=True,
                                       auto_renew=True)
        print("connected to local cloudant instance!!")