summaryrefslogtreecommitdiff
path: root/yarns/branches-workspaces.yarn
diff options
context:
space:
mode:
Diffstat (limited to 'yarns/branches-workspaces.yarn')
-rw-r--r--yarns/branches-workspaces.yarn78
1 files changed, 3 insertions, 75 deletions
diff --git a/yarns/branches-workspaces.yarn b/yarns/branches-workspaces.yarn
index b928f628..15d31cb1 100644
--- a/yarns/branches-workspaces.yarn
+++ b/yarns/branches-workspaces.yarn
@@ -187,21 +187,14 @@ all the refs are unchanged.
GIVEN a workspace
AND a git server
WHEN the user creates a system branch called foo
- THEN in branch foo, system test-system refs test-stratum in master
- AND in branch foo, stratum test-stratum refs test-chunk in master
-
-Then edit the stratum.
-
- WHEN the user edits the stratum test-stratum in the system test-system in branch foo
- THEN in branch foo, system test-system refs test-stratum in foo
+ THEN in branch foo, stratum test-stratum refs test-chunk in master
Edit the chunk. We make use of special knowledge here: `test:test-chunk`
is a chunk repository created in the mocked git server, for testing
purposes.
WHEN the user edits the chunk test-chunk in the stratum test-stratum in the system test-system in branch foo
- THEN in branch foo, system test-system refs test-stratum in foo
- AND in branch foo, stratum test-stratum refs test-chunk in foo
+ THEN in branch foo, stratum test-stratum refs test-chunk in foo
AND the edited chunk test:test-chunk has git branch foo
Morph edit should only work with a system argument.
@@ -228,9 +221,7 @@ repositories referenced in the system branch.
THEN morph reports no outstanding changes in foo
WHEN the user edits the stratum test-stratum in the system test-system in branch foo
- THEN morph reports changes in foo in test:morphs only
-
- WHEN the user edits the chunk test-chunk in the stratum test-stratum in the system test-system in branch foo
+ AND the user edits the chunk test-chunk in the stratum test-stratum in the system test-system in branch foo
THEN morph reports changes in foo in test:morphs only
WHEN creating file foo in test:test-chunk in branch foo
@@ -300,69 +291,6 @@ Creating a tag twice should fail.
WHEN the user attempts to tag the system branch called foo as test123
THEN morph failed
-Working with null repositories and refs
----------------------------------------
-
-It is convenient to not explicitly name the repository and branch of
-a stratum morphology, instead assuming it is the same as the current
-morphology.
-
-These can be checked out like normal system branches.
-
- SCENARIO check out an existing system branch with null refs
- GIVEN a workspace
- AND a git server
- AND null refs for local strata
- WHEN the user checks out the system branch called master
- THEN the system branch master is checked out
-
-Likewise we can also create new system branches from these, and we
-wouldn't need to worry about changing the system branch ref.
-
-
- SCENARIO branch off a system branch with null refs
- GIVEN a workspace
- AND a git server
- AND null refs for local strata
- WHEN the user creates a system branch called foo
- THEN the system branch foo is checked out
-
-When we edit a morphology with null refs, they stay null.
-
- SCENARIO editing with null refs
- GIVEN a workspace
- AND a git server
- AND null refs for local strata
-
-When creating the branch, the refs remain null.
-
- WHEN the user creates a system branch called foo
- THEN in branch foo, system test-system refs test-stratum in None
-
-After editing the stratum they remain null.
-
- WHEN the user edits the stratum test-stratum in the system test-system in branch foo
- THEN in branch foo, system test-system refs test-stratum in None
-
-Refs to chunks are still altered as usual
-
- WHEN the user edits the chunk test-chunk in the stratum test-stratum in the system test-system in branch foo
- THEN in branch foo, system test-system refs test-stratum in None
- AND in branch foo, stratum test-stratum refs test-chunk in foo
- AND the edited chunk test:test-chunk has git branch foo
-
-Petrifying also leaves null refs unmolested
-
- SCENARIO morph petrifies null refs
- GIVEN a workspace
- AND a git server
- AND null refs for local strata
- WHEN the user creates a system branch called foo
- AND the user pushes the system branch called foo to the git server
- AND remembering all refs in foo
- AND petrifying foo
- THEN in branch foo, system test-system refs test-stratum in None
-
Generating a manifest works
SCENARIO morph generates a manifest