prompt: You will be provided with a partial code base and an issue statement explaining a problem to resolve.
  <issue>
  master cannot pass "make presubmit"
  Current master branch has one failed at "``make presubmit``".
  
  To reproduce: ``git clone https://github.com/google/fuzzbench ; cd fuzzbench ; git submodule update --init ; make install-dependencies ; source ./vene/bin/activate ; make presubmit``
  
  https://github.com/google/fuzzbench/blob/41aa9b4267907185bd51514a6fb335ff70f4990d/experiment/test_measurer.py#L347
  
  E            assert 0 == 3798
  
  Reference: https://google.github.io/fuzzbench/getting-started/prerequisites/
  
  </issue>
  <code>
  [start of conftest.py]
  1 # Copyright 2020 Google LLC
  2 #
  3 # Licensed under the Apache License, Version 2.0 (the "License");
  4 # you may not use this file except in compliance with the License.
  5 # You may obtain a copy of the License at
  6 #
  7 #      http://www.apache.org/licenses/LICENSE-2.0
  8 #
  9 # Unless required by applicable law or agreed to in writing, software
  10 # distributed under the License is distributed on an "AS IS" BASIS,
  11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12 # See the License for the specific language governing permissions and
  13 # limitations under the License.
  14 """A pytest conftest.py file that defines fixtures and does other things many
  15 tests might need (such as using an in-memory SQLite database)."""
  16 
  17 import os
  18 import sqlite3
  19 from unittest import mock
  20 
  21 import pytest
  22 import sqlalchemy
  23 
  24 from common import new_process
  25 
  26 # Never wait for a timeout so that tests don't take any longer than they need
  27 # to.
  28 new_process.WAIT_SECONDS = 0
  29 
  30 # Set this to an in-memory instance of SQLite so that db_utils can be imported
  31 # without running a real Postgres database.
  32 # pylint: disable=wrong-import-position
  33 os.environ['SQL_DATABASE_URL'] = 'sqlite://'
  34 
  35 from database import utils as db_utils
  36 from database import models
  37 
  38 
  39 # Give this a short name since it is a fixture.
  40 @pytest.yield_fixture
  41 def db():  # pylint: disable=invalid-name
  42     """Connect to the SQLite database and create all the expected tables."""
  43     db_utils.initialize()
  44     models.Base.metadata.create_all(db_utils.engine)
  45     with mock.patch('database.utils.cleanup'):
  46         yield
  47     db_utils.cleanup()
  48 
  49 
  50 @sqlalchemy.event.listens_for(sqlalchemy.engine.Engine, 'connect')
  51 def set_sqlite_pragma(connection, _):
  52     """Force SQLite to enforce non-null foreign key relationships.
  53     Based on
  54     https://docs.sqlalchemy.org/en/13/dialects/sqlite.html#foreign-key-support
  55     """
  56     if not isinstance(connection, sqlite3.Connection):
  57         return
  58 
  59     cursor = connection.cursor()
  60     cursor.execute('PRAGMA foreign_keys=ON')
  61     cursor.close()
  62 
  63 
  64 @pytest.yield_fixture
  65 def environ():
  66     """Patch environment."""
  67     # TODO(metzman): Make sure this is used by all tests that modify the
  68     # environment.
  69     patcher = mock.patch.dict(os.environ, {})
  70     patcher.start()
  71     yield
  72     patcher.stop()
  73 
  74 
  75 @pytest.fixture
  76 def experiment(tmp_path, environ):  # pylint: disable=redefined-outer-name,unused-argument
  77     """Mock an experiment."""
  78     os.environ['WORK'] = str(tmp_path)
  79     os.environ['EXPERIMENT'] = 'test-experiment'
  80     os.environ['CLOUD_EXPERIMENT_BUCKET'] = 'gs://experiment-data'
  81     os.environ['CLOUD_WEB_BUCKET'] = 'gs://web-bucket'
  82     os.environ['CLOUD_PROJECT'] = 'fuzzbench'
  83
  [end of conftest.py]
  </code>
  
  I need you to solve this issue by generating a single patch file that I can apply directly to this repository using git apply. Please respond with a single patch file in the following format.
  <patch>
  diff --git a/file.py b/file.py
  --- a/file.py
  +++ b/file.py
  @@ -1,27 +1,35 @@
   def euclidean(a, b):
  -    while b:
  -        a, b = b, a % b
  -    return a
  +    if b == 0:
  +        return a
  +    return euclidean(b, a % b)
   
   
   def bresenham(x0, y0, x1, y1):
       points = []
       dx = abs(x1 - x0)
       dy = abs(y1 - y0)
  -    sx = 1 if x0 < x1 else -1
  -    sy = 1 if y0 < y1 else -1
  -    err = dx - dy
  +    x, y = x0, y0
  +    sx = -1 if x0 > x1 else 1
  +    sy = -1 if y0 > y1 else 1
   
  -    while True:
  -        points.append((x0, y0))
  -        if x0 == x1 and y0 == y1:
  -            break
  -        e2 = 2 * err
  -        if e2 > -dy:
  -            err -= dy
  -            x0 += sx
  -        if e2 < dx:
  -            err += dx
  -            y0 += sy
  +    if dx > dy:
  +        err = dx / 2.0
  +        while x != x1:
  +            points.append((x, y))
  +            err -= dy
  +            if err < 0:
  +                y += sy
  +                err += dx
  +            x += sx
  +    else:
  +        err = dy / 2.0
  +        while y != y1:
  +            points.append((x, y))
  +            err -= dx
  +            if err < 0:
  +                x += sx
  +                err += dy
  +            y += sy
  +
  +    points.append((x, y))
       return points
  
  </patch>
