Started virtual_exclusion.sh v1.0.1 at Fri Feb 3 12:24:01 EST 2017.
ReproDir=/tmp/virtual_exclusions
==============================================================================
Scenario: Virtual Exclusion
Preliminary info: Show versions of p4/p4d on the PATH:
Executing command: p4 -V
Perforce - The Fast Software Configuration Management System.
Copyright 1995-2016 Perforce Software. All rights reserved.
This product includes software developed by the OpenSSL Project
for use in the OpenSSL Toolkit (http://www.openssl.org/)
See 'p4 help legal' for full OpenSSL license information
Version of OpenSSL Libraries: OpenSSL 1.0.2j 26 Sep 2016
Rev. P4/DARWIN90X86_64/2016.2/1468155 (2016/11/28).
Executing command: p4d -V
Perforce - The Fast Software Configuration Management System.
Copyright 1995-2016 Perforce Software. All rights reserved.
This product includes software developed by the OpenSSL Project
for use in the OpenSSL Toolkit (http://www.openssl.org/)
See 'p4 help legal' for full OpenSSL license information
Version of OpenSSL Libraries: OpenSSL 1.0.2j 26 Sep 2016
This product includes software developed by the OpenLDAP Foundation
(http://www.openldap.org/)
This product includes software developed by Computing Services
at Carnegie Mellon University: Cyrus SASL (http://www.cmu.edu/computing/)
See 'p4 help legal' for full Cyrus SASL and OpenLDAP license information
Version of OpenLDAP Libraries: 2.4.44
Version of Cyrus SASL Libraries: 2.1.26
Rev. P4D/DARWIN90X86_64/2016.2/1468155 (2016/11/28).
License: none
Preliminary setup: Spin up a local repo.
Executing command: p4 init -C0 -n
Server ttyler-dvcs-1486142641 saved.
Making and populating sample source tree in main.
Executing command: mkdir -p project/tests goofy_test mac_test
Executing command: p4 switch
main
Executing command: p4 rec
//stream/main/goofy_test/main.c#1 - opened for add
//stream/main/mac_test/main.c#1 - opened for add
//stream/main/project/main.c#1 - opened for add
//stream/main/project/tests/BigDataFile.txt#1 - opened for add
Executing command: p4 submit -d AddedSourceTree.
Submitting change 1.
Locking 4 files ...
add //stream/main/goofy_test/main.c#1
add //stream/main/mac_test/main.c#1
add //stream/main/project/main.c#1
add //stream/main/project/tests/BigDataFile.txt#1
Change 1 submitted.
Showing files in main, big data stuff is here.
goofy_test/main.c
mac_test/main.c
project/main.c
project/tests/BigDataFile.txt
Creating virtual stream to exclude big test data.
Stream //stream/mac_view saved.
Switching to mac_view stream.
Executing command: p4 switch
mac_view
Showing files in mac_view, no big data stuff here.
mac_test/main.c
project/main.c
Next create and populate a dev stream parented directly by main.
Stream //stream/dev saved.
Populate the new dev stream.
branch //stream/dev/goofy_test/main.c#1
branch //stream/dev/mac_test/main.c#1
branch //stream/dev/project/main.c#1
branch //stream/dev/project/tests/BigDataFile.txt#1
4 files branched (change 2).
This dev stream, parented directly by main, branched everything.
Next create a dev stream parented by the mac_view virtual stream.
Stream //stream/mac_dev saved.
Populate the new mac_dev stream.
branch //stream/mac_dev/mac_test/main.c#1
branch //stream/mac_dev/project/main.c#1
2 files branched (change 3).
As expected, big data stuff is not in the dev stream.