Commit Graph

15 Commits

Author SHA1 Message Date
Michael Muré
ca720f165c
cache,bug,identity: structural change
- bug doesn't commit identities anymore, only make sure they are commit
- cache use an IdentityResolver to load bugs with identities from the cache (deps injection)
- IdentityCache now are identity.Interface
2020-10-04 20:39:10 +02:00
Michael Muré
88ad7e606f
repository: remove tie to Bug, improved and reusable testing
- allow the creation of arbitrary Lamport clocks, freeing the way to new entities and removing Bug specific (upper layer) code.
- generalize the memory-only and persisted Lamport clocks behind a common interface
- rework the tests to provide reusable testing code for a Repo, a Clock, a Config, opening a path to add a new Repo implementation more easily
- test previously untested components with those new tests

Note: one problem found during this endeavor is that `identity.Version` also need to store one time + Lamport time for each other Entity (Bug, config, PR ...). This could possibly done without breaking change but it would be much easier to wait for https://github.com/MichaelMure/git-bug-migration to happen.
2020-06-26 19:14:22 +02:00
Michael Muré
ed2ac793e9
bug: use NeedCommit() in the interface, drop HasPendingOp() 2019-11-19 00:28:06 +01:00
Michael Muré
c7abac388a repo: refactor how test repo are created/cleaned 2019-05-27 21:14:55 +02:00
Michael Muré
a40dcc8a6a bug: don't make bug actions drive identity actions
Turns out it was a mistake, who is suprised ?

It leaks the abstraction and it's generally much cleaner to let the cache layer make both calls
2019-03-25 22:06:01 +01:00
Michael Muré
475b7b4c49
a round of cleanup 2019-03-01 22:52:53 +01:00
Michael Muré
d2483d83dd
identity: I can compile again !! 2019-03-01 22:40:24 +01:00
Michael Muré
cd7ed7ff9e
identity: add more test for serialisation and push/pull/merge + fixes 2019-03-01 22:40:24 +01:00
Michael Muré
14b240af8f
identity: more cleaning and fixes after a code review 2019-03-01 22:40:22 +01:00
Michael Muré
d10c76469d
identity: somewhat getting closer ! 2019-03-01 22:40:21 +01:00
Michael Muré
feab9412df
WIP identity in git 2019-03-01 22:35:36 +01:00
Rafael Ascensão
8dcd3d21cd tests: configure user ident in repos used by tests
Some git operations require the user to have an identity configured and
will exit with failure if none is set (or if git can't guess it). As a
direct consequence of this, the test suite may fail depending on the
user local configuration.

The error itself is justified as regular users *should* configure their
identity themselves. However, when building in chrooted environments
it's unlikely the git identity will be set making the test suite fail
unnecessarily.

To prevent such unnecessary failures, let's make a dummy identity for
repos created and used by the test suite.
2018-12-10 22:14:27 +00:00
Michael Muré
6ea6f3614e
bug: in op convenience function, return the new op to be able to set metadata later 2018-10-01 23:31:16 +02:00
Michael Muré
d450c7a883
use more testify, fix unchecked errors 2018-09-29 21:09:09 +02:00
Michael Muré
1bf268cebc
merge package operations into bug, they are tightly coupled anyway 2018-09-29 00:51:54 +02:00