On Fri, Feb 08, 2019 at 07:02:31PM +0000, Luke Diamand wrote:
> +# create a fake version of "p4" which returns a TicketExpiration based
> +# on $EXPIRY, for testing login expiration
> +create_fake_p4() {
> +     (
> +             cd "$git" && mkdir expire-p4 &&
> +             cat >>expire-p4/p4 <<-EOF &&
> +             #!/usr/bin/python

I think this should be $PYTHON_PATH.

> +             import marshal, os, subprocess, sys
> +             if "login" in sys.argv:
> +                 marshal.dump({"foo" : "bar", "code" : "stat", 
> "TicketExpiration" : os.environ["EXPIRY"]}, sys.stdout)
> +             else:
> +                 subprocess.check_call([os.environ["P4"]] + sys.argv[1:])
> +             EOF
> +             chmod 0755 expire-p4/p4
> +     )
> +}
>  
>  test_expect_success 'git operation with expired ticket' '
> -     P4TICKETS="$cli/tickets" &&
> -     P4USER=short_expiry_user &&
> -     echo "password" | p4 login &&
> +     create_fake_p4 &&
> +     echo "newpassword" | p4 login &&
>       (
>               cd "$git" &&
> -             git p4 sync &&
> -             sleep 5 &&
> -             test_must_fail git p4 sync 2>errmsg &&
> -             grep "failure accessing depot" errmsg
> +             P4=$(command -v p4) && export P4 &&
> +             EXPIRY=3600 PATH=$PWD/expire-p4:$PATH git p4 sync &&
> +             EXPIRY=1 PATH=$PWD/expire-p4:$PATH test_must_fail git p4 sync 
> -v 2>errmsg &&
> +             grep "failure accessing depot.*expires in 1 second" errmsg
>       )
>  '
>  
> -- 
> 2.20.1.612.g17ebf93fb6.dirty
> 

Reply via email to