TestIdUtils

public final class TestIdUtils
extends Object

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


Una classe di utilità per la sanificazione degli ID test per ResultDB.

Questa classe viene copiata dalla codebase di ResultDB per la compatibilità.

Riepilogo

Costanti

String JUNIT_PACKAGE_PLACEHOLDER

String PYUNIT_PACKAGE_PLACEHOLDER

Metodi pubblici

static String escapeCaseName(String caseName)

Esegue l'escape di un nome di test in un nome di test ResultDB valido.

Costanti

JUNIT_PACKAGE_PLACEHOLDER

public static final String JUNIT_PACKAGE_PLACEHOLDER

Constant Value: "no-package-name"

PYUNIT_PACKAGE_PLACEHOLDER

public static final String PYUNIT_PACKAGE_PLACEHOLDER

Constant Value: "__main__"

Metodi pubblici

escapeCaseName

public static String escapeCaseName (String caseName)

Esegue l'escape di un nome di test in un nome di test ResultDB valido. Questa funzionalità di escape NON supporta i nomi di test con la funzionalità di gerarchia di profondità estesa di ResultDB, che considera i due punti come separatore per le parti del nome di test.

L'escape viene eseguito nel seguente modo:

  1. Se il nome di test contiene caratteri non stampabili, un carattere iniziale non consentito ([ !"#$%&'()*+,]) o termina con "\u2051", viene eseguito l'escape speciale:
    1. Viene eseguito l'escape delle barre rovesciate (`\`) in `\\`.
    2. Viene eseguito l'escape di un carattere iniziale con una barra rovesciata se è uno dei caratteri [ !"#$%&'()*+,] (U+0020 to U+002C).
    3. I caratteri non stampabili vengono convertiti nella sequenza di escape Unicode letterale (\\uXXXX o \\UXXXXXXXX).
    4. Viene aggiunto un suffisso speciale "\u2051".
  2. Sul risultato del passaggio 1 (o sulla stringa originale se il passaggio 1 è stato saltato), vengono eseguite le seguenti sostituzioni:
    1. Viene eseguito l'escape delle barre rovesciate (`\`) in `\\`.
    2. Viene eseguito l'escape dei due punti (`:`) in `\:`.

Ciò significa che è possibile eseguire l'escape delle barre rovesciate.

NON UTILIZZARE questa funzione se utilizzi la funzionalità di gerarchia di profondità estesa di ResultDB.

Questo metodo è l'equivalente Java della funzione EscapeCaseName in chrome/engprod/resultdb/go/utils/test_id.go. La funzionalità di round trip con la funzione UnescapeCaseName di Go viene testata nella codebase di Go.

Parametri
caseName String

Risultati
String