salt/tests/unit/utils/test_jid.py
2018-01-12 08:42:39 -08:00

48 lines
1.6 KiB
Python

# -*- coding: utf-8 -*-
'''
Tests for salt.utils.jid
'''
# Import Python libs
from __future__ import absolute_import, unicode_literals
import datetime
import os
# Import Salt libs
import salt.utils.jid
from tests.support.unit import TestCase, skipIf
from tests.support.mock import (
patch,
NO_MOCK,
NO_MOCK_REASON
)
class JidTestCase(TestCase):
def test_jid_to_time(self):
test_jid = 20131219110700123489
expected_jid = '2013, Dec 19 11:07:00.123489'
self.assertEqual(salt.utils.jid.jid_to_time(test_jid), expected_jid)
# Test incorrect lengths
incorrect_jid_length = 2012
self.assertEqual(salt.utils.jid.jid_to_time(incorrect_jid_length), '')
def test_is_jid(self):
self.assertTrue(salt.utils.jid.is_jid('20131219110700123489')) # Valid JID
self.assertFalse(salt.utils.jid.is_jid(20131219110700123489)) # int
self.assertFalse(salt.utils.jid.is_jid('2013121911070012348911111')) # Wrong length
@skipIf(NO_MOCK, NO_MOCK_REASON)
def test_gen_jid(self):
now = datetime.datetime(2002, 12, 25, 12, 00, 00, 00)
with patch('datetime.datetime'):
datetime.datetime.now.return_value = now
ret = salt.utils.jid.gen_jid({})
self.assertEqual(ret, '20021225120000000000')
salt.utils.jid.LAST_JID_DATETIME = None
ret = salt.utils.jid.gen_jid({'unique_jid': True})
self.assertEqual(ret, '20021225120000000000_{0}'.format(os.getpid()))
ret = salt.utils.jid.gen_jid({'unique_jid': True})
self.assertEqual(ret, '20021225120000000001_{0}'.format(os.getpid()))