CreateChangesTriggeringGc: Support existing project

Add a CreateChangesTriggeringGcWithProject scenario that wraps the
CreateChangesTriggeringGc scenario. Do so for the latter to run without
creating its own project anymore. This way, have a scenario that creates
its own project (and deletes it after) still, plus one that doesn't.

This is so that it becomes possible to run the CreateChangesTriggeringGc
scenario with a pre-configured test project. Say, for jgit client
testing purposes in gc-executor, such as changing core.trustfolderstat
and comparing the resulting gc completion times. Local testing showed
roughly doubling gc completion times when changing trustfolderstat to
false, for example.

For the CheckProjectStatisticsUpToGc scenario step to end up reporting
OKs in that trustfolderstat=false case, double its allotted
MaxSecondsForGcToComplete time. This only makes the step or scenario
last 10 seconds longer in other cases.

Make some CreateChangesTriggeringGc fields accessible from a so reusing
scenario, here by CreateChangesTriggeringGcWithProject.

Make CreateChangesTriggeringGc a ProjectSimulation, now that its test
PROJECT name comes either from the aggregating scenario or the execution
environment. Before this change, that project name was automatically
generated, i.e., set to that scenario's class name by default.

Change-Id: I035e32e52fec85b21699a6963be392e5a3639d27
4 files changed