New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
01-subtree.t in vendors/t/fcm-update – NEMO

source: vendors/t/fcm-update/01-subtree.t @ 10669

Last change on this file since 10669 was 10669, checked in by nicolasmartin, 5 years ago

Import latest FCM release from Github into the repository for testing

File size: 4.2 KB
Line 
1#!/bin/bash
2# ------------------------------------------------------------------------------
3# (C) British Crown Copyright 2006-17 Met Office.
4#
5# This file is part of FCM, tools for managing and building source code.
6#
7# FCM is free software: you can redistribute it and/or modify
8# it under the terms of the GNU General Public License as published by
9# the Free Software Foundation, either version 3 of the License, or
10# (at your option) any later version.
11#
12# FCM is distributed in the hope that it will be useful,
13# but WITHOUT ANY WARRANTY; without even the implied warranty of
14# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15# GNU General Public License for more details.
16#
17# You should have received a copy of the GNU General Public License
18# along with FCM. If not, see <http://www.gnu.org/licenses/>.
19# ------------------------------------------------------------------------------
20# Basic tests for "fcm update".
21#-------------------------------------------------------------------------------
22. $(dirname $0)/test_header
23#-------------------------------------------------------------------------------
24check_svn_version
25tests 7
26#-------------------------------------------------------------------------------
27setup
28init_repos
29init_merge_branches merge1 merge2 $REPOS_URL
30export SVN_EDITOR="sed -i 1i\foo"
31cd $TEST_DIR/wc
32#-------------------------------------------------------------------------------
33# Tests fcm update -r PREV
34svn switch -q $ROOT_URL/branches/dev/Share/merge1
35TEST_KEY=$TEST_KEY_BASE-r-PREV
36cd module
37run_pass "$TEST_KEY" fcm update -r PREV <<__IN__
38y
39__IN__
40merge_sort "$TEST_DIR/$TEST_KEY.out" "$TEST_DIR/$TEST_KEY.sorted.out"
41file_cmp "$TEST_KEY.sorted.out" "$TEST_KEY.sorted.out" <<__OUT__
42update: status of "$TEST_DIR/wc":
43?       $TEST_DIR/wc/unversioned_file
44update: continue?
45Enter "y" or "n" (or just press <return> for "n"):
46Updating '$TEST_DIR/wc':
47D    $TEST_DIR/wc/added_directory
48D    $TEST_DIR/wc/added_file
49D    tree_conflict_file
50U    $TEST_DIR/wc/lib/python/info/poems.py
51U    $TEST_DIR/wc/subroutine/hello_sub_dummy.h
52U    hello_constants.f90
53U    hello_constants.inc
54U    hello_constants_dummy.inc
55Updated to revision 4.
56__OUT__
57file_cmp "$TEST_KEY.err" "$TEST_KEY.err" </dev/null
58#-------------------------------------------------------------------------------
59# Tests fcm update
60rm ../unversioned_file
61TEST_KEY=$TEST_KEY_BASE-normal
62run_pass "$TEST_KEY" fcm update <<__IN__
63y
64__IN__
65sed -n "/^  *\*/p" "$TEST_DIR/$TEST_KEY.out" | sort -k 3 -o \
66    "$TEST_DIR/$TEST_KEY.update-status.sorted.out"
67file_cmp "$TEST_KEY.update-status.sorted.out" \
68         "$TEST_KEY.update-status.sorted.out" <<__OUT__
69        *            $TEST_DIR/wc/added_directory
70        *            $TEST_DIR/wc/added_directory/hello_constants.f90
71        *            $TEST_DIR/wc/added_directory/hello_constants.inc
72        *            $TEST_DIR/wc/added_directory/hello_constants_dummy.inc
73        *            $TEST_DIR/wc/added_file
74        *            $TEST_DIR/wc/module/tree_conflict_file
75        *        4   $TEST_DIR/wc
76        *        4   $TEST_DIR/wc/lib/python/info/poems.py
77        *        4   $TEST_DIR/wc/module
78        *        4   $TEST_DIR/wc/module/hello_constants.f90
79        *        4   $TEST_DIR/wc/module/hello_constants.inc
80        *        4   $TEST_DIR/wc/module/hello_constants_dummy.inc
81        *        4   $TEST_DIR/wc/subroutine/hello_sub_dummy.h
82__OUT__
83sed -i "/^  *\*/d" "$TEST_DIR/$TEST_KEY.out"
84merge_sort "$TEST_DIR/$TEST_KEY.out" "$TEST_DIR/$TEST_KEY.sorted.out"
85file_cmp "$TEST_KEY.sorted.out" "$TEST_KEY.sorted.out" <<__OUT__
86update: status of "$TEST_DIR/wc":
87update: continue?
88Enter "y" or "n" (or just press <return> for "n"):
89Updating '$TEST_DIR/wc':
90A    $TEST_DIR/wc/added_directory
91A    $TEST_DIR/wc/added_directory/hello_constants.f90
92A    $TEST_DIR/wc/added_directory/hello_constants.inc
93A    $TEST_DIR/wc/added_directory/hello_constants_dummy.inc
94A    $TEST_DIR/wc/added_file
95A    tree_conflict_file
96U    $TEST_DIR/wc/lib/python/info/poems.py
97U    $TEST_DIR/wc/subroutine/hello_sub_dummy.h
98U    hello_constants.f90
99U    hello_constants.inc
100U    hello_constants_dummy.inc
101Updated to revision 9.
102__OUT__
103file_cmp "$TEST_KEY.err" "$TEST_KEY.err" </dev/null
104teardown
105#-------------------------------------------------------------------------------
Note: See TracBrowser for help on using the repository browser.