예제 #1
0
def test_update_cache_from_populated(mock_slack):
    mock_slack.get_paginated_users.return_value = users_list_response

    update_user_cache()
    assert len(ExternalUser.objects.all()) == 2

    update_user_cache()
    assert len(ExternalUser.objects.all()) == 2
예제 #2
0
def test_update_cache_new_user(mock_slack):
    mock_slack.get_paginated_users.side_effect = [
        users_list_response, users_list_new
    ]

    update_user_cache()
    assert len(ExternalUser.objects.all()) == 2

    update_user_cache()
    assert len(ExternalUser.objects.all()) == 3
예제 #3
0
def test_update_cache_pagination(mock_slack):
    def get_page(limit=0, cursor=None):
        if not cursor:
            return users_list_page_1
        elif cursor == "page2":
            return users_list_page_2

    mock_slack.get_paginated_users.side_effect = get_page
    update_user_cache()

    users = [user.display_name for user in ExternalUser.objects.all()]

    assert users == ["spengler", "Glinda the Fairly Good"]
예제 #4
0
def test_update_cache_from_empty(mock_slack):
    mock_slack.get_paginated_users.return_value = users_list_response

    update_user_cache()

    assert len(ExternalUser.objects.all()) == 2
    cache_user1 = ExternalUser.objects.get(external_id="W012A3CDE")
    assert cache_user1.display_name == "spengler"
    assert cache_user1.full_name == "Egon Spengler"
    assert cache_user1.email == "*****@*****.**"
    assert cache_user1.deleted
    cache_user2 = ExternalUser.objects.get(external_id="U12345678")
    assert cache_user2.display_name == "Glinda the Fairly Good"
    assert cache_user2.full_name == "Glinda Southgood"
    assert cache_user2.email == "*****@*****.**"
    assert not cache_user2.deleted
예제 #5
0
def test_update_cache_excludes_bots(mock_slack):
    mock_slack.get_paginated_users.return_value = users_list_response

    update_user_cache(True)

    assert len(ExternalUser.objects.all()) == 1
예제 #6
0
파일: views.py 프로젝트: mmarchand/response
def cron_daily(request):
    "Handles actions that need to take place every day"
    update_user_cache()
    return HttpResponse()