Skip to content
Snippets Groups Projects
Commit 9e55ccd6 authored by Sybren A. Stüvel's avatar Sybren A. Stüvel
Browse files

Moved from requirements.txt to Pipfile

This also means that we need a `tests/__init__.py` file; this file makes
py.test undertand what is our sources directory, and thus allows them to
`import flamenco_worker`. As a result, the test imports from tests/*.py
need to change to relative imports.
parent 4492405a
No related branches found
No related tags found
No related merge requests found
Showing
with 375 additions and 50 deletions
Pipfile 0 → 100644
[[source]]
url = "https://pypi.org/simple"
verify_ssl = true
name = "pypi"
[packages]
attrs = "*"
requests = "*"
psutil = "*"
[dev-packages]
pytest = "*"
pytest-cov = "*"
wheel = "*"
pyinstaller = "*"
ipython = "*"
pathlib2 = {version = "*", markers="python_version < '3.6'"}
[requires]
python_version = "3.5"
{
"_meta": {
"hash": {
"sha256": "ef7dc91825f95fb13543a1da77acb02ef4066d89922eed4d7e962b0a57032307"
},
"pipfile-spec": 6,
"requires": {
"python_version": "3.5"
},
"sources": [
{
"name": "pypi",
"url": "https://pypi.org/simple",
"verify_ssl": true
}
]
},
"default": {
"attrs": {
"hashes": [
"sha256:10cbf6e27dbce8c30807caf056c8eb50917e0eaafe86347671b57254006c3e69",
"sha256:ca4be454458f9dec299268d472aaa5a11f67a4ff70093396e1ceae9c76cf4bbb"
],
"index": "pypi",
"version": "==18.2.0"
},
"certifi": {
"hashes": [
"sha256:339dc09518b07e2fa7eda5450740925974815557727d6bd35d319c1524a04a4c",
"sha256:6d58c986d22b038c8c0df30d639f23a3e6d172a05c3583e766f4c0b785c0986a"
],
"version": "==2018.10.15"
},
"chardet": {
"hashes": [
"sha256:84ab92ed1c4d4f16916e05906b6b75a6c0fb5db821cc65e70cbd64a3e2a5eaae",
"sha256:fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691"
],
"version": "==3.0.4"
},
"idna": {
"hashes": [
"sha256:156a6814fb5ac1fc6850fb002e0852d56c0c8d2531923a51032d1b70760e186e",
"sha256:684a38a6f903c1d71d6d5fac066b58d7768af4de2b832e426ec79c30daa94a16"
],
"version": "==2.7"
},
"psutil": {
"hashes": [
"sha256:1c19957883e0b93d081d41687089ad630e370e26dc49fd9df6951d6c891c4736",
"sha256:1c71b9716790e202a00ab0931a6d1e25db1aa1198bcacaea2f5329f75d257fff",
"sha256:3b7a4daf4223dae171a67a89314ac5ca0738e94064a78d99cfd751c55d05f315",
"sha256:3e19be3441134445347af3767fa7770137d472a484070840eee6653b94ac5576",
"sha256:6e265c8f3da00b015d24b842bfeb111f856b13d24f2c57036582568dc650d6c3",
"sha256:809c9cef0402e3e48b5a1dddc390a8a6ff58b15362ea5714494073fa46c3d293",
"sha256:b4d1b735bf5b120813f4c89db8ac22d89162c558cbd7fdd298866125fe906219",
"sha256:bbffac64cfd01c6bcf90eb1bedc6c80501c4dae8aef4ad6d6dd49f8f05f6fc5a",
"sha256:bfcea4f189177b2d2ce4a34b03c4ac32c5b4c22e21f5b093d9d315e6e253cd81"
],
"index": "pypi",
"version": "==5.4.8"
},
"requests": {
"hashes": [
"sha256:65b3a120e4329e33c9889db89c80976c5272f56ea92d3e74da8a463992e3ff54",
"sha256:ea881206e59f41dbd0bd445437d792e43906703fff75ca8ff43ccdb11f33f263"
],
"index": "pypi",
"version": "==2.20.1"
},
"urllib3": {
"hashes": [
"sha256:61bf29cada3fc2fbefad4fdf059ea4bd1b4a86d2b6d15e1c7c0b582b9752fe39",
"sha256:de9529817c93f27c8ccbfead6985011db27bd0ddfcdb2d86f3f663385c6a9c22"
],
"version": "==1.24.1"
}
},
"develop": {
"altgraph": {
"hashes": [
"sha256:d6814989f242b2b43025cba7161fc1b8fb487a62cd49c49245d6fd01c18ac997",
"sha256:ddf5320017147ba7b810198e0b6619bd7b5563aa034da388cea8546b877f9b0c"
],
"version": "==0.16.1"
},
"atomicwrites": {
"hashes": [
"sha256:0312ad34fcad8fac3704d441f7b317e50af620823353ec657a53e981f92920c0",
"sha256:ec9ae8adaae229e4f8446952d204a3e4b5fdd2d099f9be3aaf556120135fb3ee"
],
"version": "==1.2.1"
},
"attrs": {
"hashes": [
"sha256:10cbf6e27dbce8c30807caf056c8eb50917e0eaafe86347671b57254006c3e69",
"sha256:ca4be454458f9dec299268d472aaa5a11f67a4ff70093396e1ceae9c76cf4bbb"
],
"index": "pypi",
"version": "==18.2.0"
},
"backcall": {
"hashes": [
"sha256:38ecd85be2c1e78f77fd91700c76e14667dc21e2713b63876c0eb901196e01e4",
"sha256:bbbf4b1e5cd2bdb08f915895b51081c041bac22394fdfcfdfbe9f14b77c08bf2"
],
"version": "==0.1.0"
},
"coverage": {
"hashes": [
"sha256:09e47c529ff77bf042ecfe858fb55c3e3eb97aac2c87f0349ab5a7efd6b3939f",
"sha256:0a1f9b0eb3aa15c990c328535655847b3420231af299386cfe5efc98f9c250fe",
"sha256:0cc941b37b8c2ececfed341444a456912e740ecf515d560de58b9a76562d966d",
"sha256:10e8af18d1315de936d67775d3a814cc81d0747a1a0312d84e27ae5610e313b0",
"sha256:1b4276550b86caa60606bd3572b52769860a81a70754a54acc8ba789ce74d607",
"sha256:1e8a2627c48266c7b813975335cfdea58c706fe36f607c97d9392e61502dc79d",
"sha256:2b224052bfd801beb7478b03e8a66f3f25ea56ea488922e98903914ac9ac930b",
"sha256:447c450a093766744ab53bf1e7063ec82866f27bcb4f4c907da25ad293bba7e3",
"sha256:46101fc20c6f6568561cdd15a54018bb42980954b79aa46da8ae6f008066a30e",
"sha256:4710dc676bb4b779c4361b54eb308bc84d64a2fa3d78e5f7228921eccce5d815",
"sha256:510986f9a280cd05189b42eee2b69fecdf5bf9651d4cd315ea21d24a964a3c36",
"sha256:5535dda5739257effef56e49a1c51c71f1d37a6e5607bb25a5eee507c59580d1",
"sha256:5a7524042014642b39b1fcae85fb37556c200e64ec90824ae9ecf7b667ccfc14",
"sha256:5f55028169ef85e1fa8e4b8b1b91c0b3b0fa3297c4fb22990d46ff01d22c2d6c",
"sha256:6694d5573e7790a0e8d3d177d7a416ca5f5c150742ee703f3c18df76260de794",
"sha256:6831e1ac20ac52634da606b658b0b2712d26984999c9d93f0c6e59fe62ca741b",
"sha256:77f0d9fa5e10d03aa4528436e33423bfa3718b86c646615f04616294c935f840",
"sha256:828ad813c7cdc2e71dcf141912c685bfe4b548c0e6d9540db6418b807c345ddd",
"sha256:85a06c61598b14b015d4df233d249cd5abfa61084ef5b9f64a48e997fd829a82",
"sha256:8cb4febad0f0b26c6f62e1628f2053954ad2c555d67660f28dfb1b0496711952",
"sha256:a5c58664b23b248b16b96253880b2868fb34358911400a7ba39d7f6399935389",
"sha256:aaa0f296e503cda4bc07566f592cd7a28779d433f3a23c48082af425d6d5a78f",
"sha256:ab235d9fe64833f12d1334d29b558aacedfbca2356dfb9691f2d0d38a8a7bfb4",
"sha256:b3b0c8f660fae65eac74fbf003f3103769b90012ae7a460863010539bb7a80da",
"sha256:bab8e6d510d2ea0f1d14f12642e3f35cefa47a9b2e4c7cea1852b52bc9c49647",
"sha256:c45297bbdbc8bb79b02cf41417d63352b70bcb76f1bbb1ee7d47b3e89e42f95d",
"sha256:d19bca47c8a01b92640c614a9147b081a1974f69168ecd494687c827109e8f42",
"sha256:d64b4340a0c488a9e79b66ec9f9d77d02b99b772c8b8afd46c1294c1d39ca478",
"sha256:da969da069a82bbb5300b59161d8d7c8d423bc4ccd3b410a9b4d8932aeefc14b",
"sha256:ed02c7539705696ecb7dc9d476d861f3904a8d2b7e894bd418994920935d36bb",
"sha256:ee5b8abc35b549012e03a7b1e86c09491457dba6c94112a2482b18589cc2bdb9"
],
"version": "==4.5.2"
},
"decorator": {
"hashes": [
"sha256:2c51dff8ef3c447388fe5e4453d24a2bf128d3a4c32af3fabef1f01c6851ab82",
"sha256:c39efa13fbdeb4506c476c9b3babf6a718da943dab7811c206005a4a956c080c"
],
"version": "==4.3.0"
},
"future": {
"hashes": [
"sha256:67045236dcfd6816dc439556d009594abf643e5eb48992e36beac09c2ca659b8"
],
"version": "==0.17.1"
},
"ipython": {
"hashes": [
"sha256:a5781d6934a3341a1f9acb4ea5acdc7ea0a0855e689dbe755d070ca51e995435",
"sha256:b10a7ddd03657c761fc503495bc36471c8158e3fc948573fb9fe82a7029d8efd"
],
"index": "pypi",
"version": "==7.1.1"
},
"ipython-genutils": {
"hashes": [
"sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8",
"sha256:eb2e116e75ecef9d4d228fdc66af54269afa26ab4463042e33785b887c628ba8"
],
"version": "==0.2.0"
},
"jedi": {
"hashes": [
"sha256:0191c447165f798e6a730285f2eee783fff81b0d3df261945ecb80983b5c3ca7",
"sha256:b7493f73a2febe0dc33d51c99b474547f7f6c0b2c8fb2b21f453eef204c12148"
],
"version": "==0.13.1"
},
"macholib": {
"hashes": [
"sha256:ac02d29898cf66f27510d8f39e9112ae00590adb4a48ec57b25028d6962b1ae1",
"sha256:c4180ffc6f909bf8db6cd81cff4b6f601d575568f4d5dee148c830e9851eb9db"
],
"version": "==1.11"
},
"more-itertools": {
"hashes": [
"sha256:c187a73da93e7a8acc0001572aebc7e3c69daf7bf6881a2cea10650bd4420092",
"sha256:c476b5d3a34e12d40130bc2f935028b5f636df8f372dc2c1c01dc19681b2039e",
"sha256:fcbfeaea0be121980e15bc97b3817b5202ca73d0eae185b4550cbfce2a3ebb3d"
],
"version": "==4.3.0"
},
"parso": {
"hashes": [
"sha256:35704a43a3c113cce4de228ddb39aab374b8004f4f2407d070b6a2ca784ce8a2",
"sha256:895c63e93b94ac1e1690f5fdd40b65f07c8171e3e53cbd7793b5b96c0e0a7f24"
],
"version": "==0.3.1"
},
"pathlib2": {
"hashes": [
"sha256:8eb170f8d0d61825e09a95b38be068299ddeda82f35e96c3301a8a5e7604cb83",
"sha256:d1aa2a11ba7b8f7b21ab852b1fb5afb277e1bb99d5dfc663380b5015c0d80c5a"
],
"index": "pypi",
"markers": "python_version < '3.6'",
"version": "==2.3.2"
},
"pefile": {
"hashes": [
"sha256:4c5b7e2de0c8cb6c504592167acf83115cbbde01fe4a507c16a1422850e86cd6"
],
"version": "==2018.8.8"
},
"pexpect": {
"hashes": [
"sha256:2a8e88259839571d1251d278476f3eec5db26deb73a70be5ed5dc5435e418aba",
"sha256:3fbd41d4caf27fa4a377bfd16fef87271099463e6fa73e92a52f92dfee5d425b"
],
"markers": "sys_platform != 'win32'",
"version": "==4.6.0"
},
"pickleshare": {
"hashes": [
"sha256:87683d47965c1da65cdacaf31c8441d12b8044cdec9aca500cd78fc2c683afca",
"sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56"
],
"version": "==0.7.5"
},
"pluggy": {
"hashes": [
"sha256:447ba94990e8014ee25ec853339faf7b0fc8050cdc3289d4d71f7f410fb90095",
"sha256:bde19360a8ec4dfd8a20dcb811780a30998101f078fc7ded6162f0076f50508f"
],
"version": "==0.8.0"
},
"prompt-toolkit": {
"hashes": [
"sha256:c1d6aff5252ab2ef391c2fe498ed8c088066f66bc64a8d5c095bbf795d9fec34",
"sha256:d4c47f79b635a0e70b84fdb97ebd9a274203706b1ee5ed44c10da62755cf3ec9",
"sha256:fd17048d8335c1e6d5ee403c3569953ba3eb8555d710bfc548faf0712666ea39"
],
"version": "==2.0.7"
},
"ptyprocess": {
"hashes": [
"sha256:923f299cc5ad920c68f2bc0bc98b75b9f838b93b599941a6b63ddbc2476394c0",
"sha256:d7cc528d76e76342423ca640335bd3633420dc1366f258cb31d05e865ef5ca1f"
],
"version": "==0.6.0"
},
"py": {
"hashes": [
"sha256:bf92637198836372b520efcba9e020c330123be8ce527e535d185ed4b6f45694",
"sha256:e76826342cefe3c3d5f7e8ee4316b80d1dd8a300781612ddbc765c17ba25a6c6"
],
"version": "==1.7.0"
},
"pygments": {
"hashes": [
"sha256:78f3f434bcc5d6ee09020f92ba487f95ba50f1e3ef83ae96b9d5ffa1bab25c5d",
"sha256:dbae1046def0efb574852fab9e90209b23f556367b5a320c0bcb871c77c3e8cc"
],
"version": "==2.2.0"
},
"pyinstaller": {
"hashes": [
"sha256:a5a6e04a66abfcf8761e89a2ebad937919c6be33a7b8963e1a961b55cb35986b"
],
"index": "pypi",
"version": "==3.4"
},
"pytest": {
"hashes": [
"sha256:3f193df1cfe1d1609d4c583838bea3d532b18d6160fd3f55c9447fdca30848ec",
"sha256:e246cf173c01169b9617fc07264b7b1316e78d7a650055235d6d897bc80d9660"
],
"index": "pypi",
"version": "==3.10.1"
},
"pytest-cov": {
"hashes": [
"sha256:513c425e931a0344944f84ea47f3956be0e416d95acbd897a44970c8d926d5d7",
"sha256:e360f048b7dae3f2f2a9a4d067b2dd6b6a015d384d1577c994a43f3f7cbad762"
],
"index": "pypi",
"version": "==2.6.0"
},
"six": {
"hashes": [
"sha256:70e8a77beed4562e7f14fe23a786b54f6296e34344c23bc42f07b15018ff98e9",
"sha256:832dc0e10feb1aa2c68dcc57dbb658f1c7e65b9b61af69048abc87a2db00a0eb"
],
"version": "==1.11.0"
},
"traitlets": {
"hashes": [
"sha256:9c4bd2d267b7153df9152698efb1050a5d84982d3384a37b2c1f7723ba3e7835",
"sha256:c6cb5e6f57c5a9bdaa40fa71ce7b4af30298fbab9ece9815b5d995ab6217c7d9"
],
"version": "==4.3.2"
},
"wcwidth": {
"hashes": [
"sha256:3df37372226d6e63e1b1e1eda15c594bca98a22d33a23832a90998faa96bc65e",
"sha256:f4ebe71925af7b40a864553f761ed559b43544f8f71746c2d756c7fe788ade7c"
],
"version": "==0.1.7"
},
"wheel": {
"hashes": [
"sha256:196c9842d79262bb66fcf59faa4bd0deb27da911dbc7c6cdca931080eb1f0783",
"sha256:c93e2d711f5f9841e17f53b0e6c0ff85593f3b416b6eec7a9452041a59a42688"
],
"index": "pypi",
"version": "==0.32.2"
}
}
}
......@@ -13,7 +13,7 @@ There are two ways to install Flamenco Worker:
- If you have a distributable zip file (see [Packaging for distribution](#packaging-for-distribution))
unzip it, `cd` into it, then run `./flamenco-worker` (or `flamenco-worker.exe` on Windows).
- If you have a copy of the source files, run `pip3 install -e .` then run `flamenco-worker`. This
- If you have a copy of the source files, run `pipenv install` then run `flamenco-worker`. This
requires Python 3.5.2 or newer.
......
-r requirements-test.txt
ipython
pyinstaller
wheel
-r requirements.txt
# Primary dependencies
pytest==3.0.5
pytest-cov==2.4.0
# Secondary dependencies
coverage==4.2
py==1.4.32
attrs==18.2.0
requests==2.20.1
psutil==5.4.8
......@@ -3,7 +3,7 @@ import subprocess
from unittest.mock import patch, call
from test_runner import AbstractCommandTest
from .test_runner import AbstractCommandTest
class BlenderRenderTest(AbstractCommandTest):
......@@ -81,7 +81,7 @@ class BlenderRenderTest(AbstractCommandTest):
def test_cli_args(self):
"""Test that CLI arguments in the blender_cmd setting are handled properly."""
from mock_responses import CoroMock
from .mock_responses import CoroMock
filepath = str(Path(__file__).parent)
settings = {
......@@ -114,7 +114,7 @@ class BlenderRenderTest(AbstractCommandTest):
)
def test_python_expr(self):
from mock_responses import CoroMock
from .mock_responses import CoroMock
filepath = str(Path(__file__).parent)
settings = {
......
from pathlib import Path
import os
from test_runner import AbstractCommandTest
from .test_runner import AbstractCommandTest
class CopyFileTest(AbstractCommandTest):
......
from pathlib import Path
from test_runner import AbstractCommandTest
from .test_runner import AbstractCommandTest
class MergeProgressiveRendersCommandTest(AbstractCommandTest):
......
from pathlib import Path
import os
from test_runner import AbstractCommandTest
from .test_runner import AbstractCommandTest
class MoveOutOfWayTest(AbstractCommandTest):
......
import os
from pathlib import Path
from test_runner import AbstractCommandTest
from .test_runner import AbstractCommandTest
class MoveToFinalTest(AbstractCommandTest):
......
from pathlib import Path
import os
from test_runner import AbstractCommandTest
from .test_runner import AbstractCommandTest
class RemoveTreeTest(AbstractCommandTest):
......
......@@ -5,7 +5,7 @@ import tempfile
import psutil
from test_runner import AbstractCommandTest
from .test_runner import AbstractCommandTest
class PIDFileTest(AbstractCommandTest):
......
......@@ -10,7 +10,7 @@ class CoroMockTest(unittest.TestCase):
self.loop = construct_asyncio_loop()
def test_setting_return_value(self):
from mock_responses import CoroMock
from .mock_responses import CoroMock
cm = CoroMock()
cm.coro.return_value = '123'
......
from unittest.mock import Mock
from abstract_worker_test import AbstractWorkerTest
from .abstract_worker_test import AbstractWorkerTest
class MayIRunTest(AbstractWorkerTest):
......
......@@ -3,7 +3,7 @@ import tempfile
from pathlib import Path
from unittest import mock
from test_worker import AbstractFWorkerTest
from .test_worker import AbstractFWorkerTest
# Mock merge_with_home_config() so that it doesn't overwrite actual config.
......@@ -34,7 +34,7 @@ class PretaskWriteCheckTest(AbstractFWorkerTest):
self.worker.pretask_check_params.pre_task_check_write = (existing, )
def test_happy_remove_file(self):
from mock_responses import EmptyResponse, CoroMock
from .mock_responses import EmptyResponse, CoroMock
self.manager.post = CoroMock(return_value=EmptyResponse())
......@@ -52,7 +52,7 @@ class PretaskWriteCheckTest(AbstractFWorkerTest):
self.assertIsNone(self.worker.sleeping_task)
def test_happy_not_remove_file(self):
from mock_responses import EmptyResponse, CoroMock
from .mock_responses import EmptyResponse, CoroMock
self.manager.post = CoroMock(return_value=EmptyResponse())
......@@ -74,7 +74,7 @@ class PretaskWriteCheckTest(AbstractFWorkerTest):
@contextlib.contextmanager
def write_check(self, post_run=None):
from mock_responses import EmptyResponse, CoroMock
from .mock_responses import EmptyResponse, CoroMock
self.manager.post = CoroMock(return_value=EmptyResponse())
......@@ -123,7 +123,7 @@ class PretaskReadCheckTest(AbstractFWorkerTest):
@contextlib.contextmanager
def read_check(self, post_run=None):
from mock_responses import EmptyResponse, CoroMock
from .mock_responses import EmptyResponse, CoroMock
self.manager.post = CoroMock(return_value=EmptyResponse())
......
import asyncio
from unittest.mock import Mock, call
from abstract_worker_test import AbstractWorkerTest
from .abstract_worker_test import AbstractWorkerTest
class AbstractCommandTest(AbstractWorkerTest):
def setUp(self):
from mock_responses import CoroMock
from .mock_responses import CoroMock
from flamenco_worker.worker import FlamencoWorker
from flamenco_worker.runner import TaskRunner
from flamenco_worker.cli import construct_asyncio_loop
......
......@@ -6,7 +6,7 @@ from unittest.mock import Mock
import requests
from abstract_worker_test import AbstractWorkerTest
from .abstract_worker_test import AbstractWorkerTest
class TaskUpdateQueueTest(AbstractWorkerTest):
......@@ -14,7 +14,7 @@ class TaskUpdateQueueTest(AbstractWorkerTest):
from flamenco_worker.upstream import FlamencoManager
from flamenco_worker.upstream_update_queue import TaskUpdateQueue
from flamenco_worker.cli import construct_asyncio_loop
from mock_responses import CoroMock
from .mock_responses import CoroMock
self.asyncio_loop = construct_asyncio_loop()
self.shutdown_future = self.asyncio_loop.create_future()
......@@ -39,7 +39,7 @@ class TaskUpdateQueueTest(AbstractWorkerTest):
Also tests connection errors and other HTTP error statuses.
"""
from mock_responses import JsonResponse, EmptyResponse
from .mock_responses import JsonResponse, EmptyResponse
# Try different value types
payload = {'key': 'value',
......@@ -95,7 +95,7 @@ class TaskUpdateQueueTest(AbstractWorkerTest):
def test_queue_persistence(self):
"""Check that updates are pushed, even when the process is stopped & restarted."""
from mock_responses import EmptyResponse
from .mock_responses import EmptyResponse
from flamenco_worker.upstream_update_queue import TaskUpdateQueue
# Try different value types
......@@ -151,7 +151,7 @@ class TaskUpdateQueueTest(AbstractWorkerTest):
"""A 409 Conflict response should discard a queued task update.
"""
from mock_responses import TextResponse
from .mock_responses import TextResponse
# Try different value types
payload = {'key': 'value',
......@@ -190,7 +190,7 @@ class TaskUpdateQueueTest(AbstractWorkerTest):
while there are still updates in the local queue.
"""
from mock_responses import TextResponse
from .mock_responses import TextResponse
# Try different value types
payload = {'key': 'value',
......
......@@ -6,7 +6,7 @@ from unittest.mock import Mock
import asyncio
import requests
from abstract_worker_test import AbstractWorkerTest
from .abstract_worker_test import AbstractWorkerTest
class AbstractFWorkerTest(AbstractWorkerTest):
......@@ -16,7 +16,7 @@ class AbstractFWorkerTest(AbstractWorkerTest):
from flamenco_worker.worker import FlamencoWorker
from flamenco_worker.runner import TaskRunner
from flamenco_worker.upstream_update_queue import TaskUpdateQueue
from mock_responses import CoroMock
from .mock_responses import CoroMock
self.asyncio_loop = construct_asyncio_loop()
self.asyncio_loop.set_debug(True)
......@@ -73,7 +73,7 @@ class WorkerStartupTest(AbstractFWorkerTest):
@unittest.mock.patch('socket.gethostname')
@unittest.mock.patch('flamenco_worker.config.merge_with_home_config')
def test_startup_already_registered(self, mock_merge_with_home_config, mock_gethostname):
from mock_responses import EmptyResponse, CoroMock
from .mock_responses import EmptyResponse, CoroMock
mock_gethostname.return_value = 'ws-unittest'
self.manager.post = CoroMock(return_value=EmptyResponse())
......@@ -94,7 +94,7 @@ class WorkerStartupTest(AbstractFWorkerTest):
@unittest.mock.patch('flamenco_worker.config.merge_with_home_config')
def test_startup_registration(self, mock_merge_with_home_config, mock_gethostname):
from flamenco_worker.worker import detect_platform
from mock_responses import JsonResponse, CoroMock
from .mock_responses import JsonResponse, CoroMock
self.worker.worker_id = None
mock_gethostname.return_value = 'ws-unittest'
......@@ -128,7 +128,7 @@ class WorkerStartupTest(AbstractFWorkerTest):
"""Test that startup is aborted when the worker can't register."""
from flamenco_worker.worker import detect_platform, UnableToRegisterError
from mock_responses import JsonResponse, CoroMock
from .mock_responses import JsonResponse, CoroMock
self.worker.worker_id = None
mock_gethostname.return_value = 'ws-unittest'
......@@ -167,7 +167,7 @@ class TestWorkerTaskExecution(AbstractFWorkerTest):
def test_fetch_task_happy(self):
from unittest.mock import call
from mock_responses import JsonResponse, CoroMock
from .mock_responses import JsonResponse, CoroMock
self.manager.post = CoroMock()
# response when fetching a task
......@@ -223,7 +223,7 @@ class TestWorkerTaskExecution(AbstractFWorkerTest):
def test_stop_current_task(self):
"""Test that stopped tasks get status 'canceled'."""
from mock_responses import JsonResponse, CoroMock
from .mock_responses import JsonResponse, CoroMock
self.manager.post = CoroMock()
# response when fetching a task
......@@ -395,7 +395,7 @@ class WorkerShutdownTest(AbstractWorkerTest):
from flamenco_worker.worker import FlamencoWorker
from flamenco_worker.runner import TaskRunner
from flamenco_worker.upstream_update_queue import TaskUpdateQueue
from mock_responses import CoroMock
from .mock_responses import CoroMock
self.asyncio_loop = construct_asyncio_loop()
self.asyncio_loop.set_debug(True)
......@@ -439,7 +439,7 @@ class WorkerSleepingTest(AbstractFWorkerTest):
self.worker.loop = self.loop
def test_stop_current_task_go_sleep(self):
from mock_responses import JsonResponse, CoroMock
from .mock_responses import JsonResponse, CoroMock
self.manager.post = CoroMock()
# response when fetching a task
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment