Build a small response state from route and payload values.

Response State Panel

route
response_state_panel.c
Replay: real traced execution (multi-file project)
#include <stdio.h>

int main(void) {
    int route = 1;
    const char *status = "missing";
    const char *payload = "no route";

    if (route == 0) {
        status = "ok";
        payload = "checks green";
    } else if (route == 1) {
        status = "ok";
        payload = "service ready";
    }

    printf("route=%d\n", route);
    printf("status=%s\n", status);
    printf("payload=%s:%s\n", status, payload);
    return 0;
}
#include <stdio.h>

int main(void) {
    int route = 0;
    const char *status = "missing";
    const char *payload = "no route";

    if (route == 0) {
        status = "ok";
        payload = "checks green";
    } else if (route == 1) {
        status = "ok";
        payload = "service ready";
    }

    printf("route=%d\n", route);
    printf("status=%s\n", status);
    printf("payload=%s:%s\n", status, payload);
    return 0;
}
#include <stdio.h>

int main(void) {
    int route = 2;
    const char *status = "missing";
    const char *payload = "no route";

    if (route == 0) {
        status = "ok";
        payload = "checks green";
    } else if (route == 1) {
        status = "ok";
        payload = "service ready";
    }

    printf("route=%d\n", route);
    printf("status=%s\n", status);
    printf("payload=%s:%s\n", status, payload);
    return 0;
}
  1. route ← 1, status ← missing, payload ← no route

    3int main(void) {4    int route→ 1 = 1; //@route=0, 25    const char *status→ missing = "missing";6    const char *payload→ no route = "no route";
  2. status ← ok, payload ← service ready

    10    payload = "checks green";11} else if (route1 == 1) {12    status→ ok = "ok";13    payload→ service ready = "service ready";14}
  3. printf("route=%d ", route);

    16    printf("route=%d\n", route1);17    printf("status=%s\n", statusok);18    printf("payload=%s:%s\n", statusok, payloadservice ready);19    return 0;20}
    outputroute=1
    status=ok
    payload=ok:service ready
  1. route ← 0, status ← missing, payload ← no route

    3int main(void) {4    int route→ 0 = 0;5    const char *status→ missing = "missing";6    const char *payload→ no route = "no route";
  2. status ← ok, payload ← checks green

    8if (route0 == 0) {9    status→ ok = "ok";10    payload→ checks green = "checks green";11} else if (route == 1) {
  3. printf("route=%d ", route);

    16    printf("route=%d\n", route0);17    printf("status=%s\n", statusok);18    printf("payload=%s:%s\n", statusok, payloadchecks green);19    return 0;20}
    outputroute=0
    status=ok
    payload=ok:checks green
  1. route ← 2, status ← missing, payload ← no route

    3int main(void) {4    int route→ 2 = 2;5    const char *status→ missing = "missing";6    const char *payload→ no route = "no route";78    if (route == 0) {9        status = "ok";10        payload = "checks green";11    } else if (route == 1) {12        status = "ok";13        payload = "service ready";14    }1516    printf("route=%d\n", route2);17    printf("status=%s\n", statusmissing);18    printf("payload=%s:%s\n", statusmissing, payloadno route);19    return 0;20}
    outputroute=2
    status=missing
    payload=missing:no route
response state Response state gives replay a clear before-and-after value for each branch.