Beispiel #1
0
    def test_absent(self):
        '''
        Test to remove a job from queue
        '''
        name = 'jboss'

        ret = {'name': name,
               'result': None,
               'changes': {},
               'comment': ''}

        with patch.dict(at.__opts__, {'test': True}):
            ret.update({'comment': 'Remove jobs()'})
            self.assertDictEqual(at.absent(name), ret)

        with patch.dict(at.__opts__, {'test': False}):
            comt = 'limit parameter not supported {0}'.format(name)
            ret.update({'comment': comt, 'result': False})
            self.assertDictEqual(at.absent(name), ret)

            mock = MagicMock(return_value={'jobs': []})
            mock_bool = MagicMock(return_value=False)
            with patch.dict(at.__salt__, {'at.atq': mock,
                                          'cmd.run': mock_bool}):
                comt = 'No match jobs or time format error'
                ret.update({'comment': comt, 'result': False, 'name': 'all'})
                self.assertDictEqual(at.absent('all'), ret)

            mock = MagicMock(return_value={'jobs': [{'job': 'rose'}]})
            mock_bool = MagicMock(return_value=False)
            with patch.dict(at.__salt__, {'at.atq': mock,
                                          'cmd.run': mock_bool}):
                comt = "Remove job(rose) from queue but (['rose']) fail"
                ret.update({'comment': comt, 'result': True})
                self.assertDictEqual(at.absent('all'), ret)
Beispiel #2
0
    def test_absent(self):
        '''
        Test to remove a job from queue
        '''
        name = 'jboss'

        ret = {'name': name, 'result': None, 'changes': {}, 'comment': ''}

        with patch.dict(at.__opts__, {'test': True}):
            ret.update({'comment': 'Remove jobs()'})
            self.assertDictEqual(at.absent(name), ret)

        with patch.dict(at.__opts__, {'test': False}):
            comt = 'limit parameter not supported {0}'.format(name)
            ret.update({'comment': comt, 'result': False})
            self.assertDictEqual(at.absent(name), ret)

            mock = MagicMock(return_value={'jobs': []})
            mock_bool = MagicMock(return_value=False)
            with patch.dict(at.__salt__, {
                    'at.atq': mock,
                    'cmd.run': mock_bool
            }):
                comt = 'No match jobs or time format error'
                ret.update({'comment': comt, 'result': False, 'name': 'all'})
                self.assertDictEqual(at.absent('all'), ret)

            mock = MagicMock(return_value={'jobs': [{'job': 'rose'}]})
            mock_bool = MagicMock(return_value=False)
            with patch.dict(at.__salt__, {
                    'at.atq': mock,
                    'cmd.run': mock_bool
            }):
                comt = "Remove job(rose) from queue but (['rose']) fail"
                ret.update({'comment': comt, 'result': True})
                self.assertDictEqual(at.absent('all'), ret)
