def test_can_see_subscriptions(self): self.login(self.VIEWER_EMAIL) response = self.get_json(feconf.PREFERENCES_DATA_URL) self.assertEqual(len(response['subscription_list']), 0) # Subscribe to user. subscription_services.subscribe_to_creator(self.viewer_id, self.owner_id) response = self.get_json(feconf.PREFERENCES_DATA_URL) self.assertEqual(len(response['subscription_list']), 1) self.assertEqual(response['subscription_list'][0]['creator_username'], self.OWNER_USERNAME) # Unsubscribe from user. subscription_services.unsubscribe_from_creator(self.viewer_id, self.owner_id) response = self.get_json(feconf.PREFERENCES_DATA_URL) self.assertEqual(len(response['subscription_list']), 0)
def test_can_see_subscribers(self): self.login(self.OWNER_EMAIL) response = self.get_json(feconf.DASHBOARD_DATA_URL) self.assertEqual(len(response['subscribers_list']), 0) # Subscribe to creator. subscription_services.subscribe_to_creator( self.viewer_id, self.owner_id) response = self.get_json(feconf.DASHBOARD_DATA_URL) self.assertEqual(len(response['subscribers_list']), 1) self.assertEqual( response['subscribers_list'][0]['subscriber_username'], self.VIEWER_USERNAME) # Unsubscribe from creator. subscription_services.unsubscribe_from_creator( self.viewer_id, self.owner_id) response = self.get_json(feconf.DASHBOARD_DATA_URL) self.assertEqual(len(response['subscribers_list']), 0)
def test_unsubscribe_from_creator(self): self.assertEqual(self._get_all_subscribers_of_creator(self.owner_id), []) # Add subscribers to a creator. subscription_services.subscribe_to_creator(USER_ID, self.owner_id) subscription_services.subscribe_to_creator(USER_ID_2, self.owner_id) self.assertEqual(self._get_all_subscribers_of_creator(self.owner_id), [USER_ID, USER_ID_2]) self.assertEqual(self._get_all_creators_subscribed_to(USER_ID), [self.owner_id]) self.assertEqual(self._get_all_creators_subscribed_to(USER_ID_2), [self.owner_id]) # Unsubscribing a user from a creator. subscription_services.unsubscribe_from_creator(USER_ID, self.owner_id) self.assertEqual(self._get_all_subscribers_of_creator(self.owner_id), [USER_ID_2]) self.assertEqual(self._get_all_creators_subscribed_to(USER_ID), []) # Unsubscribing the same user again has no effect. subscription_services.unsubscribe_from_creator(USER_ID, self.owner_id) self.assertEqual(self._get_all_subscribers_of_creator(self.owner_id), [USER_ID_2]) self.assertEqual(self._get_all_creators_subscribed_to(USER_ID), []) # Unsubscribing the second user. subscription_services.unsubscribe_from_creator(USER_ID_2, self.owner_id) self.assertEqual(self._get_all_subscribers_of_creator(self.owner_id), []) self.assertEqual(self._get_all_creators_subscribed_to(USER_ID_2), [])
def test_unsubscribe_from_creator(self): self.assertEqual(self._get_all_subscribers_of_creators( self.owner_id), []) # Add subscribers to a creator. subscription_services.subscribe_to_creator(USER_ID, self.owner_id) subscription_services.subscribe_to_creator(USER_ID_2, self.owner_id) self.assertEqual( self._get_all_subscribers_of_creators(self.owner_id), [ USER_ID, USER_ID_2]) self.assertEqual( self._get_all_creators_subscribed_to(USER_ID), [self.owner_id]) self.assertEqual( self._get_all_creators_subscribed_to(USER_ID_2), [self.owner_id]) # Unsubscribing a user from a creator. subscription_services.unsubscribe_from_creator(USER_ID, self.owner_id) self.assertEqual( self._get_all_subscribers_of_creators(self.owner_id), [USER_ID_2]) self.assertEqual( self._get_all_creators_subscribed_to(USER_ID), []) # Unsubscribing the same user again has no effect. subscription_services.unsubscribe_from_creator(USER_ID, self.owner_id) self.assertEqual( self._get_all_subscribers_of_creators(self.owner_id), [USER_ID_2]) self.assertEqual( self._get_all_creators_subscribed_to(USER_ID), []) # Unsubscribing the second user. subscription_services.unsubscribe_from_creator( USER_ID_2, self.owner_id) self.assertEqual(self._get_all_subscribers_of_creators( self.owner_id), []) self.assertEqual( self._get_all_creators_subscribed_to(USER_ID_2), [])
def post(self): creator_id = user_services.get_user_id_from_username( self.payload.get('creator_username')) subscription_services.unsubscribe_from_creator(self.user_id, creator_id) self.render_json(self.values)
def post(self): creator_id = user_services.get_user_id_from_username( self.payload.get('creator_username')) subscription_services.unsubscribe_from_creator(self.user_id, creator_id) self.render_json(self.values)