mirror of
https://github.com/git/git
synced 2024-08-27 19:49:21 +00:00
![Eric Sunshine](/assets/img/avatar_default.png)
Unlike "FOO=bar cmd" one-shot environment variable assignments which exist only for the invocation of 'cmd', those assigned by "FOO=bar shell_func" exist within the running shell and continue to do so until the process exits (or are explicitly unset). It is unlikely that this behavior was intended by the test author. In these particular tests, the "FOO=bar shell_func" invocations are already in subshells, so the assignments don't last too long, don't appear to harm subsequent commands in the same subshells, and don't affect other tests in the same scripts, however, the usage is nevertheless misleading and poor practice, so fix the tests to assign and export the environment variables in the usual fashion. Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
81 lines
1.5 KiB
Bash
Executable file
81 lines
1.5 KiB
Bash
Executable file
#!/bin/sh
|
|
|
|
test_description='git p4 errors'
|
|
|
|
. ./lib-git-p4.sh
|
|
|
|
test_expect_success 'start p4d' '
|
|
start_p4d
|
|
'
|
|
|
|
test_expect_success 'add p4 files' '
|
|
(
|
|
cd "$cli" &&
|
|
echo file1 >file1 &&
|
|
p4 add file1 &&
|
|
p4 submit -d "file1"
|
|
)
|
|
'
|
|
|
|
# after this test, the default user requires a password
|
|
test_expect_success 'error handling' '
|
|
git p4 clone --dest="$git" //depot@all &&
|
|
(
|
|
cd "$git" &&
|
|
P4PORT=: test_must_fail git p4 submit 2>errmsg
|
|
) &&
|
|
p4 passwd -P newpassword &&
|
|
(
|
|
P4PASSWD=badpassword &&
|
|
export P4PASSWD &&
|
|
test_must_fail git p4 clone //depot/foo 2>errmsg &&
|
|
grep -q "failure accessing depot.*P4PASSWD" errmsg
|
|
)
|
|
'
|
|
|
|
test_expect_success 'ticket logged out' '
|
|
P4TICKETS="$cli/tickets" &&
|
|
echo "newpassword" | p4 login &&
|
|
(
|
|
cd "$git" &&
|
|
test_commit "ticket-auth-check" &&
|
|
p4 logout &&
|
|
test_must_fail git p4 submit 2>errmsg &&
|
|
grep -q "failure accessing depot" errmsg
|
|
)
|
|
'
|
|
|
|
test_expect_success 'create group with short ticket expiry' '
|
|
P4TICKETS="$cli/tickets" &&
|
|
echo "newpassword" | p4 login &&
|
|
p4_add_user short_expiry_user &&
|
|
p4 -u short_expiry_user passwd -P password &&
|
|
p4 group -i <<-EOF &&
|
|
Group: testgroup
|
|
Timeout: 3
|
|
Users: short_expiry_user
|
|
EOF
|
|
|
|
p4 users | grep short_expiry_user
|
|
'
|
|
|
|
test_expect_success 'git operation with expired ticket' '
|
|
P4TICKETS="$cli/tickets" &&
|
|
P4USER=short_expiry_user &&
|
|
echo "password" | p4 login &&
|
|
(
|
|
cd "$git" &&
|
|
git p4 sync &&
|
|
sleep 5 &&
|
|
test_must_fail git p4 sync 2>errmsg &&
|
|
grep "failure accessing depot" errmsg
|
|
)
|
|
'
|
|
|
|
test_expect_success 'kill p4d' '
|
|
kill_p4d
|
|
'
|
|
|
|
|
|
test_done
|