def test_get_cpu_usage_bad(): fake_task = mock.create_autospec(mesos.cli.task.Task) fake_task.cpu_limit = 1.1 fake_duration = 100 fake_task.stats = {"cpus_system_time_secs": 50.0, "cpus_user_time_secs": 50.0} fake_task.__getitem__.return_value = [ {"state": "TASK_RUNNING", "timestamp": int(datetime.datetime.now().strftime("%s")) - fake_duration} ] actual = mesos_tools.get_cpu_usage(fake_task) assert PaastaColors.red("100.0%") in actual
def test_get_cpu_usage_handles_missing_stats(): fake_task = mock.create_autospec(mesos.cli.task.Task) fake_task.cpu_limit = 1.1 fake_duration = 100 fake_task.stats = {} fake_task.__getitem__.return_value = [ {"state": "TASK_RUNNING", "timestamp": int(datetime.datetime.now().strftime("%s")) - fake_duration} ] actual = mesos_tools.get_cpu_usage(fake_task) assert "0.0%" in actual
def test_get_cpu_usage_good(): fake_task = mock.create_autospec(mesos.cli.task.Task) fake_task.cpu_limit = 0.35 fake_duration = 100 fake_task.stats = {"cpus_system_time_secs": 2.5, "cpus_user_time_secs": 0.0} fake_task.__getitem__.return_value = [ {"state": "TASK_RUNNING", "timestamp": int(datetime.datetime.now().strftime("%s")) - fake_duration} ] actual = mesos_tools.get_cpu_usage(fake_task) assert "10.0%" == actual
def test_get_cpu_usage_handles_missing_stats(): fake_task = mock.create_autospec(mesos.cli.task.Task) fake_task.cpu_limit = 1.1 fake_duration = 100 fake_task.stats = {} fake_task.__getitem__.return_value = [{ 'state': 'TASK_RUNNING', 'timestamp': int(datetime.datetime.now().strftime('%s')) - fake_duration, }] actual = mesos_tools.get_cpu_usage(fake_task) assert "0.0%" in actual
def test_get_cpu_usage_bad(): fake_task = mock.create_autospec(mesos.cli.task.Task) fake_task.cpu_limit = 1.1 fake_duration = 100 fake_task.stats = { 'cpus_system_time_secs': 50.0, 'cpus_user_time_secs': 50.0, } fake_task.__getitem__.return_value = [{ 'state': 'TASK_RUNNING', 'timestamp': int(datetime.datetime.now().strftime('%s')) - fake_duration, }] actual = mesos_tools.get_cpu_usage(fake_task) assert PaastaColors.red('100.0%') in actual
def test_get_cpu_usage_bad(): fake_task = mock.create_autospec(mesos.cli.task.Task) fake_task.cpu_limit = 1.1 fake_duration = 100 fake_task.stats = { 'cpus_system_time_secs': 50.0, 'cpus_user_time_secs': 50.0, } current_time = datetime.datetime.now() fake_task.__getitem__.return_value = [{ 'state': 'TASK_RUNNING', 'timestamp': int(current_time.strftime('%s')) - fake_duration, }] with mock.patch('paasta_tools.mesos_tools.datetime.datetime', autospec=True) as mock_datetime: mock_datetime.now.return_value = current_time actual = mesos_tools.get_cpu_usage(fake_task) assert PaastaColors.red('100.0%') in actual