|
| 1 | +# Test stop hook user ID assignment, ordering, and printing. |
| 2 | +# |
| 3 | +# RUN: %lldb -b -s %s | FileCheck %s |
| 4 | + |
| 5 | +# Create some stop hooks |
| 6 | +target stop-hook add -o 'print "Hello"' |
| 7 | +target stop-hook add -o 'print "world,"' |
| 8 | +target stop-hook add -o 'print "nice"' |
| 9 | +target stop-hook add -o 'print "weather"' |
| 10 | +target stop-hook add -o 'print "today!"' |
| 11 | + |
| 12 | +# Print hooks |
| 13 | +target stop-hook list |
| 14 | + |
| 15 | +# CHECK: (lldb) target stop-hook list |
| 16 | +# CHECK: Hook: 1 |
| 17 | +# CHECK: "Hello" |
| 18 | +# CHECK: Hook: 2 |
| 19 | +# CHECK: "world," |
| 20 | +# CHECK: Hook: 3 |
| 21 | +# CHECK: "nice" |
| 22 | +# CHECK: Hook: 4 |
| 23 | +# CHECK: "weather" |
| 24 | +# CHECK: Hook: 5 |
| 25 | +# CHECK: "today!" |
| 26 | + |
| 27 | +# Delete last hook, then add new one |
| 28 | +target stop-hook delete 5 |
| 29 | +target stop-hook add -o 'print "Sunshine,"' |
| 30 | + |
| 31 | +# Stop hook gets new user ID (it is not reused) |
| 32 | +# CHECK: (lldb) target stop-hook add -o 'print "Sunshine,"' |
| 33 | +# CHECK: Stop hook #6 added. |
| 34 | + |
| 35 | +target stop-hook list |
| 36 | +# CHECK: (lldb) target stop-hook list |
| 37 | +# CHECK: Hook: 4 |
| 38 | +# CHECK-NOT: Hook: 5 |
| 39 | +# CHECK: Hook: 6 |
| 40 | + |
| 41 | +# Add a few more hooks |
| 42 | +target stop-hook add -o 'print "rain,"' |
| 43 | +target stop-hook add -o 'print "and wind!"' |
| 44 | +target stop-hook add -o 'print "It is all okay!"' |
| 45 | +# CHECK: Stop hook #7 added. |
| 46 | +# CHECK: Stop hook #8 added. |
| 47 | +# CHECK: Stop hook #9 added. |
| 48 | + |
| 49 | +# Delete a few hooks |
| 50 | +target stop-hook delete 1 |
| 51 | +target stop-hook delete 3 |
| 52 | +target stop-hook delete 7 |
| 53 | +target stop-hook delete 9 |
| 54 | + |
| 55 | +# Check that the list is still well-ordered |
| 56 | +target stop-hook list |
| 57 | +# CHECK: (lldb) target stop-hook list |
| 58 | +# CHECK-NOT: Hook: 1 |
| 59 | +# CHECK: Hook: 2 |
| 60 | +# CHECK: "world," |
| 61 | +# CHECK-NOT: Hook: 3 |
| 62 | +# CHECK: Hook: 4 |
| 63 | +# CHECK: "weather" |
| 64 | +# CHECK-NOT: Hook: 5 |
| 65 | +# CHECK: Hook: 6 |
| 66 | +# CHECK: "Sunshine," |
| 67 | +# CHECK-NOT: Hook: 7 |
| 68 | +# CHECK: Hook: 8 |
| 69 | +# CHECK: "and wind!" |
| 70 | +# CHECK-NOT: Hook: 9 |
0 commit comments