)]}'
{
  "commit": "8c533819b7e212aa2f1d695a7ce08629f4fb2daf",
  "tree": "8131d923ed51388752779564f9ec90a802f7e1d5",
  "parents": [
    "b2baf4712595cea4bc9a9bcd57f3ffda6534c8d1"
  ],
  "author": {
    "name": "Steve Kowalik",
    "email": "steven@wedontsleep.org",
    "time": "Thu Oct 10 02:56:00 2024 +1100"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Wed Oct 09 11:56:00 2024 -0400"
  },
  "message": "fix: Switch to unittest.mock from mock (#713)\n\n* test: Switch to unittest.mock from mock\r\n\r\nNow that the minimum supported version of Python is 3.7, we can stop\r\nusing the external mock requirement, and import it from unittest. I have\r\nalso attempted to keep imports ordered.\r\n\r\nFixes #377\r\n\r\n* test: Fallback to external mock for AsyncMock\r\n\r\nAsyncMock is not included in unittest.mock under Python 3.7, so we must\r\nfallback to the external mock requirement for that Python version. Only\r\ninstall it for that version.\r\n\r\nKeep this as a separate commit so it can be reverted when 3.7 isn\u0027t\r\nsupported anymore.\r\n\r\n* lint\r\n\r\n* clean up to satisfy mypy\r\n\r\n* lint\r\n\r\n* fix build\r\n\r\n---------\r\n\r\nCo-authored-by: Anthonios Partheniou \u003cpartheniou@google.com\u003e",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "144e3e210608e7fae32788af1e49026088359916",
      "old_mode": 33188,
      "old_path": "noxfile.py",
      "new_id": "3dbd27df0aab8812da42dec8f54cbc430bb7d3ef",
      "new_mode": 33188,
      "new_path": "noxfile.py"
    },
    {
      "type": "modify",
      "old_id": "0cfe67734fe8c624da3d0a516fd297e77d7ab988",
      "old_mode": 33188,
      "old_path": "tests/asyncio/future/test_async_future.py",
      "new_id": "659f41cf90ec07a521e8aea09b51d36c970a2d29",
      "new_mode": 33188,
      "new_path": "tests/asyncio/future/test_async_future.py"
    },
    {
      "type": "modify",
      "old_id": "f64157b44b2b48102ed0e054d2da9d321563ae4d",
      "old_mode": 33188,
      "old_path": "tests/asyncio/gapic/test_method_async.py",
      "new_id": "73f67b8db5ded532474c047c4b40e864e281ae7e",
      "new_mode": 33188,
      "new_path": "tests/asyncio/gapic/test_method_async.py"
    },
    {
      "type": "modify",
      "old_id": "19ac9b56605af4577abb91ea3b4c6e4e69af086d",
      "old_mode": 33188,
      "old_path": "tests/asyncio/operations_v1/test_operations_async_client.py",
      "new_id": "e5b20dcd02de49d436f3e1bbcf03ddccab599de7",
      "new_mode": 33188,
      "new_path": "tests/asyncio/operations_v1/test_operations_async_client.py"
    },
    {
      "type": "modify",
      "old_id": "28ae6ff177d251824e8863d13f1163ee49822c13",
      "old_mode": 33188,
      "old_path": "tests/asyncio/retry/test_retry_streaming_async.py",
      "new_id": "ffdf314a1c9b4174de9f28d66a6ef362754700a7",
      "new_mode": 33188,
      "new_path": "tests/asyncio/retry/test_retry_streaming_async.py"
    },
    {
      "type": "modify",
      "old_id": "fc2f572b42e0b9d8a457b542b67c6484374f122a",
      "old_mode": 33188,
      "old_path": "tests/asyncio/retry/test_retry_unary_async.py",
      "new_id": "dc64299f90de25b4dac17ca28f2573d6621bb031",
      "new_mode": 33188,
      "new_path": "tests/asyncio/retry/test_retry_unary_async.py"
    },
    {
      "type": "modify",
      "old_id": "1a408ccdef4f92f9c8982036c09f6ef9ee9e6ce9",
      "old_mode": 33188,
      "old_path": "tests/asyncio/test_grpc_helpers_async.py",
      "new_id": "d8f20ae448f87abffcb36c1cb9de542c4591c8f3",
      "new_mode": 33188,
      "new_path": "tests/asyncio/test_grpc_helpers_async.py"
    },
    {
      "type": "modify",
      "old_id": "127ba63435e3ea3c38a7195558c41f3fba811b20",
      "old_mode": 33188,
      "old_path": "tests/asyncio/test_operation_async.py",
      "new_id": "939be0947c27dc80dea6da1e83cbe25412c1fe11",
      "new_mode": 33188,
      "new_path": "tests/asyncio/test_operation_async.py"
    },
    {
      "type": "modify",
      "old_id": "75f9e1cf40dda0adefc20029618f79fd0a1739f4",
      "old_mode": 33188,
      "old_path": "tests/asyncio/test_page_iterator_async.py",
      "new_id": "d8bba9345a5636abeba81305e2726c2142280e03",
      "new_mode": 33188,
      "new_path": "tests/asyncio/test_page_iterator_async.py"
    },
    {
      "type": "modify",
      "old_id": "da5b1c8d64c061becb61b9f73bf63d50270cd450",
      "old_mode": 33188,
      "old_path": "tests/asyncio/test_rest_streaming_async.py",
      "new_id": "c9caa2b15544683ccc68aa86fe1f68c72bf5a845",
      "new_mode": 33188,
      "new_path": "tests/asyncio/test_rest_streaming_async.py"
    },
    {
      "type": "modify",
      "old_id": "98afc599f84efe1c220f30fd6f93fd6426efab5b",
      "old_mode": 33188,
      "old_path": "tests/unit/future/test__helpers.py",
      "new_id": "a37efdd40496df8a15b0511468523e968ae6240a",
      "new_mode": 33188,
      "new_path": "tests/unit/future/test__helpers.py"
    },
    {
      "type": "modify",
      "old_id": "f5d9b4f102dee722c6d2c1ae7b4203529a250b4b",
      "old_mode": 33188,
      "old_path": "tests/unit/future/test_polling.py",
      "new_id": "2f66f230426b344ea65ad5366a3b95aaa5e1357f",
      "new_mode": 33188,
      "new_path": "tests/unit/future/test_polling.py"
    },
    {
      "type": "modify",
      "old_id": "d966f478f444646d1c489feead3e15d08e867196",
      "old_mode": 33188,
      "old_path": "tests/unit/gapic/test_method.py",
      "new_id": "87aa63905e561feeac30cfcc5e328c0cc4756daa",
      "new_mode": 33188,
      "new_path": "tests/unit/gapic/test_method.py"
    },
    {
      "type": "modify",
      "old_id": "644cf266321ef4812d69c327ad3794528e36799b",
      "old_mode": 33188,
      "old_path": "tests/unit/operations_v1/test_operations_rest_client.py",
      "new_id": "d1f6e0eba46f4afd322df4b3f82ca9954d272ff9",
      "new_mode": 33188,
      "new_path": "tests/unit/operations_v1/test_operations_rest_client.py"
    },
    {
      "type": "modify",
      "old_id": "a0c6776bf51dd881a2c5fa6c54db124b241f36fd",
      "old_mode": 33188,
      "old_path": "tests/unit/retry/test_retry_base.py",
      "new_id": "212c4293bde7b8849e30fb7e2e8b04798c85b9e4",
      "new_mode": 33188,
      "new_path": "tests/unit/retry/test_retry_base.py"
    },
    {
      "type": "modify",
      "old_id": "01f35327b20ff2e288b6b4dd5560bf6e625f651a",
      "old_mode": 33188,
      "old_path": "tests/unit/retry/test_retry_streaming.py",
      "new_id": "0bc85d926066a6dfc505cfce683d446afb0dd50c",
      "new_mode": 33188,
      "new_path": "tests/unit/retry/test_retry_streaming.py"
    },
    {
      "type": "modify",
      "old_id": "7dcd8dd6a9cd5f158bf2947f4dfcb74946945b11",
      "old_mode": 33188,
      "old_path": "tests/unit/retry/test_retry_unary.py",
      "new_id": "6851fbe4864eae230b091c8ba9ab3bfebc26c5f8",
      "new_mode": 33188,
      "new_path": "tests/unit/retry/test_retry_unary.py"
    },
    {
      "type": "modify",
      "old_id": "84ac9dc52a75b7ad970efe54559b85c313f9c670",
      "old_mode": 33188,
      "old_path": "tests/unit/test_bidi.py",
      "new_id": "c196a682181d3e53437679d63fd9a09fc8627b86",
      "new_mode": 33188,
      "new_path": "tests/unit/test_bidi.py"
    },
    {
      "type": "modify",
      "old_id": "07a368175594c48592ee2b4c99464cbb5265204d",
      "old_mode": 33188,
      "old_path": "tests/unit/test_exceptions.py",
      "new_id": "e3f8f909a07c48460272af298d346e9b54fb9cbb",
      "new_mode": 33188,
      "new_path": "tests/unit/test_exceptions.py"
    },
    {
      "type": "modify",
      "old_id": "53af520478c2b197508475a4cbe8fecd85effe67",
      "old_mode": 33188,
      "old_path": "tests/unit/test_extended_operation.py",
      "new_id": "ab55066243e447b5c364d4ffcb433abde71908a4",
      "new_mode": 33188,
      "new_path": "tests/unit/test_extended_operation.py"
    },
    {
      "type": "modify",
      "old_id": "59442d43762353b77fa16427dc5cd01461450583",
      "old_mode": 33188,
      "old_path": "tests/unit/test_grpc_helpers.py",
      "new_id": "8de9d8c0bf11d6370cee533cfce4360f4498d6ab",
      "new_mode": 33188,
      "new_path": "tests/unit/test_grpc_helpers.py"
    },
    {
      "type": "modify",
      "old_id": "f029866c6cf069d1f3a67fccf5edbaf63b783974",
      "old_mode": 33188,
      "old_path": "tests/unit/test_operation.py",
      "new_id": "80680720178d5705fe3ce1510de43f05d5bc3db0",
      "new_mode": 33188,
      "new_path": "tests/unit/test_operation.py"
    },
    {
      "type": "modify",
      "old_id": "cf43aedfb08a7702fb304adc39249720b3f1912b",
      "old_mode": 33188,
      "old_path": "tests/unit/test_page_iterator.py",
      "new_id": "560722c5d67f4fb3100e7d36dc6bda759d20327b",
      "new_mode": 33188,
      "new_path": "tests/unit/test_page_iterator.py"
    },
    {
      "type": "modify",
      "old_id": "808b36f3480289aa1d92477facda86ab1e396cef",
      "old_mode": 33188,
      "old_path": "tests/unit/test_path_template.py",
      "new_id": "c34dd0f32cbb397012d19521df59b3aebcdb5a4f",
      "new_mode": 33188,
      "new_path": "tests/unit/test_path_template.py"
    },
    {
      "type": "modify",
      "old_id": "0bcf07f078dcb2306710ff23ce1df73b68a09a68",
      "old_mode": 33188,
      "old_path": "tests/unit/test_timeout.py",
      "new_id": "60a2e65d357682657f53c7274482bcf29421d29e",
      "new_mode": 33188,
      "new_path": "tests/unit/test_timeout.py"
    }
  ]
}
