llvm/llvm/test/tools/llvm-cov/branch-export-json.test


// RUN: llvm-profdata merge %S/Inputs/branch-showBranchPercentage.proftext -o %t.profdata
// RUN: llvm-cov export --format=text %S/Inputs/branch-showBranchPercentage.o32l -instr-profile %t.profdata | FileCheck %s

// CHECK: "branches":
// CHECK: 14,7,14,15,1,5,0,0,4
// CHECK: 27,8,27,14,1,4,0,0,4
// CHECK: 27,18,27,24,0,1,0,0,4
// CHECK: 27,29,27,36,0,5,0,0,4
// CHECK: 27,40,27,46,2,3,0,0,4
// CHECK: 30,8,30,14,4,1,0,0,4
// CHECK: 30,18,30,24,0,1,0,0,4
// CHECK: 32,8,32,14,4,1,0,0,4
// CHECK: 32,18,32,24,1,3,0,0,4
// CHECK: 34,15,34,20,1,5,0,0,4
// CHECK: 41,5,41,11,1,4,0,0,4
// CHECK: 43,5,43,11,1,4,0,0,4
// CHECK: 45,5,45,11,0,5,0,0,4
// CHECK: 47,5,47,12,3,2,0,0,4
// CHECK: 53,12,53,20,50,5,0,0,4
// CHECK: {"count":30,"covered":26,"notcovered":4,"percent":86.666666666666671}

// Check recursive macro-expansions.
// RUN: llvm-profdata merge %S/Inputs/branch-macros.proftext -o %t.profdata
// RUN: llvm-cov export --format=text %S/Inputs/branch-macros.o32l -instr-profile %t.profdata | FileCheck %s -check-prefix=MACROS

// MACROS: "branches":
// MACROS: 27,10,27,11,0,3,0,0,4
// MACROS: 27,15,27,16,0,0,0,0,4
// MACROS: 27,20,27,21,0,0,0,0,4
// MACROS: 27,25,27,26,0,0,0,0,4
// MACROS: 27,30,27,31,0,0,0,0,4

// MACROS: 15,5,23,1,2,1,0,4
// MACROS: 6,15,6,23,0,1,2,0,4
// MACROS: 5,15,5,23,1,2,7,0,4
// MACROS: 6,15,6,23,0,1,8,0,4
// MACROS: 5,15,5,23,1,2,12,0,4
// MACROS: 6,15,6,23,0,1,13,0,4
// MACROS: 5,15,5,23,1,2,16,0,4
// MACROS: 6,15,6,23,0,1,17,0,4
// MACROS: 5,15,5,23,1,2,19,0,4
// MACROS: 6,15,6,23,0,1,20,0,4
// MACROS: 5,15,5,23,1,2,11,0,4
// MACROS: 6,15,6,23,0,1,12,0,4
// MACROS: 5,15,5,23,1,2,8,0,4
// MACROS: 6,15,6,23,0,1,9,0,4
// MACROS: 8,15,8,38,1,2,2,0,4
// MACROS: {"count":40,"covered":24,"notcovered":16,"percent":60}