A git fixture using the fixtures API for writing tests for tools that use git.
Go to file
Darragh Bailey fa9bd28914 Split code for reuse and refactor for code style
To make it easier to reuse GitTree elsewhere move outside of the
gitfixture and reference.

Instead of treating the functions in utils as private to indicate they
shouldn't be relied upon outside of the package, switch utils to
indicate that it should not relied upon to clear up some IDE warnings
on use of private functions.

Finally avoid use of potentially mutable default params.

Change-Id: I3365a2c49ff570bd9e5eba5f53b4b3908dddd2b6
2019-05-22 15:57:49 +01:00
doc Merge "Initial fixture for git" 2018-06-29 09:38:10 +00:00
fixtures_git Split code for reuse and refactor for code style 2019-05-22 15:57:49 +01:00
tests Split code for reuse and refactor for code style 2019-05-22 15:57:49 +01:00
.gitignore Initial fixture for git 2018-06-28 17:02:20 +01:00
.gitreview OpenDev Migration Patch 2019-04-19 19:50:11 +00:00
.stestr.conf Initial fixture for git 2018-06-28 17:02:20 +01:00
.zuul.yaml Fix jobs 2019-05-20 09:10:03 +02:00
DESCRIPTION Initial project files for fixtures-git 2018-04-16 17:34:26 +01:00
LICENSE Initial project files for fixtures-git 2018-04-16 17:34:26 +01:00
README.rst Initial project files for fixtures-git 2018-04-16 17:34:26 +01:00
requirements.txt Initial fixture for git 2018-06-28 17:02:20 +01:00
setup.cfg Initial project files for fixtures-git 2018-04-16 17:34:26 +01:00
setup.py Initial project files for fixtures-git 2018-04-16 17:34:26 +01:00
test-requirements.txt Fix jobs 2019-05-20 09:10:03 +02:00
tox.ini Initial fixture for git 2018-06-28 17:02:20 +01:00

README.rst

What is fixtures-git?

Fixtures git is an open source Python library that adheres to the fixtures API defined by https://pypi.python.org/pypi/fixtures

It was initially developed as part of git-upstream tests to make it easy to construct git repositories with various layouts rather than trying to mock/stub git's behaviour.

It is intended to allow developers to define a git repo layout using a list definition of the commit nodes.

To install:

pip install fixtures-git

See also https://pypi.python.org/pypi/fixtures-git

You can also install directly from source:

git clone https://git.openstack.org/openstack/fixtures-git.git
cd fixtures-git
pip install .

Developers

Bug reports:

Repository:

Cloning:

git clone https://git.openstack.org/cgit/openstack/fixtures-git

or

git clone https://github.com/openstack/fixtures-git

A virtual environment is recommended for development. For example, git-upstream may be installed from the top level directory:

virtualenv .venv
source .venv/bin/activate
pip install -r test-requirements.txt -e .

Patches are submitted via Gerrit at:

Please do not submit GitHub pull requests, they will be automatically closed.

More details on how you can contribute is available on the wiki at:

Writing a patch

All code submissions must be pep8 and pyflakes clean. CI will automatically reject them if they are not. The easiest way to do that is to run tox before submitting code for review in Gerrit. It will run pep8 and pyflakes in the same manner as the automated test suite that will run on proposed patchsets.

Support

Is via the git-upstream community which is is found on the #git-upstream channel on chat.freenode.net

You can also join via this IRC URL or use the Freenode IRC webchat.