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

Commit a56c05ee authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Ravenwooded NamedLock." into main

parents 3ee0a48a af1cef03
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -26,6 +26,7 @@ import java.util.Objects;
 *
 * @hide
 */
@android.ravenwood.annotation.RavenwoodKeepWholeClass
public final class NamedLock {

    private final String mName;
+13 −15
Original line number Diff line number Diff line
@@ -15,8 +15,6 @@
 */
package com.android.internal.util;

import static com.android.internal.util.NamedLock.create;

import static com.google.common.truth.Truth.assertWithMessage;

import static org.junit.Assert.assertThrows;
@@ -27,43 +25,43 @@ public final class NamedLockTest {

    @Test
    public void testFactoryMethod_null() {
        assertThrows(NullPointerException.class, () -> create(null));
        assertThrows(NullPointerException.class, () -> NamedLock.create(null));
    }

    @Test
    public void testFactoryMethod_empty() {
        assertThrows(IllegalArgumentException.class, () -> create(""));
        assertThrows(IllegalArgumentException.class, () -> create(" "));
        assertThrows(IllegalArgumentException.class, () -> create("\t"));
        assertThrows(IllegalArgumentException.class, () -> NamedLock.create(""));
        assertThrows(IllegalArgumentException.class, () -> NamedLock.create(" "));
        assertThrows(IllegalArgumentException.class, () -> NamedLock.create("\t"));
    }

    @Test
    public void testFactoryMethod_startsWithSpace() {
        assertThrows(IllegalArgumentException.class,
                () -> create(" NAME, Y U START WITH SPACE?"));
                () -> NamedLock.create(" NAME, Y U START WITH SPACE?"));
    }

    @Test
    public void testFactoryMethod_startsWithTab() {
        assertThrows(IllegalArgumentException.class,
                () -> create("\tNAME, Y U START WITH TAB?"));
                () -> NamedLock.create("\tNAME, Y U START WITH TAB?"));
    }

    @Test
    public void testFactoryMethod_endsWithSpace() {
        assertThrows(IllegalArgumentException.class,
                () -> create("NAME, Y U END WITH SPACE? "));
                () -> NamedLock.create("NAME, Y U END WITH SPACE? "));
    }

    @Test
    public void testFactoryMethod_endsWithTab() {
        assertThrows(IllegalArgumentException.class,
                () -> create("NAME, Y U END WITH TAB?\t"));
                () -> NamedLock.create("NAME, Y U END WITH TAB?\t"));
    }

    @Test
    public void testOneInstance() {
        var namedLock = create("Bond, James Bond");
        var namedLock = NamedLock.create("Bond, James Bond");

        assertWithMessage("create()").that(namedLock).isNotNull();

@@ -73,8 +71,8 @@ public final class NamedLockTest {
    @Test
    public void testMultipleInstances_sameName() {
        String commonName = "Bond, James Bond";
        var namedLock1 = create(commonName);
        var namedLock2 = create(commonName);
        var namedLock1 = NamedLock.create(commonName);
        var namedLock2 = NamedLock.create(commonName);

        assertWithMessage("namedLock1").that(namedLock1).isNotSameInstanceAs(namedLock2);
        assertWithMessage("namedLock1").that(namedLock1).isNotEqualTo(namedLock2);
@@ -83,8 +81,8 @@ public final class NamedLockTest {

    @Test
    public void testMultipleInstances_differentNames() {
        var namedLock1 = create("Bond, James Bond");
        var namedLock2 = create("A Lock has a Name");
        var namedLock1 = NamedLock.create("Bond, James Bond");
        var namedLock2 = NamedLock.create("A Lock has a Name");

        assertWithMessage("namedLock1").that(namedLock1).isNotSameInstanceAs(namedLock2);
        assertWithMessage("namedLock1").that(namedLock1).isNotEqualTo(namedLock2);
+1 −0
Original line number Diff line number Diff line
@@ -658,6 +658,7 @@ com.android.internal.util.IntPair
com.android.internal.util.LineBreakBufferedWriter
com.android.internal.util.LocalLog
com.android.internal.util.MessageUtils
com.android.internal.util.NamedLock
com.android.internal.util.ObjectUtils
com.android.internal.util.Parcelling
com.android.internal.util.ParseUtils