)]}'
{
  "commit": "41c7ab55b6e63a827add60361a3b63e739ddf3e5",
  "tree": "7eebea232206019df42c19262024f7aba5be59de",
  "parents": [
    "a20fc3ab5a2db9687083309cb3db272e7b1de9f2"
  ],
  "author": {
    "name": "Camille Simon",
    "email": "43054281+camsim99@users.noreply.github.com",
    "time": "Mon Nov 27 02:29:22 2023 +0000"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Sun Nov 26 18:29:22 2023 -0800"
  },
  "message": "[camerax] Adds proxy class for testing detached/mock objects and method calls (#5423)\n\nCreates `CameraXProxy` class used to test detached/mock objects and\r\nmethod calls in the plugin. Refactors plugin test to use the proxy.\r\n\r\nPart of https://github.com/flutter/flutter/issues/125928; unblocks\r\nhttps://github.com/flutter/packages/pull/5285 which requires testing a\r\nmixture of detached and mock objects.\r\n\r\n## Pre-launch Checklist\r\n\r\n- [x] I read the [Contributor Guide] and followed the process outlined\r\nthere for submitting PRs.\r\n- [x] I read the [Tree Hygiene] wiki page, which explains my\r\nresponsibilities.\r\n- [x] I read and followed the [relevant style guides] and ran the\r\nauto-formatter. (Unlike the flutter/flutter repo, the flutter/packages\r\nrepo does use `dart format`.)\r\n- [x] I signed the [CLA].\r\n- [x] The title of the PR starts with the name of the package surrounded\r\nby square brackets, e.g. `[shared_preferences]`\r\n- [x] I listed at least one issue that this PR fixes in the description\r\nabove.\r\n- [x] I updated `pubspec.yaml` with an appropriate new version according\r\nto the [pub versioning philosophy], or this PR is [exempt from version\r\nchanges].\r\n- [x] I updated `CHANGELOG.md` to add a description of the change,\r\n[following repository CHANGELOG style].\r\n- [x] I updated/added relevant documentation (doc comments with `///`).\r\n- [x] I added new tests to check the change I am making, or this PR is\r\n[test-exempt].\r\n- [x] All existing and new tests are passing.\r\n\r\n\u003c!-- Links --\u003e\r\n[Contributor Guide]:\r\nhttps://github.com/flutter/packages/blob/main/CONTRIBUTING.md\r\n[Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene\r\n[relevant style guides]:\r\nhttps://github.com/flutter/packages/blob/main/CONTRIBUTING.md#style\r\n[CLA]: https://cla.developers.google.com/\r\n[flutter/tests]: https://github.com/flutter/tests\r\n[breaking change policy]:\r\nhttps://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes\r\n[Discord]: https://github.com/flutter/flutter/wiki/Chat\r\n[pub versioning philosophy]: https://dart.dev/tools/pub/versioning\r\n[exempt from version changes]:\r\nhttps://github.com/flutter/flutter/wiki/Contributing-to-Plugins-and-Packages#version-and-changelog-updates\r\n[following repository CHANGELOG style]:\r\nhttps://github.com/flutter/flutter/wiki/Contributing-to-Plugins-and-Packages#changelog-style\r\n[test-exempt]:\r\nhttps://github.com/flutter/flutter/wiki/Tree-hygiene#tests\r\n\r\n---------\r\n\r\nCo-authored-by: Maurice Parrish \u003c10687576+bparrishMines@users.noreply.github.com\u003e",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "579e29dea377dba8b8ed3236bc1de0386a162b7a",
      "old_mode": 33188,
      "old_path": "packages/camera/camera_android_camerax/CHANGELOG.md",
      "new_id": "53f295252d56b05925e26ed87709934bd5f78ac9",
      "new_mode": 33188,
      "new_path": "packages/camera/camera_android_camerax/CHANGELOG.md"
    },
    {
      "type": "modify",
      "old_id": "044778fc20f25adb29526503a3be8a79443e75d5",
      "old_mode": 33188,
      "old_path": "packages/camera/camera_android_camerax/lib/src/android_camera_camerax.dart",
      "new_id": "b7f8f8a091d21fa8051b4c927b6d745bb7b48f67",
      "new_mode": 33188,
      "new_path": "packages/camera/camera_android_camerax/lib/src/android_camera_camerax.dart"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "133d84544d9be05a67dc4a0e8b346321c3318b56",
      "new_mode": 33188,
      "new_path": "packages/camera/camera_android_camerax/lib/src/camerax_proxy.dart"
    },
    {
      "type": "modify",
      "old_id": "dd05e33eaf74293863f8727de7a244f13863cab4",
      "old_mode": 33188,
      "old_path": "packages/camera/camera_android_camerax/pubspec.yaml",
      "new_id": "07be8469a85007124e40fb1bddba658636eb7adf",
      "new_mode": 33188,
      "new_path": "packages/camera/camera_android_camerax/pubspec.yaml"
    },
    {
      "type": "modify",
      "old_id": "1b2b7c50a84fca3df082f632bdf66e7a8827b9d6",
      "old_mode": 33188,
      "old_path": "packages/camera/camera_android_camerax/test/android_camera_camerax_test.dart",
      "new_id": "100d3040eb9ba580a661b35248a9fa403d44bc05",
      "new_mode": 33188,
      "new_path": "packages/camera/camera_android_camerax/test/android_camera_camerax_test.dart"
    },
    {
      "type": "modify",
      "old_id": "4fae31e06390856a74581f333622933878951e2d",
      "old_mode": 33188,
      "old_path": "packages/camera/camera_android_camerax/test/android_camera_camerax_test.mocks.dart",
      "new_id": "f626863f5b50c96e59b0be05fe2e6436b6aacf0e",
      "new_mode": 33188,
      "new_path": "packages/camera/camera_android_camerax/test/android_camera_camerax_test.mocks.dart"
    }
  ]
}
