TestIdUtils

public final class TestIdUtils
extends Object

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


Classe utilitaire permettant de nettoyer les ID de test pour ResultDB.

Cette classe est copiée à partir du code source de ResultDB pour des raisons de compatibilité.

Résumé

Constantes

String JUNIT_PACKAGE_PLACEHOLDER

String PYUNIT_PACKAGE_PLACEHOLDER

Méthodes publiques

static String escapeCaseName(String caseName)

Échappe un nom de cas en un nom de cas ResultDB valide.

Constantes

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__"

Méthodes publiques

escapeCaseName

public static String escapeCaseName (String caseName)

Échappe un nom de cas en un nom de cas ResultDB valide. Cet échappement n'est PAS compatible avec le nom de cas avec la fonctionnalité de hiérarchie de profondeur étendue de ResultDB, qui traite le signe deux-points comme un séparateur pour les parties du nom de cas.

L'échappement s'effectue comme suit :

  1. Si le nom de cas contient des caractères non imprimables, un caractère de début non autorisé ([ !"#$%&'()*+,]) ou se termine par "\u2051", il fait l'objet d'un échappement spécial :
    1. Les barres obliques inverses (`\`) sont échappées en `\\`.
    2. Un caractère de début est échappé avec une barre oblique inverse s'il fait partie de [ !"#$%&'()*+,] (U+0020 à U+002C).
    3. Les caractères non imprimables sont convertis en leur séquence d'échappement Unicode littérale (\\uXXXX ou \\UXXXXXXXX).
    4. Un suffixe spécial "\u2051" est ajouté.
  2. Sur le résultat de l'étape 1 (ou la chaîne d'origine si l'étape 1 a été ignorée), les remplacements suivants sont effectués :
    1. Les barres obliques inverses (`\`) sont échappées en `\\`.
    2. Les signes deux-points (`:`) sont échappés en `\:`.

Cela signifie que les barres obliques inverses peuvent être doublement échappées.

N'UTILISEZ PAS cette fonction si vous utilisez la fonctionnalité de hiérarchie de profondeur étendue de ResultDB.

Cette méthode est l'équivalent Java de la fonction EscapeCaseName dans chrome/engprod/resultdb/go/utils/test_id.go. La capacité d'aller-retour avec la fonction Go UnescapeCaseName est testée dans le code source Go.

Paramètres
caseName String

Renvoie
String