Beispiel #3
0
    def test_absent(self):
        '''
        Test to remove a job from queue
        '''
        # input variables
        name = 'jboss'
        tag = 'rose'
        user = '******'

        # mock for at.atrm module call
        mock_atatrm = {
            'jobs': {
                'removed': ['1476033859.a', '1476033855.a'],
                'tag': None,
            },
        }

        # mock for at.jobcheck module call
        mock_atjobcheck = {
            'jobs': [
                {
                    'date': '2015-11-04',
                    'job': '1476031633.a',
                    'queue': 'a',
                    'tag': tag,
                    'time': '09:09:00',
                    'user': user,
                },
            ],
        }

        # normal return
        ret = {
            'name': name,
            'result': True,
            'changes': {
                'removed': ['1476033859.a', '1476033855.a'],
            },
            'comment': 'removed 2 job(s)',
        }

        # remove a job with test=True
        with patch.dict(at.__opts__, {'test': True}):
            ret_test = {}
            ret_test.update(ret)
            ret_test.update({
                'result': None,
                'changes': {},
                'comment': 'removed ? job(s)'
            })
            self.assertDictEqual(at.absent(name), ret_test)

        # remove a job and pass limit parameter
        with patch.dict(at.__opts__, {'test': False}):
            ret_limit = {}
            ret_limit.update(ret)
            ret_limit.update({
                'result':
                False,
                'changes': {},
                'comment':
                'limit parameter not supported {0}'.format(name),
            })
            self.assertDictEqual(at.absent(name, limit='all'), ret_limit)

        # remove all jobs (2 jobs found)
        mock = MagicMock(return_value=mock_atatrm)
        with patch.dict(at.__salt__, {'at.atrm': mock}):
            with patch.dict(at.__opts__, {'test': False}):
                self.assertDictEqual(at.absent(name), ret)

        # remove all jobs (0 jobs found)
        mock_atatrm_nojobs = {}
        mock_atatrm_nojobs.update(mock_atatrm)
        mock_atatrm_nojobs.update({
            'jobs': {
                'removed': [],
            },
        })
        mock = MagicMock(return_value=mock_atatrm_nojobs)
        with patch.dict(at.__salt__, {'at.atrm': mock}):
            with patch.dict(at.__opts__, {'test': False}):
                ret_nojobs = {}
                ret_nojobs.update(ret)
                ret_nojobs.update({
                    'changes': {},
                    'comment': ret['comment'].replace('2', '0'),
                })
                self.assertDictEqual(at.absent(name), ret_nojobs)

        # remove all tagged jobs (1 jobs found)
        mock_atatrm_tag = {}
        mock_atatrm_tag.update(mock_atatrm)
        mock_atatrm_tag.update({
            'jobs': {
                'removed': ['1476031633.a'],
                'tag': 'rose',
            },
        })
        mock = MagicMock(return_value=mock_atatrm_tag)
        with patch.dict(at.__salt__, {'at.atrm': mock}):
            mock = MagicMock(return_value=mock_atjobcheck)
            with patch.dict(at.__salt__, {'at.jobcheck': mock}):
                with patch.dict(at.__opts__, {'test': False}):
                    ret_tag = {}
                    ret_tag.update(ret)
                    ret_tag.update({
                        'changes': {
                            'removed': ['1476031633.a'],
                        },
                        'comment': ret['comment'].replace('2', '1'),
                    })
                    self.assertDictEqual(at.absent(name, tag=tag), ret_tag)
Beispiel #4
0
    def test_absent(self):
        """
        Test to remove a job from queue
        """
        # input variables
        name = "jboss"
        tag = "rose"
        user = "******"

        # mock for at.atrm module call
        mock_atatrm = {
            "jobs": {
                "removed": ["1476033859.a", "1476033855.a"],
                "tag": None
            },
        }

        # mock for at.jobcheck module call
        mock_atjobcheck = {
            "jobs": [
                {
                    "date": "2015-11-04",
                    "job": "1476031633.a",
                    "queue": "a",
                    "tag": tag,
                    "time": "09:09:00",
                    "user": user,
                },
            ],
        }

        # normal return
        ret = {
            "name": name,
            "result": True,
            "changes": {
                "removed": ["1476033859.a", "1476033855.a"]
            },
            "comment": "removed 2 job(s)",
        }

        # remove a job with test=True
        with patch.dict(at.__opts__, {"test": True}):
            ret_test = {}
            ret_test.update(ret)
            ret_test.update({
                "result": None,
                "changes": {},
                "comment": "removed ? job(s)"
            })
            self.assertDictEqual(at.absent(name), ret_test)

        # remove a job and pass limit parameter
        with patch.dict(at.__opts__, {"test": False}):
            ret_limit = {}
            ret_limit.update(ret)
            ret_limit.update({
                "result":
                False,
                "changes": {},
                "comment":
                "limit parameter not supported {0}".format(name),
            })
            self.assertDictEqual(at.absent(name, limit="all"), ret_limit)

        # remove all jobs (2 jobs found)
        mock = MagicMock(return_value=mock_atatrm)
        with patch.dict(at.__salt__, {"at.atrm": mock}):
            with patch.dict(at.__opts__, {"test": False}):
                self.assertDictEqual(at.absent(name), ret)

        # remove all jobs (0 jobs found)
        mock_atatrm_nojobs = {}
        mock_atatrm_nojobs.update(mock_atatrm)
        mock_atatrm_nojobs.update({"jobs": {"removed": []}})
        mock = MagicMock(return_value=mock_atatrm_nojobs)
        with patch.dict(at.__salt__, {"at.atrm": mock}):
            with patch.dict(at.__opts__, {"test": False}):
                ret_nojobs = {}
                ret_nojobs.update(ret)
                ret_nojobs.update({
                    "changes": {},
                    "comment": ret["comment"].replace("2", "0")
                })
                self.assertDictEqual(at.absent(name), ret_nojobs)

        # remove all tagged jobs (1 jobs found)
        mock_atatrm_tag = {}
        mock_atatrm_tag.update(mock_atatrm)
        mock_atatrm_tag.update(
            {"jobs": {
                "removed": ["1476031633.a"],
                "tag": "rose"
            }})
        mock = MagicMock(return_value=mock_atatrm_tag)
        with patch.dict(at.__salt__, {"at.atrm": mock}):
            mock = MagicMock(return_value=mock_atjobcheck)
            with patch.dict(at.__salt__, {"at.jobcheck": mock}):
                with patch.dict(at.__opts__, {"test": False}):
                    ret_tag = {}
                    ret_tag.update(ret)
                    ret_tag.update({
                        "changes": {
                            "removed": ["1476031633.a"]
                        },
                        "comment": ret["comment"].replace("2", "1"),
                    })
                    self.assertDictEqual(at.absent(name, tag=tag), ret_tag)