golden_diff: diff --git a/conftest.py b/conftest.py
  --- a/conftest.py
  +++ b/conftest.py
  @@ -73,9 +73,9 @@
   
   
   @pytest.fixture
  -def experiment(tmp_path, environ):  # pylint: disable=redefined-outer-name,unused-argument
  +def experiment(environ):  # pylint: disable=redefined-outer-name,unused-argument
       """Mock an experiment."""
  -    os.environ['WORK'] = str(tmp_path)
  +    os.environ['WORK'] = '/work'
       os.environ['EXPERIMENT'] = 'test-experiment'
       os.environ['CLOUD_EXPERIMENT_BUCKET'] = 'gs://experiment-data'
       os.environ['CLOUD_WEB_BUCKET'] = 'gs://web-bucket'
  
verification_info: {"golden_diff": "diff --git a/conftest.py b/conftest.py\n--- a/conftest.py\n+++ b/conftest.py\n@@ -73,9 +73,9 @@\n \n \n @pytest.fixture\n-def experiment(tmp_path, environ):  # pylint: disable=redefined-outer-name,unused-argument\n+def experiment(environ):  # pylint: disable=redefined-outer-name,unused-argument\n     \"\"\"Mock an experiment.\"\"\"\n-    os.environ['WORK'] = str(tmp_path)\n+    os.environ['WORK'] = '/work'\n     os.environ['EXPERIMENT'] = 'test-experiment'\n     os.environ['CLOUD_EXPERIMENT_BUCKET'] = 'gs://experiment-data'\n     os.environ['CLOUD_WEB_BUCKET'] = 'gs://web-bucket'\n", "issue": "master cannot pass \"make presubmit\"\nCurrent master branch has one failed at \"``make presubmit``\".\r\n\r\nTo reproduce: ``git clone https://github.com/google/fuzzbench ; cd fuzzbench ; git submodule update --init ; make install-dependencies ; source ./vene/bin/activate ; make presubmit``\r\n\r\nhttps://github.com/google/fuzzbench/blob/41aa9b4267907185bd51514a6fb335ff70f4990d/experiment/test_measurer.py#L347\r\n\r\nE            assert 0 == 3798\r\n\r\nReference: https://google.github.io/fuzzbench/getting-started/prerequisites/\n", "before_files": [{"content": "# Copyright 2020 Google LLC\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#      http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\"\"\"A pytest conftest.py file that defines fixtures and does other things many\ntests might need (such as using an in-memory SQLite database).\"\"\"\n\nimport os\nimport sqlite3\nfrom unittest import mock\n\nimport pytest\nimport sqlalchemy\n\nfrom common import new_process\n\n# Never wait for a timeout so that tests don't take any longer than they need\n# to.\nnew_process.WAIT_SECONDS = 0\n\n# Set this to an in-memory instance of SQLite so that db_utils can be imported\n# without running a real Postgres database.\n# pylint: disable=wrong-import-position\nos.environ['SQL_DATABASE_URL'] = 'sqlite://'\n\nfrom database import utils as db_utils\nfrom database import models\n\n\n# Give this a short name since it is a fixture.\n@pytest.yield_fixture\ndef db():  # pylint: disable=invalid-name\n    \"\"\"Connect to the SQLite database and create all the expected tables.\"\"\"\n    db_utils.initialize()\n    models.Base.metadata.create_all(db_utils.engine)\n    with mock.patch('database.utils.cleanup'):\n        yield\n    db_utils.cleanup()\n\n\n@sqlalchemy.event.listens_for(sqlalchemy.engine.Engine, 'connect')\ndef set_sqlite_pragma(connection, _):\n    \"\"\"Force SQLite to enforce non-null foreign key relationships.\n    Based on\n    https://docs.sqlalchemy.org/en/13/dialects/sqlite.html#foreign-key-support\n    \"\"\"\n    if not isinstance(connection, sqlite3.Connection):\n        return\n\n    cursor = connection.cursor()\n    cursor.execute('PRAGMA foreign_keys=ON')\n    cursor.close()\n\n\n@pytest.yield_fixture\ndef environ():\n    \"\"\"Patch environment.\"\"\"\n    # TODO(metzman): Make sure this is used by all tests that modify the\n    # environment.\n    patcher = mock.patch.dict(os.environ, {})\n    patcher.start()\n    yield\n    patcher.stop()\n\n\n@pytest.fixture\ndef experiment(tmp_path, environ):  # pylint: disable=redefined-outer-name,unused-argument\n    \"\"\"Mock an experiment.\"\"\"\n    os.environ['WORK'] = str(tmp_path)\n    os.environ['EXPERIMENT'] = 'test-experiment'\n    os.environ['CLOUD_EXPERIMENT_BUCKET'] = 'gs://experiment-data'\n    os.environ['CLOUD_WEB_BUCKET'] = 'gs://web-bucket'\n    os.environ['CLOUD_PROJECT'] = 'fuzzbench'\n", "path": "conftest.py"}]}