12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- # -*- coding: utf-8 -*-
- """
- unit tests for the cache runner
- """
- from __future__ import absolute_import, print_function, unicode_literals
- import os
- import salt.runners.queue as queue_mod
- from tests.support.helpers import slowTest
- from tests.support.mixins import LoaderModuleMockMixin
- from tests.support.mock import MagicMock, patch
- from tests.support.runtests import RUNTIME_VARS
- from tests.support.unit import TestCase
- class QueueTest(TestCase, LoaderModuleMockMixin):
- """
- Validate the queue runner
- """
- def setup_loader_modules(self):
- return {
- queue_mod: {
- "__opts__": {
- "sock_dir": os.path.join(RUNTIME_VARS.TMP, "queue-runner-sock-dir"),
- "transport": "zeromq",
- }
- }
- }
- def test_insert_runner(self):
- queue_insert = MagicMock(return_value=True)
- with patch.object(queue_mod, "insert", queue_insert):
- queue_mod.insert_runner("test.stdout_print", queue="salt")
- expected_call = {
- "queue": "salt",
- "items": {"fun": "test.stdout_print", "args": [], "kwargs": {}},
- "backend": "pgjsonb",
- }
- queue_insert.assert_called_once_with(**expected_call)
- @slowTest
- def test_process_runner(self):
- ret = [{"fun": "test.stdout_print", "args": [], "kwargs": {}}]
- queue_pop = MagicMock(return_value=ret)
- test_stdout_print = MagicMock(return_value=True)
- with patch.dict(queue_mod.__salt__, {"test.stdout_print": test_stdout_print}):
- with patch.object(queue_mod, "pop", queue_pop):
- queue_mod.process_runner(queue="salt")
- queue_pop.assert_called_once_with(
- is_runner=True, queue="salt", quantity=1, backend="pgjsonb"
- )
- test_stdout_print.assert_called_once_with()
- queue_pop.assert_called_once_with(
- is_runner=True, queue="salt", quantity=1, backend="pgjsonb"
- )
|