def METHOD_NAME(mock_get_sha, mock_repo):
    # given
    mock_repo.git.diff.return_value = "some_diff"
    mock_repo.head.name = "HEAD"
    # when
    uncommitted_changes = get_uncommitted_changes(mock_repo)
    # then
    assert mock_repo.git.diff.call_count == 2
    assert mock_get_sha.call_count == 1
    assert uncommitted_changes.diff_head == "some_diff"
    assert uncommitted_changes.upstream_sha == "test_sha"
    assert uncommitted_changes.diff_upstream == "some_diff"