Correctly register test field trials in parser unittest

Previously, field_trial::FindFullName would be called before
field_trial::FieldTrialsAllowedInScopeForTesting was initialized because
member variables will be initialized after the initializer list.

Bug: webrtc:14154
Change-Id: I69098259a21a55a268d5b45949c3ed02e82ae001
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/295541
Commit-Queue: Emil Lundmark <lndmrk@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39420}
This commit is contained in:
Emil Lundmark 2023-02-28 16:08:03 +01:00 committed by WebRTC LUCI CQ
parent db1fae46d8
commit 227574804f

View File

@ -30,10 +30,12 @@ struct DummyExperiment {
FieldTrialParameter<std::string> hash =
FieldTrialParameter<std::string>("h", "a80");
field_trial::FieldTrialsAllowedInScopeForTesting k{{kDummyExperiment}};
DummyExperiment()
: DummyExperiment(field_trial::FindFullName(kDummyExperiment)) {}
: DummyExperiment([] {
field_trial::FieldTrialsAllowedInScopeForTesting k{
{kDummyExperiment}};
return field_trial::FindFullName(kDummyExperiment);
}()) {}
explicit DummyExperiment(absl::string_view field_trial) {
ParseFieldTrial({&enabled, &factor, &retries, &size, &ping, &hash},