TestIdUtils

public final class TestIdUtils
extends Object

java.lang.Object
   ↳ com.android.tradefed.result.resultdb.utils.TestIdUtils


Es una clase de utilidad para sanear los IDs de prueba de ResultDB.

Esta clase se copió del código base de ResultDB para garantizar la compatibilidad.

Resumen

Constantes

String JUNIT_PACKAGE_PLACEHOLDER

String PYUNIT_PACKAGE_PLACEHOLDER

Métodos públicos

static String escapeCaseName(String caseName)

Convierte un nombre de caso en un nombre de caso válido de ResultDB.

Constantes

JUNIT_PACKAGE_PLACEHOLDER

public static final String JUNIT_PACKAGE_PLACEHOLDER

Valor de la constante: "no-package-name"

PYUNIT_PACKAGE_PLACEHOLDER

public static final String PYUNIT_PACKAGE_PLACEHOLDER

Valor de la constante: "__main__"

Métodos públicos

escapeCaseName

public static String escapeCaseName (String caseName)

Convierte un nombre de caso en un nombre de caso válido de ResultDB. Este escape NO admite nombres de casos con la función de jerarquía de profundidad extendida de ResultDB, que trata los dos puntos como separadores de las partes del nombre del caso.

El escape se realiza de la siguiente manera:

  1. Si el nombre del caso contiene caracteres no imprimibles, un carácter inicial no permitido ([!"#$%&'()*+,]) o termina con "\u2051", se somete a un escape especial:
    1. Las barras inversas (“\”) se escapan como “\\”.
    2. Un carácter inicial se escapa con una barra invertida si es uno de [!"#$%&'()*+,] (U+0020 a U+002C).
    3. Los caracteres no imprimibles se convierten en su secuencia de escape Unicode literal (\\uXXXX o \\UXXXXXXXX).
    4. Se agrega un sufijo especial "\u2051".
  2. En el resultado del paso 1 (o en la cadena original si se omitió el paso 1), se realizan los siguientes reemplazos:
    1. Las barras inversas (“\”) se escapan como “\\”.
    2. Los dos puntos (":") se escapan como "\:".

Esto significa que las barras inversas se pueden escapar dos veces.

NO USES esta función si utilizas la función de jerarquía de profundidad extendida de ResultDB.

Este método es el equivalente en Java de la función EscapeCaseName en chrome/engprod/resultdb/go/utils/test_id.go. La capacidad de ida y vuelta con la función UnescapeCaseName de Go se prueba en la base de código de Go.

Parámetros
caseName String

Devuelve
String