StrictDoc Documentation
tests/end2end/screens/document/edit_document_grammar_element/edit_grammar_delete_existing_field/test_case.py
Source file coverage
Path:
tests/end2end/screens/document/edit_document_grammar_element/edit_grammar_delete_existing_field/test_case.py
Lines:
63
Non-empty lines:
49
Non-empty lines covered with requirements:
49 / 49 (100.0%)
Functions:
2
Functions covered by requirements:
2 / 2 (100.0%)
1
"""
2
@relation(SDOC-SRS-56, scope=file)
3
"""
4
 
5
from strictdoc.helpers.mid import MID
6
from tests.end2end.e2e_case import E2ECase
7
from tests.end2end.end2end_test_setup import End2EndTestSetup
8
from tests.end2end.helpers.screens.document.form_edit_grammar import (
9
    Form_EditGrammar,
10
)
11
from tests.end2end.helpers.screens.document.form_edit_grammar_elements import (
12
    Form_EditGrammarElements,
13
)
14
from tests.end2end.helpers.screens.project_index.screen_project_index import (
15
    Screen_ProjectIndex,
16
)
17
from tests.end2end.server import SDocTestServer
18
 
19
 
20
class Test(E2ECase):
21
    def test(self):
22
        test_setup = End2EndTestSetup(path_to_test_file=__file__)
23
 
24
        with SDocTestServer(
25
            input_path=test_setup.path_to_sandbox
26
        ) as test_server:
27
            self.open(test_server.get_host_and_port())
28
 
29
            screen_project_index = Screen_ProjectIndex(self)
30
 
31
            screen_project_index.assert_on_screen()
32
            screen_project_index.assert_contains_document("Document 1")
33
 
34
            screen_document = screen_project_index.do_click_on_first_document()
35
 
36
            screen_document.assert_on_screen_document()
37
            screen_document.assert_header_document_title("Document 1")
38
 
39
            screen_document.assert_text("Requirement title")
40
 
41
            form_edit_grammar: Form_EditGrammarElements = (
42
                screen_document.do_open_modal_form_edit_grammar()
43
            )
44
            form_edit_grammar.assert_on_grammar()
45
 
46
            form_edit_grammar_element: Form_EditGrammar = (
47
                form_edit_grammar.do_click_edit_grammar_element(2)
48
            )
49
            form_edit_grammar_element.assert_on_grammar()
50
 
51
            form_edit_grammar_element.assert_tab_is_open("Fields")
52
            level_grammar_field: MID = (
53
                form_edit_grammar_element.get_existing_mid_by_field_name(
54
                    "LEVEL"
55
                )
56
            )
57
            form_edit_grammar_element.do_delete_grammar_field(
58
                level_grammar_field
59
            )
60
 
61
            form_edit_grammar_element.do_form_submit()
62
 
63
        assert test_setup.compare_sandbox_and_expected_output()