stacktach/tests/unit/test_stacktach_utils.py
2014-03-28 11:47:16 -03:00

90 lines
3.1 KiB
Python

# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
import mox
import decimal
from stacktach import utils as stacktach_utils
from utils import INSTANCE_ID_1
from utils import MESSAGE_ID_1
from utils import REQUEST_ID_1
from tests.unit import StacktachBaseTestCase
class StacktachUtilsTestCase(StacktachBaseTestCase):
def setUp(self):
self.mox = mox.Mox()
def tearDown(self):
self.mox.UnsetStubs()
def test_is_uuid_like(self):
uuid = INSTANCE_ID_1
self.assertTrue(stacktach_utils.is_uuid_like(uuid))
def test_is_uuid_like_no_dashes(self):
uuid = "08f685d963524dbc827196cc54bf14cd"
self.assertTrue(stacktach_utils.is_uuid_like(uuid))
def test_is_uuid_like_invalid(self):
uuid = "$-^&#$"
self.assertFalse(stacktach_utils.is_uuid_like(uuid))
def test_is_request_id_like_with_uuid(self):
uuid = MESSAGE_ID_1
self.assertTrue(stacktach_utils.is_request_id_like(uuid))
def test_is_message_id_like_with_req_uuid(self):
uuid = REQUEST_ID_1
self.assertTrue(stacktach_utils.is_request_id_like(uuid))
def test_is_message_id_like_invalid_req(self):
uuid = "req-$-^&#$"
self.assertFalse(stacktach_utils.is_request_id_like(uuid))
def test_is_message_id_like_invalid(self):
uuid = "$-^&#$"
self.assertFalse(stacktach_utils.is_request_id_like(uuid))
def test_str_time_to_unix(self):
self.assertEqual(
stacktach_utils.str_time_to_unix("2013-05-15T11:51:11Z"),
decimal.Decimal('1368618671'))
self.assertEqual(
stacktach_utils.str_time_to_unix("2013-05-15T11:51:11.123Z"),
decimal.Decimal('1368618671.123'))
self.assertEqual(
stacktach_utils.str_time_to_unix("2013-05-15T11:51:11"),
decimal.Decimal('1368618671'))
self.assertEqual(
stacktach_utils.str_time_to_unix("2013-05-15T11:51:11.123"),
decimal.Decimal('1368618671.123'))
self.assertEqual(
stacktach_utils.str_time_to_unix("2013-05-15 11:51:11"),
decimal.Decimal('1368618671'))
self.assertEqual(
stacktach_utils.str_time_to_unix("2013-05-15 11:51:11.123"),
decimal.Decimal('1368618671.123'))
with self.assertRaises(Exception):
stacktach_utils.str_time_to_unix("invalid date"),
decimal.Decimal('1368618671')