| 
					
				 | 
			
			
				@@ -254,7 +254,7 @@ class test_MongoBackend(AppCase): 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         mock_database.__getitem__.assert_called_once_with(MONGODB_COLLECTION) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         mock_collection.find_one.assert_called_once_with( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             {'_id': sentinel.taskset_id}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        self.assertEqual( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        self.assertItemsEqual( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             ['date_done', 'result', 'task_id'], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             list(ret_val.keys()), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -324,3 +324,42 @@ class test_MongoBackend(AppCase): 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         with self.assertRaises(ImproperlyConfigured): 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             x._get_database() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         db.authenticate.assert_called_with('jerry', 'cere4l') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @patch('celery.backends.mongodb.detect_environment') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    def test_prepare_client_options_for_ver_2(self, m_detect_env): 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        m_detect_env.return_value = 'default' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        with patch('pymongo.version_tuple', new=(2, 6, 3)): 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            options = self.backend._prepare_client_options() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            self.assertDictEqual(options, { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                'max_pool_size': self.backend.max_pool_size, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                'auto_start_request': False 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @patch('celery.backends.mongodb.detect_environment') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    def test_prepare_client_options_for_ver_2_with_gevent(self, m_detect_env): 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        m_detect_env.return_value = 'gevent' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        with patch('pymongo.version_tuple', new=(2, 6, 3)): 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            options = self.backend._prepare_client_options() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            self.assertDictEqual(options, { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                'max_pool_size': self.backend.max_pool_size, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                'auto_start_request': False, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                'use_greenlets': True 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @patch('celery.backends.mongodb.detect_environment') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    def test_prepare_client_options_for_ver_3(self, m_detect_env): 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        m_detect_env.return_value = 'default' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        with patch('pymongo.version_tuple', new=(3, 0, 3)): 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            options = self.backend._prepare_client_options() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            self.assertDictEqual(options, { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                'maxPoolSize': self.backend.max_pool_size 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @patch('celery.backends.mongodb.detect_environment') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    def test_prepare_client_options_for_ver_3_with_gevent(self, m_detect_env): 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        m_detect_env.return_value = 'gevent' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        with patch('pymongo.version_tuple', new=(3, 0, 3)): 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            options = self.backend._prepare_client_options() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            self.assertDictEqual(options, { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                'maxPoolSize': self.backend.max_pool_size 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }) 
			 |