blob: e80594c4c15b68cb5b1e414df8997ae7fea317e1 [file] [log] [blame]
// Copyright 2023 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
package org.chromium.base.test;
import com.google.auto.service.AutoService;
import org.robolectric.annotation.Config;
import org.robolectric.internal.bytecode.InstrumentationConfiguration;
import org.chromium.base.ResettersForTesting;
import org.chromium.base.test.util.TimeoutTimer;
import org.chromium.testing.local.ChromiumAndroidConfigurer;
/** Tells Robolectric which classes to exclude from its sandbox. */
@AutoService(ChromiumAndroidConfigurer.ExtraConfiguration.class)
public class BaseRobolectricAndroidConfigurer
implements ChromiumAndroidConfigurer.ExtraConfiguration {
@Override
public void withConfig(InstrumentationConfiguration.Builder builder, Config config) {
builder.doNotAcquireClass(BaseRobolectricTestRunner.HelperTestRunner.class)
// Requires access to non-fake SystemClock.
.doNotAcquireClass(TimeoutTimer.class)
// Called from outside of sandbox classloader in BaseRobolectricTestRunner.
.doNotAcquireClass(ResettersForTesting.class);
}
}