prompt: You will be provided with a partial code base and an issue statement explaining a problem to resolve.
  <issue>
  Consider installing the tests
  Since you decided to embed the test suite inside the package instead of leaving it outside in a common `tests` folder (both of which are totally acceptable and covered by the `pytest` guidelines), why not install the tests with the package? It would give the following benefits:
  
  - Simplify the `setuptools` metadata, by replacing the explicit listing of the modules with a single call to `find_package`,
  - Easy testing of the installed package via `python -m pytest --pyargs pymeasure`.
  
  </issue>
  <code>
  [start of setup.py]
  1 #
  2 # This file is part of the PyMeasure package.
  3 #
  4 # Copyright (c) 2013-2017 PyMeasure Developers
  5 #
  6 # Permission is hereby granted, free of charge, to any person obtaining a copy
  7 # of this software and associated documentation files (the "Software"), to deal
  8 # in the Software without restriction, including without limitation the rights
  9 # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
  10 # copies of the Software, and to permit persons to whom the Software is
  11 # furnished to do so, subject to the following conditions:
  12 #
  13 # The above copyright notice and this permission notice shall be included in
  14 # all copies or substantial portions of the Software.
  15 #
  16 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  17 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  18 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
  19 # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
  20 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  21 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  22 # THE SOFTWARE.
  23 #
  24 
  25 
  26 from setuptools import setup
  27 
  28 setup(
  29     name='PyMeasure',
  30     version='0.4.3',
  31     author='PyMeasure Developers',
  32     packages=[
  33         'pymeasure', 'pymeasure.instruments',
  34         'pymeasure.adapters', 'pymeasure.display',
  35         'pymeasure.experiment',
  36         'pymeasure.instruments.agilent',
  37         'pymeasure.instruments.ami',
  38         'pymeasure.instruments.anritsu',
  39         'pymeasure.instruments.danfysik',
  40         'pymeasure.instruments.fwbell',
  41         'pymeasure.instruments.hp',
  42         'pymeasure.instruments.keithley',
  43         'pymeasure.instruments.lakeshore',
  44         'pymeasure.instruments.newport',
  45         'pymeasure.instruments.parker',
  46         'pymeasure.instruments.signalrecovery',
  47         'pymeasure.instruments.srs',
  48         'pymeasure.instruments.thorlabs',
  49         'pymeasure.instruments.tektronix',
  50         'pymeasure.instruments.yokogawa',
  51     ],
  52     scripts=[],
  53     url='https://github.com/ralph-group/pymeasure',
  54     download_url = 'https://github.com/ralph-group/pymeasure/tarball/v0.4.3',
  55     license='MIT License',
  56     description='Scientific measurement library for instruments, experiments, and live-plotting',
  57     long_description=open('README.rst').read() + "\n\n" + open('CHANGES.txt').read(),
  58     install_requires=[
  59         "Numpy >= 1.6.1",
  60         "pandas >= 0.14",
  61         "pyvisa >= 1.8",
  62         "pyserial >= 2.7",
  63         "pyqtgraph >= 0.9.10"
  64     ],
  65     classifiers=[
  66         "Development Status :: 4 - Beta",
  67         "Intended Audience :: Science/Research",
  68         "License :: OSI Approved :: MIT License",
  69         "Operating System :: MacOS",
  70         "Operating System :: Microsoft :: Windows",
  71         "Operating System :: POSIX",
  72         "Operating System :: Unix",
  73         "Programming Language :: Python :: 3 :: Only",
  74         "Topic :: Scientific/Engineering",
  75     ],
  76     keywords="measure instrument experiment control automate graph plot"
  77 )
  78
  [end of setup.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/setup.py b/setup.py
  --- a/setup.py
  +++ b/setup.py
  @@ -23,32 +23,13 @@
   #
   
   
  -from setuptools import setup
  +from setuptools import setup, find_packages
   
   setup(
       name='PyMeasure',
       version='0.4.3',
       author='PyMeasure Developers',
  -    packages=[
  -        'pymeasure', 'pymeasure.instruments',
  -        'pymeasure.adapters', 'pymeasure.display',
  -        'pymeasure.experiment',
  -        'pymeasure.instruments.agilent',
  -        'pymeasure.instruments.ami',
  -        'pymeasure.instruments.anritsu',
  -        'pymeasure.instruments.danfysik',
  -        'pymeasure.instruments.fwbell',
  -        'pymeasure.instruments.hp',
  -        'pymeasure.instruments.keithley',
  -        'pymeasure.instruments.lakeshore',
  -        'pymeasure.instruments.newport',
  -        'pymeasure.instruments.parker',
  -        'pymeasure.instruments.signalrecovery',
  -        'pymeasure.instruments.srs',
  -        'pymeasure.instruments.thorlabs',
  -        'pymeasure.instruments.tektronix',
  -        'pymeasure.instruments.yokogawa',
  -    ],
  +    packages=find_packages(),
       scripts=[],
       url='https://github.com/ralph-group/pymeasure',
       download_url = 'https://github.com/ralph-group/pymeasure/tarball/v0.4.3',
  
verification_info: {"golden_diff": "diff --git a/setup.py b/setup.py\n--- a/setup.py\n+++ b/setup.py\n@@ -23,32 +23,13 @@\n #\n \n \n-from setuptools import setup\n+from setuptools import setup, find_packages\n \n setup(\n     name='PyMeasure',\n     version='0.4.3',\n     author='PyMeasure Developers',\n-    packages=[\n-        'pymeasure', 'pymeasure.instruments',\n-        'pymeasure.adapters', 'pymeasure.display',\n-        'pymeasure.experiment',\n-        'pymeasure.instruments.agilent',\n-        'pymeasure.instruments.ami',\n-        'pymeasure.instruments.anritsu',\n-        'pymeasure.instruments.danfysik',\n-        'pymeasure.instruments.fwbell',\n-        'pymeasure.instruments.hp',\n-        'pymeasure.instruments.keithley',\n-        'pymeasure.instruments.lakeshore',\n-        'pymeasure.instruments.newport',\n-        'pymeasure.instruments.parker',\n-        'pymeasure.instruments.signalrecovery',\n-        'pymeasure.instruments.srs',\n-        'pymeasure.instruments.thorlabs',\n-        'pymeasure.instruments.tektronix',\n-        'pymeasure.instruments.yokogawa',\n-    ],\n+    packages=find_packages(),\n     scripts=[],\n     url='https://github.com/ralph-group/pymeasure',\n     download_url = 'https://github.com/ralph-group/pymeasure/tarball/v0.4.3',\n", "issue": "Consider installing the tests\nSince you decided to embed the test suite inside the package instead of leaving it outside in a common `tests` folder (both of which are totally acceptable and covered by the `pytest` guidelines), why not install the tests with the package? It would give the following benefits:\r\n\r\n- Simplify the `setuptools` metadata, by replacing the explicit listing of the modules with a single call to `find_package`,\r\n- Easy testing of the installed package via `python -m pytest --pyargs pymeasure`.\n", "before_files": [{"content": "#\n# This file is part of the PyMeasure package.\n#\n# Copyright (c) 2013-2017 PyMeasure Developers\n#\n# Permission is hereby granted, free of charge, to any person obtaining a copy\n# of this software and associated documentation files (the \"Software\"), to deal\n# in the Software without restriction, including without limitation the rights\n# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n# copies of the Software, and to permit persons to whom the Software is\n# furnished to do so, subject to the following conditions:\n#\n# The above copyright notice and this permission notice shall be included in\n# all copies or substantial portions of the Software.\n#\n# THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n# THE SOFTWARE.\n#\n\n\nfrom setuptools import setup\n\nsetup(\n    name='PyMeasure',\n    version='0.4.3',\n    author='PyMeasure Developers',\n    packages=[\n        'pymeasure', 'pymeasure.instruments',\n        'pymeasure.adapters', 'pymeasure.display',\n        'pymeasure.experiment',\n        'pymeasure.instruments.agilent',\n        'pymeasure.instruments.ami',\n        'pymeasure.instruments.anritsu',\n        'pymeasure.instruments.danfysik',\n        'pymeasure.instruments.fwbell',\n        'pymeasure.instruments.hp',\n        'pymeasure.instruments.keithley',\n        'pymeasure.instruments.lakeshore',\n        'pymeasure.instruments.newport',\n        'pymeasure.instruments.parker',\n        'pymeasure.instruments.signalrecovery',\n        'pymeasure.instruments.srs',\n        'pymeasure.instruments.thorlabs',\n        'pymeasure.instruments.tektronix',\n        'pymeasure.instruments.yokogawa',\n    ],\n    scripts=[],\n    url='https://github.com/ralph-group/pymeasure',\n    download_url = 'https://github.com/ralph-group/pymeasure/tarball/v0.4.3',\n    license='MIT License',\n    description='Scientific measurement library for instruments, experiments, and live-plotting',\n    long_description=open('README.rst').read() + \"\\n\\n\" + open('CHANGES.txt').read(),\n    install_requires=[\n        \"Numpy >= 1.6.1\",\n        \"pandas >= 0.14\",\n        \"pyvisa >= 1.8\",\n        \"pyserial >= 2.7\",\n        \"pyqtgraph >= 0.9.10\"\n    ],\n    classifiers=[\n        \"Development Status :: 4 - Beta\",\n        \"Intended Audience :: Science/Research\",\n        \"License :: OSI Approved :: MIT License\",\n        \"Operating System :: MacOS\",\n        \"Operating System :: Microsoft :: Windows\",\n        \"Operating System :: POSIX\",\n        \"Operating System :: Unix\",\n        \"Programming Language :: Python :: 3 :: Only\",\n        \"Topic :: Scientific/Engineering\",\n    ],\n    keywords=\"measure instrument experiment control automate graph plot\"\n)\n", "path": "setup.py"}]}