def test_view_tasks_twitter_stream_listener_process_retweet_from_screename(self): load_fixture("tests/states.json", kind={"State": State}) load_fixture("tests/questions.json", kind={"Question": Question, "State": State}) twitter_stream_listener = TwitterStreamListener() current_question = Question.get_current_question() # Invalid retweet id twitter_stream_listener.process_retweet_from_screename( current_question, -1, "jrgrafton", "https://pbs.twimg.com// \ profile_images//440698495// \ 9929_128442162134_504357134_ \ 2556732_5649977_n_bigger.jpg", ) users = User.get_all() assert len(users) == 0 # Valid retweet id - new user twitter_stream_listener.process_retweet_from_screename( current_question, current_question.twitterid, "jrgrafton", "https://pbs.twimg.com// \ profile_images//440698495// \ 9929_128442162134_504357134_ \ 2556732_5649977_n_bigger.jpg", ) users = User.get_all() assert len(users) == 1 assert users[0].sway_points == User.get_starting_sway_points() + sway_points_backend["rewteet_poll"] assert "https" in users[0].profile_image_url # Ensure no extra sway given for retweet twitter_stream_listener.process_retweet_from_screename( current_question, current_question.twitterid, "jrgrafton", "https://pbs.twimg.com// \ profile_images//440698495// \ 9929_128442162134_504357134_ \ 2556732_5649977_n_bigger.jpg", ) users = User.get_all() assert len(users) == 1 assert users[0].sway_points == User.get_starting_sway_points() + sway_points_backend["rewteet_poll"] # Test existing user reweet user = User(userid="jrgrafton2", sway_points=30) user.put() # Valid retweet id - new user twitter_stream_listener.process_retweet_from_screename( current_question, current_question.twitterid, "jrgrafton2", "https://pbs.twimg.com// \ profile_images//440698495// \ 9929_128442162134_504357134_ \ 2556732_5649977_n_bigger.jpg", ) users = User.get_all() assert len(users) == 2 assert users[1].sway_points == 30 + sway_points_backend["rewteet_poll"]