• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

testit-tms / adapters-python / 17799076352

17 Sep 2025 01:22PM UTC coverage: 36.943% (-6.5%) from 43.443%
17799076352

push

github

web-flow
fix: TMS-35114: add threads for creating and updating autotests with … (#202)

* fix: TMS-35114: add threads for creating and updating autotests with the "importRealtime = false" parameter.

* fix: fix the names of the methods for api_client and converter.

* chore: code styles and client version

---------

Co-authored-by: pavel.butuzov <pavel.butuzov@testit.software>
Co-authored-by: Dmitry Ermakovich <dmitry.ermakovich@testit.software>

102 of 224 new or added lines in 15 files covered. (45.54%)

1 existing line in 1 file now uncovered.

1293 of 3500 relevant lines covered (36.94%)

0.74 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/testit-adapter-robotframework/src/testit_adapter_robotframework/utils.py
1
import hashlib
×
2
from datetime import datetime
×
NEW
3
from typing import List
×
4

5
from testit_python_commons.models.step_result import StepResult
×
6
from testit_python_commons.models.test_result import TestResult
×
7

8

9
def convert_time(time):
×
10
    date = datetime.strptime(time, "%Y%m%d %H:%M:%S.%f")
×
11
    date = date.replace(tzinfo=datetime.now().astimezone().tzinfo)
×
12
    return date
×
13

14

15
def convert_executable_test_to_test_result_model(executable_test: dict) -> TestResult:
×
16
    return TestResult()\
×
17
        .set_external_id(executable_test['externalID'])\
18
        .set_autotest_name(executable_test['autoTestName'])\
19
        .set_step_results(
20
            step_results_to_autotest_steps_model(executable_test['stepResults']))\
21
        .set_setup_results(
22
            step_results_to_autotest_steps_model(executable_test['setUpResults']))\
23
        .set_teardown_results(
24
            step_results_to_autotest_steps_model(executable_test['tearDownResults']))\
25
        .set_duration(executable_test['duration'])\
26
        .set_outcome(executable_test['outcome'])\
27
        .set_traces(executable_test['traces'])\
28
        .set_attachments(executable_test['attachments'])\
29
        .set_parameters(executable_test['parameters'])\
30
        .set_properties(executable_test['properties'])\
31
        .set_namespace(executable_test['namespace'])\
32
        .set_classname(executable_test['classname'])\
33
        .set_title(executable_test['title'])\
34
        .set_description(executable_test['description'])\
35
        .set_links(executable_test['links'])\
36
        .set_result_links(executable_test['resultLinks'])\
37
        .set_labels(executable_test['labels'])\
38
        .set_work_item_ids(executable_test['workItemsID'])\
39
        .set_message(executable_test['message'])\
40
        .set_external_key(executable_test['externalKey'])
41

42

NEW
43
def step_results_to_autotest_steps_model(step_results: dict) -> List[StepResult]:
×
44
    autotest_model_steps = []
×
45

46
    for step_result in step_results:
×
47
        step_result_model = StepResult()\
×
48
            .set_title(step_result['title'])\
49
            .set_description(step_result['description'])\
50
            .set_outcome(step_result['outcome'])\
51
            .set_duration(step_result['duration'])\
52
            .set_attachments(step_result['attachments'])
53

54
        if 'parameters' in step_result:
×
55
            step_result_model.set_parameters(step_result['parameters'])
×
56

57
        if 'step_results' in step_result:
×
58
            step_result_model.set_step_results(
×
59
                step_results_to_autotest_steps_model(step_result['step_results']))
60

61
        autotest_model_steps.append(step_result_model)
×
62

63
    return autotest_model_steps
×
64

65

66
def get_hash(value: str):
×
67
    md = hashlib.sha256(bytes(value, encoding='utf-8'))
×
68
    return md.hexdigest()
×
69

70

71
STATUSES = {'FAIL': 'Failed', 'PASS': 'Passed', 'SKIP': 'Skipped', 'NOT RUN': 'Skipped'}
×
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc