)]}'
{
  "commit": "616b5a5fef001f55ca3fd5fd1c1736c8749fa524",
  "tree": "74fdf7cac31aee8b51af837a98f415006cc00eb3",
  "parents": [
    "6dad922204424c36960e029ea0dbefdd7a2f3199"
  ],
  "author": {
    "name": "Sana Ullah",
    "email": "ksanaullah383.khan@gmail.com",
    "time": "Tue Sep 01 22:15:59 2026 +0000"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Tue Sep 01 22:15:59 2026 +0000"
  },
  "message": "Fix self-comparison and assert typos in TestSemantics (#191938)\n\nThis replaces #185975, which the stale bot auto-closed on Jul 1. The\nrequested tests had been pushed on May 21 (commit \"Add semantics tester\nregression tests\"), but the `waiting for response` label was never\ncleared, so the timer kept running. #185975 could not be reopened, hence\nthis PR.\n\n@chunhtai you\u0027d reviewed #185975 and said it lgtm pending a test. That\ntest is here — three regression tests, one per fix:\n\n- `Semantics tester compares controlsNodes`\n- `Semantics tester compares attributed string locales`\n- `includesNodeWith accepts minValue and maxValue`\n\n## The bugs\n\nRebased onto current master, where all three are still present:\n\n- **`semantics_tester.dart:511`** — `controlsNodes !\u003d controlsNodes`\ncompares the field to itself, so it is always `false` and the\n`setEquals` check is unreachable. The `controlsNodes` expectation is\nsilently never enforced. Fixed to `controlsNodes !\u003d null`.\n- **`semantics_tester.dart:715`** — the locale comparison reads\n`(second[i] as LocaleStringAttribute).locale !\u003d (second[i] as\nLocaleStringAttribute).locale`, comparing `second` against itself rather\nthan against `first`. Always `false`, so mismatched locales compare\nequal. Fixed to read `first[i]` on the left.\n- **`semantics_tester.dart:1184`** — the `minValue !\u003d null || maxValue\n!\u003d null` checks sit in `assert()`\u0027s *message* slot rather than its\ncondition, so they never gate anything and `includesNodeWith(minValue:\n...)` alone trips the assert. Folded into the condition, with a\ndescriptive message added.\n\n## Testing\n\n`flutter test packages/flutter/test/widgets/semantics_tester_test.dart`\n— 7/7 passing locally against current master.\n\nThe competing PR #185921 was also closed without merging, so there is no\nlonger any overlap. PTAL when you have a moment.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "2511a73c7f152f582b0b37c91f2f1898961d61af",
      "old_mode": 33188,
      "old_path": "packages/flutter/test/widgets/semantics_tester.dart",
      "new_id": "e2f451841404fdfd4905ebdd5ead8bdfb3cdd069",
      "new_mode": 33188,
      "new_path": "packages/flutter/test/widgets/semantics_tester.dart"
    },
    {
      "type": "modify",
      "old_id": "41d5ec7fd1d6fbb7701860fbcde043fe294fd8b2",
      "old_mode": 33188,
      "old_path": "packages/flutter/test/widgets/semantics_tester_test.dart",
      "new_id": "e8e26f83ae3c07973dc200c7ef54da28827fce5a",
      "new_mode": 33188,
      "new_path": "packages/flutter/test/widgets/semantics_tester_test.dart"
    }
  ]
}
