def test_remove_all_subscribers(self): collection_name = "shareable_collection" file = open("../test_resources/XooML.xml") StorageServer.add_collection( user_id=self.__account_id, collection_name=collection_name, callback=self.stop, file=file ) response = self.wait() self.assertEqual(StorageResponse.OK, response) SharingController.create_sharing_record(self.__account_id, collection_name, callback=self.stop) sharing_secret = self.wait() SharingController.subscribe_to_sharing_space(self.__subscriber_id, sharing_secret, callback=self.stop) collection_name2 = self.wait(timeout=500) SharingController.remove_all_subscribers(sharing_secret, callback=self.stop) self.wait(timeout=10000) # busy wait for the results of remove all subscribers to become consistent try: self.wait(timeout=5) except Exception: pass SharingController.get_sharing_secret_from_subscriber_info( self.__account_id, collection_name, callback=self.stop ) actual_sharing_secret = self.wait() self.assertTrue(actual_sharing_secret is None) SharingController.get_sharing_secret_from_subscriber_info("second_user", collection_name2, callback=self.stop) actual_sharing_secret = self.wait() self.assertTrue(actual_sharing_secret is None)
def test_remove_all_subscribers_detailed(self): # create collection first_collection_name = "shareable_collection" file = open("../test_resources/XooML.xml") StorageServer.add_collection( user_id=self.__account_id, collection_name=first_collection_name, callback=self.stop, file=file ) response = self.wait() self.assertEqual(StorageResponse.OK, response) # create sharing record SharingController.create_sharing_record(self.__account_id, first_collection_name, callback=self.stop) sharing_secret = self.wait() self.assertTrue(sharing_secret is not None) # subscribe SharingController.subscribe_to_sharing_space(self.__subscriber_id, sharing_secret, callback=self.stop) subscribers_collection_name = self.wait() self.assertTrue(subscribers_collection_name is not None) # remove all subscribers SharingController.remove_all_subscribers(sharing_secret, callback=self.stop) self.wait() # verify removed subscribers from subscriber table SharingController.get_sharing_record_from_subscriber_info( self.__subscriber_id, subscribers_collection_name, callback=self.stop ) sharing_record = self.wait() self.assertTrue(sharing_record is None) SharingController.get_sharing_record_from_subscriber_info( self.__account_id, first_collection_name, callback=self.stop ) sharing_record = self.wait() self.assertTrue(sharing_record is None) # cleanup SharingController.remove_sharing_record_by_secret(sharing_secret, callback=self.stop) self.wait() StorageServer.remove_collection(self.__account_id, first_collection_name, callback=self.stop) self.wait() StorageServer.remove_collection(self.__subscriber_id, subscribers_collection_name, callback=self.stop) self.wait()