def mock_walk(*args, **kwargs):
    """Returns mocked walk (with followlinks=True) of directory that looks
       like:

        dotfiles-danny -> friends/danny/dotfiles-user
        dotfiles-user
            inputrc
            sub
                somerc
        dotfiles-z-team
            sub
                somerc
        friends
            danny
                dotfiles-user
                    inputrc

        example usage:

        with patch('os.walk', new=mock_walk):
            for f in os.walk('/'):
                print f
    """

    items = [('.', ['dotfiles-danny', 'dotfiles-user',
                    'dotfiles-z-team', 'friends'], []),
             ('./dotfiles-danny', [], ['inputrc']),
             ('./dotfiles-user', ['sub'], ['inputrc']),
             ('./dotfiles-user/sub', [], ['somerc']),
             ('./dotfiles-z-team', ['sub'], []),
             ('./dotfiles-z-team/sub', [], ['somerc']),
             ('./friends', ['danny'], []),
             ('./friends/danny', ['dotfiles-user'], []),
             ('./friends/danny/dotfiles-user', [], ['inputrc'])]
    return iter(items)