Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d94c9691 authored by Dave Mankoff's avatar Dave Mankoff
Browse files

Ensure FakeSensorManager returns a fake ProximitySensor.

Bug: 142293105
Test: atest SystemUITests
Change-Id: If6d4c51fe27cf279eed9b430ba1d82d78e919246
parent 00e36a17
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -53,13 +53,15 @@ public class DozeFactory {
    private final KeyguardUpdateMonitor mKeyguardUpdateMonitor;
    private final DockManager mDockManager;
    private final IWallpaperManager mWallpaperManager;
    private final ProximitySensor mProximitySensor;

    @Inject
    public DozeFactory(FalsingManager falsingManager, DozeLog dozeLog,
            DozeParameters dozeParameters, BatteryController batteryController,
            AsyncSensorManager asyncSensorManager, AlarmManager alarmManager,
            WakefulnessLifecycle wakefulnessLifecycle, KeyguardUpdateMonitor keyguardUpdateMonitor,
            DockManager dockManager, IWallpaperManager wallpaperManager) {
            DockManager dockManager, IWallpaperManager wallpaperManager,
            ProximitySensor proximitySensor) {
        mFalsingManager = falsingManager;
        mDozeLog = dozeLog;
        mDozeParameters = dozeParameters;
@@ -70,6 +72,7 @@ public class DozeFactory {
        mKeyguardUpdateMonitor = keyguardUpdateMonitor;
        mDockManager = dockManager;
        mWallpaperManager = wallpaperManager;
        mProximitySensor = proximitySensor;
    }

    /** Creates a DozeMachine with its parts for {@code dozeService}. */
@@ -126,7 +129,7 @@ public class DozeFactory {
        boolean allowPulseTriggers = true;
        return new DozeTriggers(context, machine, host, alarmManager, config, params,
                sensorManager, handler, wakeLock, allowPulseTriggers, dockManager,
                new ProximitySensor(context, sensorManager), dozeLog);
                mProximitySensor, dozeLog);

    }

+1 −1
Original line number Diff line number Diff line
@@ -153,7 +153,7 @@ public class DozeSensors {
                        dozeLog),
        };

        mProximitySensor = new ProximitySensor(context, sensorManager);
        mProximitySensor = new ProximitySensor(context.getResources(), sensorManager);

        mProximitySensor.register(
                proximityEvent -> {
+7 −5
Original line number Diff line number Diff line
@@ -16,7 +16,7 @@

package com.android.systemui.util.sensors;

import android.content.Context;
import android.content.res.Resources;
import android.hardware.Sensor;
import android.hardware.SensorEvent;
import android.hardware.SensorEventListener;
@@ -25,6 +25,7 @@ import android.os.Handler;
import android.util.Log;

import com.android.internal.annotations.VisibleForTesting;
import com.android.systemui.DependencyProvider;
import com.android.systemui.R;

import java.util.ArrayList;
@@ -64,9 +65,10 @@ public class ProximitySensor {
    };

    @Inject
    public ProximitySensor(Context context, AsyncSensorManager sensorManager) {
    public ProximitySensor(@DependencyProvider.MainResources Resources resources,
            AsyncSensorManager sensorManager) {
        mSensorManager = sensorManager;
        Sensor sensor = findBrightnessSensor(context);
        Sensor sensor = findBrightnessSensor(resources);

        if (sensor == null) {
            mUsingBrightnessSensor = false;
@@ -106,8 +108,8 @@ public class ProximitySensor {
        registerInternal();
    }

    private Sensor findBrightnessSensor(Context context) {
        String sensorType = context.getString(R.string.doze_brightness_sensor_type);
    private Sensor findBrightnessSensor(Resources resources) {
        String sensorType = resources.getString(R.string.doze_brightness_sensor_type);
        List<Sensor> sensorList = mSensorManager.getSensorList(Sensor.TYPE_ALL);
        Sensor sensor = null;
        for (Sensor s : sensorList) {
+1 −1
Original line number Diff line number Diff line
@@ -83,7 +83,7 @@ public class DozeTriggersTest extends SysuiTestCase {
        mDockManagerFake = mock(DockManager.class);
        AsyncSensorManager asyncSensorManager =
                new AsyncSensorManager(mSensors, null, new Handler());
        mProximitySensor = new FakeProximitySensor(getContext(), asyncSensorManager);
        mProximitySensor = new FakeProximitySensor(getContext().getResources(), asyncSensorManager);

        mTriggers = new DozeTriggers(mContext, mMachine, mHost, mAlarmManager, config, parameters,
                asyncSensorManager, Handler.createAsync(Looper.myLooper()), wakeLock, true,
+3 −3
Original line number Diff line number Diff line
@@ -16,14 +16,14 @@

package com.android.systemui.util.sensors;

import android.content.Context;
import android.content.res.Resources;

public class FakeProximitySensor extends ProximitySensor {
    private boolean mAvailable;
    private boolean mPaused;

    public FakeProximitySensor(Context context, AsyncSensorManager sensorManager) {
        super(context, sensorManager);
    public FakeProximitySensor(Resources resources, AsyncSensorManager sensorManager) {
        super(resources, sensorManager);

        mAvailable = true;
    }
Loading