TestIdUtils

public final class TestIdUtils
extends Object

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


คลาสยูทิลิตี้สำหรับล้างข้อมูลรหัสการทดสอบสำหรับ ResultDB

คลาสนี้คัดลอกจากฐานของโค้ด ResultDB เพื่อความเข้ากันได้

สรุป

ค่าคงที่

String JUNIT_PACKAGE_PLACEHOLDER

String PYUNIT_PACKAGE_PLACEHOLDER

เมธอดสาธารณะ

static String escapeCaseName(String caseName)

แปลงชื่อเคสเป็นชื่อเคส ResultDB ที่ถูกต้อง

ค่าคงที่

JUNIT_PACKAGE_PLACEHOLDER

public static final String JUNIT_PACKAGE_PLACEHOLDER

ค่าคงที่: "no-package-name"

PYUNIT_PACKAGE_PLACEHOLDER

public static final String PYUNIT_PACKAGE_PLACEHOLDER

ค่าคงที่: "__main__"

เมธอดสาธารณะ

escapeCaseName

public static String escapeCaseName (String caseName)

แปลงชื่อเคสเป็นชื่อเคส ResultDB ที่ถูกต้อง การแปลงนี้ไม่รองรับชื่อเคส ที่มีฟีเจอร์ลำดับชั้นความลึกเพิ่มเติมของ ResultDB ซึ่งถือว่าโคลอนเป็นตัวคั่นสำหรับส่วนต่างๆ ของชื่อเคส

การแปลงทำได้ดังนี้

  1. หากชื่อเคสมีอักขระที่ไม่สามารถพิมพ์ได้ อักขระนำหน้าที่ไม่ได้รับอนุญาต ([ !"#$%&'()*+,]) หรือลงท้ายด้วย "\u2051" ระบบจะทำการแปลงแบบพิเศษดังนี้:
    1. แบ็กสแลช (`\`) จะแปลงเป็น `\\`
    2. อักขระนำหน้าจะแปลงด้วยแบ็กสแลชหากเป็นหนึ่งใน [ !"#$%&'()*+,] (U+0020 ถึง U+002C)
    3. อักขระที่ไม่สามารถพิมพ์ได้จะแปลงเป็นลำดับการแปลง Unicode แบบ Literal (\\uXXXX หรือ \\UXXXXXXXX)
    4. ระบบจะเพิ่มคำต่อท้ายพิเศษ "\u2051"
  2. ในผลลัพธ์ของขั้นตอนที่ 1 (หรือสตริงเดิมหากข้ามขั้นตอนที่ 1) ระบบจะทำการแทนที่ดังนี้
    1. แบ็กสแลช (`\`) จะแปลงเป็น `\\`
    2. โคลอน (`:`) จะแปลงเป็น `\:`

ซึ่งหมายความว่าแบ็กสแลชอาจแปลง 2 ครั้ง

อย่าใช้ฟังก์ชันนี้หากคุณใช้ฟีเจอร์ลำดับชั้นความลึกเพิ่มเติมของ ResultDB

เมธอดนี้เทียบเท่ากับฟังก์ชัน EscapeCaseName ใน chrome/engprod/resultdb/go/utils/test_id.go ใน Java ความสามารถในการไปกลับด้วยฟังก์ชัน UnescapeCaseName ของ Go ได้รับการทดสอบในฐานของโค้ด Go

พารามิเตอร์
caseName String

การคืนสินค้า
String