diff options
author | Richard Maw <richard.maw@codethink.co.uk> | 2014-07-11 14:25:40 +0100 |
---|---|---|
committer | Richard Maw <richard.maw@codethink.co.uk> | 2014-07-11 14:25:40 +0100 |
commit | ce1fedb4e5ab82105853c4f3a8e05fb83f62c18e (patch) | |
tree | 6a738f64b517992eed10c3d5891bbb27840202e4 /yarns/branches-workspaces.yarn | |
parent | fe4486c1ec69c520a2c0aee7b52c35b57808120e (diff) | |
parent | 597f2a19363b7e91b928d814627c9236779998fb (diff) | |
download | morph-ce1fedb4e5ab82105853c4f3a8e05fb83f62c18e.tar.gz |
Merge remote-tracking branch 'origin/baserock/richardmaw/S11284/morphologies-by-path-v4'
Reviewed-by: Sam Thursfield
Reviewed-by: Lars Wirzenius
Diffstat (limited to 'yarns/branches-workspaces.yarn')
-rw-r--r-- | yarns/branches-workspaces.yarn | 52 |
1 files changed, 11 insertions, 41 deletions
diff --git a/yarns/branches-workspaces.yarn b/yarns/branches-workspaces.yarn index c542994a..96fbbd12 100644 --- a/yarns/branches-workspaces.yarn +++ b/yarns/branches-workspaces.yarn @@ -58,15 +58,6 @@ Checking out a system branch should fail, if the branch doesn't exist. WHEN the user attempts to check out the system branch called foo THEN morph failed -Checking out a system branch should also fail if the repository does -not contain any system morphologies. - - SCENARIO checking out a system branch with no systems - GIVEN a workspace - AND a git server - WHEN the user attempts to check out from a repository with no systems - THEN morph failed - We can, instead, create a new system branch, off master. SCENARIO branch off master @@ -187,21 +178,21 @@ 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, stratum test-stratum refs test-chunk in master + THEN in branch foo, stratum strata/test-stratum.morph 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, stratum test-stratum refs test-chunk in foo + WHEN the user edits the chunk test-chunk in branch foo + THEN in branch foo, stratum strata/test-stratum.morph refs test-chunk in foo AND the edited chunk test:test-chunk has git branch foo Editing a morphology should not cause it to start having repo or ref fields when referring to strata, when it didn't before. - AND in branch foo, system test-system refers to test-stratum without repo - AND in branch foo, system test-system refers to test-stratum without ref + AND in branch foo, system systems/test-system.morph refers to test-stratum without repo + AND in branch foo, system systems/test-system.morph refers to test-stratum without ref Status of system branch checkout -------------------------------- @@ -216,7 +207,7 @@ repositories referenced in the system branch. WHEN the user creates a system branch called foo THEN morph reports no outstanding changes in foo - WHEN the user edits the chunk test-chunk in the stratum test-stratum in the system test-system in branch foo + WHEN the user edits the chunk test-chunk in branch foo THEN morph reports changes in foo in test:morphs only WHEN creating file foo in test/test-chunk in branch foo @@ -241,7 +232,7 @@ branch checkout. GIVEN a workspace AND a git server WHEN the user creates a system branch called foo - AND 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 branch foo AND running shell command in each repo in foo THEN morph ran command in test/morphs in foo AND morph ran command in test/test-chunk in foo @@ -266,8 +257,8 @@ unpetrify and verify that we have all the same refs as before. Petrifying a morphology should not cause it to start having repo or ref fields when referring to strata, when it didn't before. - AND in branch foo, system test-system refers to test-stratum without repo - AND in branch foo, system test-system refers to test-stratum without ref + AND in branch foo, system systems/test-system.morph refers to test-stratum without repo + AND in branch foo, system systems/test-system.morph refers to test-stratum without ref Unpetrify must put the morphologies back in the same logical state they were in before. @@ -278,29 +269,8 @@ were in before. Unpetrifying a morphology should not cause it to start having repo or ref fields when referring to strata, when it didn't before. - AND in branch foo, system test-system refers to test-stratum without repo - AND in branch foo, system test-system refers to test-stratum without ref - -Tagging system branches ------------------------ - -`morph tag` creates a git tag in the system branch's root repository, -and a petrified commit the tag refers to. It does not petrify the -system branch itself, only the tag. - - SCENARIO morph tags a system branch - GIVEN a workspace - AND a git server - WHEN the user creates a system branch called foo - AND the user tags the system branch called foo as test123 - THEN morph tag test123 in foo is an annotated git tag - AND morph tag test123 in foo refers to a petrified commit - AND foo is not petrified - -Creating a tag twice should fail. - - WHEN the user attempts to tag the system branch called foo as test123 - THEN morph failed + AND in branch foo, system systems/test-system.morph refers to test-stratum without repo + AND in branch foo, system systems/test-system.morph refers to test-stratum without ref Generating a manifest works |