Beispiel #5
0
    def test_absent(self):
        '''
        Test to remove a job from queue
        '''
        # input variables
        name = 'jboss'
        tag = 'rose'
        user = '******'

        # mock for at.atrm module call
        mock_atatrm = {
            'jobs': {
                'removed': ['1476033859.a', '1476033855.a'],
                'tag': None,
             },
        }

        # mock for at.jobcheck module call
        mock_atjobcheck = {
            'jobs': [
                {
                    'date': '2015-11-04',
                    'job': '1476031633.a',
                    'queue': 'a',
                    'tag': tag,
                    'time': '09:09:00',
                    'user': user,
                },
            ],
        }

        # normal return
        ret = {
            'name': name,
            'result': True,
            'changes': {
                'removed': ['1476033859.a', '1476033855.a'],
             },
            'comment': 'removed 2 job(s)',
        }

        # remove a job with test=True
        with patch.dict(at.__opts__, {'test': True}):
            ret_test = {}
            ret_test.update(ret)
            ret_test.update({
                'result': None,
                'changes': {},
                'comment': 'removed ? job(s)'
            })
            self.assertDictEqual(at.absent(name), ret_test)

        # remove a job and pass limit parameter
        with patch.dict(at.__opts__, {'test': False}):
            ret_limit = {}
            ret_limit.update(ret)
            ret_limit.update({
                'result': False,
                'changes': {},
                'comment': 'limit parameter not supported {0}'.format(name),
            })
            self.assertDictEqual(at.absent(name, limit='all'), ret_limit)

        # remove all jobs (2 jobs found)
        mock = MagicMock(return_value=mock_atatrm)
        with patch.dict(at.__salt__, {'at.atrm': mock}):
            with patch.dict(at.__opts__, {'test': False}):
                self.assertDictEqual(at.absent(name), ret)

        # remove all jobs (0 jobs found)
        mock_atatrm_nojobs = {}
        mock_atatrm_nojobs.update(mock_atatrm)
        mock_atatrm_nojobs.update({
            'jobs': {
                'removed': [],
            },
        })
        mock = MagicMock(return_value=mock_atatrm_nojobs)
        with patch.dict(at.__salt__, {'at.atrm': mock}):
            with patch.dict(at.__opts__, {'test': False}):
                ret_nojobs = {}
                ret_nojobs.update(ret)
                ret_nojobs.update({
                    'changes': {},
                    'comment': ret['comment'].replace('2', '0'),
                })
                self.assertDictEqual(at.absent(name), ret_nojobs)

        # remove all tagged jobs (1 jobs found)
        mock_atatrm_tag = {}
        mock_atatrm_tag.update(mock_atatrm)
        mock_atatrm_tag.update({
            'jobs': {
                'removed': ['1476031633.a'],
                'tag': 'rose',
            },
        })
        mock = MagicMock(return_value=mock_atatrm_tag)
        with patch.dict(at.__salt__, {'at.atrm': mock}):
            mock = MagicMock(return_value=mock_atjobcheck)
            with patch.dict(at.__salt__, {'at.jobcheck': mock}):
                with patch.dict(at.__opts__, {'test': False}):
                    ret_tag = {}
                    ret_tag.update(ret)
                    ret_tag.update({
                        'changes': {
                            'removed': ['1476031633.a'],
                        },
                        'comment': ret['comment'].replace('2', '1'),
                    })
                    self.assertDictEqual(at.absent(name, tag=tag), ret_tag)