Use requirements.txt in GHA tests (#1237)

We recently saw a failure pass through where requirements.txt was updated in a way that was not compatible with some python versions. This updates the tests to directly use requirements.txt to download requirements to catch issues like this in the future.

Closes #1237

COPYBARA_INTEGRATE_REVIEW=https://github.com/protocolbuffers/upb/pull/1237 from protocolbuffers:useRequirementsGHA 22a963468e068535cbcf772ba41aee0b3a6e2eec
PiperOrigin-RevId: 518962372
diff --git a/.github/workflows/python_tests.yml b/.github/workflows/python_tests.yml
index 7f242b7..62954e2 100644
--- a/.github/workflows/python_tests.yml
+++ b/.github/workflows/python_tests.yml
@@ -43,6 +43,11 @@
         with:
           name: python-wheels
           path: wheels/
+      - uses: actions/upload-artifact@v3
+        with:
+          name: requirements
+          # Tests shouldn't have access to the whole upb repo, upload the one file we need
+          path: python/requirements.txt
 
   test_wheels:
     name: Test Wheels
@@ -83,6 +88,11 @@
         with:
           name: python-wheels
           path: wheels
+      - name: Download Requirements
+        uses: actions/download-artifact@v3
+        with:
+          name: requirements
+          path: requirements
       - uses: actions/setup-python@v2
         with:
           python-version: ${{ matrix.python-version }}
@@ -98,8 +108,8 @@
         run: pip install tzdata
         # Only needed on Windows, Linux ships with tzdata.
         if: ${{ contains(matrix.os, 'windows') }}
-      - name: Install numpy
-        run: pip install numpy
+      - name: Install requirements
+        run: pip install -r requirements/requirements.txt
       - name: Install Protobuf Binary Wheel
         run: pip install -vvv --no-index --find-links wheels protobuf
         if: ${{ matrix.type == 'binary' }}