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

Commit 9a7ce69d authored by David Saff's avatar David Saff Committed by Android (Google) Code Review
Browse files

Merge "Reduce log spam from TestableResources" into udc-dev

parents 1acffcbe c8c7200f
Loading
Loading
Loading
Loading
+22 −16
Original line number Diff line number Diff line
@@ -59,6 +59,7 @@ public class TestableResources {
     * Since resource ids are unique there is a single addOverride that will override the value
     * whenever it is gotten regardless of which method is used (i.e. getColor or getDrawable).
     * </p>
     *
     * @param id    The resource id to be overridden
     * @param value The value of the resource, null to cause a {@link Resources.NotFoundException}
     *              when gotten.
@@ -74,15 +75,18 @@ public class TestableResources {
     * cause a {@link Resources.NotFoundException} whereas removing the override will actually
     * switch back to returning the default/real value of the resource.
     * </p>
     * @param id
     */
    public void removeOverride(int id) {
        mOverrides.remove(id);
    }

    private Object answer(InvocationOnMock invocationOnMock) throws Throwable {
        // Only try to override methods with an integer first argument
        if (invocationOnMock.getArguments().length > 0) {
            Object argument = invocationOnMock.getArgument(0);
            if (argument instanceof Integer) {
                try {
            int id = invocationOnMock.getArgument(0);
                    int id = (Integer)argument;
                    int index = mOverrides.indexOfKey(id);
                    if (index >= 0) {
                        Object value = mOverrides.valueAt(index);
@@ -97,6 +101,8 @@ public class TestableResources {
                    // the real implementation.
                    Log.i(TAG, "Falling back to default resources call " + t);
                }
            }
        }
        return invocationOnMock.callRealMethod();
    }
}