diff options
author | Richard Maw <richard.maw@codethink.co.uk> | 2013-01-25 15:17:44 +0000 |
---|---|---|
committer | Richard Maw <richard.maw@codethink.co.uk> | 2013-01-25 16:02:20 +0000 |
commit | 7751ea4a71523fed39cefa6c9300f91e2446243b (patch) | |
tree | 62a84ed6aa7b23bb8f346f659fcdfa9c7629bc0b | |
parent | 81426ef48f85b32804f744e6fcf89b6372325dc7 (diff) | |
download | morph-7751ea4a71523fed39cefa6c9300f91e2446243b.tar.gz |
Add test for committed removes being tracked
This was the only case found which was fixed by the previous commit.
-rwxr-xr-x | tests.as-root/building-a-system-branch-picks-up-committed-removes.script | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/tests.as-root/building-a-system-branch-picks-up-committed-removes.script b/tests.as-root/building-a-system-branch-picks-up-committed-removes.script new file mode 100755 index 00000000..9a17a40e --- /dev/null +++ b/tests.as-root/building-a-system-branch-picks-up-committed-removes.script @@ -0,0 +1,56 @@ +#!/bin/bash +# Copyright (C) 2013 Codethink Limited +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; version 2 of the License. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +set -e + +. "$SRCDIR/tests.as-root/setup-build" +KERNEL_BRANCH=baserock/builds/123456789/AABBCCDDE + +cd "$DATADIR/workspace/branch1/test:kernel-repo" +git checkout --quiet master +echo Use Morph >README +git add README +git commit --quiet -m 'Add README' + +# Build the linux system from the system branch. +cd "$DATADIR/workspace" +"$SRCDIR/scripts/test-morph" build linux-system + +# Make a change elsewhere to be pulled in +PEER_REPO="$DATADIR/peer-kernel" +git clone --quiet "file://$DATADIR/workspace/branch1/test:kernel-repo" "$PEER_REPO" +cd "$PEER_REPO" +git checkout --quiet -b fix +# remove useless README +git rm --quiet README +git commit --quiet -m 'change stuff' +git checkout --quiet master +git merge --no-ff fix >/dev/null 2>&1 + +# Pull a commit in to the linux morphology. +cd "$DATADIR/workspace/branch1/test:kernel-repo" +git remote add peer "file://$PEER_REPO" +git remote update >/dev/null 2>&1 +git merge --quiet peer/master + +# Build the linux system again without comitting. +cd "$DATADIR/workspace" +"$SRCDIR/scripts/test-morph" build linux-system +cd branch1/test:kernel-repo + +# Check whether the new morphology exists in the temporary build ref +cd "$DATADIR/workspace/branch1/test:kernel-repo" +! git cat-file blob "$KERNEL_BRANCH:README" >/dev/null 2>&1 |