This repository was archived by the owner on Aug 30, 2024. It is now read-only.
File tree Expand file tree Collapse file tree 2 files changed +52
-2
lines changed
Expand file tree Collapse file tree 2 files changed +52
-2
lines changed Original file line number Diff line number Diff line change @@ -103,6 +103,44 @@ def test_connect(self):
103103 self .client .disconnect ()
104104 self .assertIsNone (self .client .r_session )
105105
106+ def test_auto_connect (self ):
107+ """
108+ Test connect during client instantiation option.
109+ """
110+ try :
111+ self .set_up_client (auto_connect = True )
112+ self .assertIsInstance (self .client .r_session , requests .Session )
113+ if self .client .admin_party :
114+ self .assertIsNone (self .client .r_session .auth )
115+ else :
116+ self .assertEqual (
117+ self .client .r_session .auth , (self .user , self .pwd )
118+ )
119+ finally :
120+ self .client .disconnect ()
121+ self .assertIsNone (self .client .r_session )
122+
123+ def test_multiple_connect (self ):
124+ """
125+ Test that issuing a connect call to an already connected client does
126+ not cause any issue.
127+ """
128+ try :
129+ self .client .connect ()
130+ self .set_up_client (auto_connect = True )
131+ self .client .connect ()
132+ self .assertIsInstance (self .client .r_session , requests .Session )
133+ if self .client .admin_party :
134+ self .assertIsNone (self .client .r_session .auth )
135+ else :
136+ self .assertEqual (
137+ self .client .r_session .auth , (self .user , self .pwd )
138+ )
139+ finally :
140+ self .client .disconnect ()
141+ self .assertIsNone (self .client .r_session )
142+
143+
106144 def test_session (self ):
107145 """
108146 Test getting session information.
Original file line number Diff line number Diff line change @@ -132,6 +132,9 @@ def setUp(self):
132132 """
133133 Set up test attributes for unit tests targeting a database
134134 """
135+ self .set_up_client ()
136+
137+ def set_up_client (self , auto_connect = False ):
135138 if os .environ .get ('RUN_CLOUDANT_TESTS' ) is None :
136139 admin_party = False
137140 if (os .environ .get ('ADMIN_PARTY' ) and
@@ -140,7 +143,13 @@ def setUp(self):
140143 self .user = os .environ .get ('DB_USER' , None )
141144 self .pwd = os .environ .get ('DB_PASSWORD' , None )
142145 self .url = os .environ ['DB_URL' ]
143- self .client = CouchDB (self .user , self .pwd , admin_party , url = self .url )
146+ self .client = CouchDB (
147+ self .user ,
148+ self .pwd ,
149+ admin_party ,
150+ url = self .url ,
151+ connect = auto_connect
152+ )
144153 else :
145154 self .account = os .environ .get ('CLOUDANT_ACCOUNT' )
146155 self .user = os .environ .get ('DB_USER' )
@@ -152,7 +161,10 @@ def setUp(self):
152161 self .user ,
153162 self .pwd ,
154163 url = self .url ,
155- x_cloudant_user = self .account )
164+ x_cloudant_user = self .account ,
165+ connect = auto_connect
166+ )
167+
156168
157169 def tearDown (self ):
158170 """
You can’t perform that action at this time.
0 commit comments