File: test_resolve_elements.py

package info (click to toggle)
python-azure 20201208%2Bgit-6
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 1,437,920 kB
  • sloc: python: 4,287,452; javascript: 269; makefile: 198; sh: 187; xml: 106
file content (42 lines) | stat: -rw-r--r-- 1,706 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for
# license information.
# --------------------------------------------------------------------------

import re
from azure.ai.formrecognizer._helpers import get_element_type
from testcase import FormRecognizerTest


class TestResolveElements(FormRecognizerTest):

    def test_word_reference(self):
        word_unlabeled_ref = "#/readResults/13/lines/91/words/1000"
        assert get_element_type(word_unlabeled_ref) == "word"
        indices = [int(s) for s in re.findall(r"\d+", word_unlabeled_ref)]
        assert [13, 91, 1000] == indices

    def test_line_reference(self):
        line_unlabeled_ref = "#/readResults/3/lines/1"
        assert get_element_type(line_unlabeled_ref) == "line"
        indices = [int(s) for s in re.findall(r"\d+", line_unlabeled_ref)]
        assert [3, 1] == indices

    def test_selection_mark_reference(self):
        selection_mark_ref = "#/readResults/0/selectionMarks/0"
        assert get_element_type(selection_mark_ref) == "selectionMark"
        indices = [int(s) for s in re.findall(r"\d+", selection_mark_ref)]
        assert [0, 0] == indices

    def test_bad_ref(self):
        # None will raise in the function that calls get_element_type
        bad_ref1 = "#/readResults/3/thing/5"
        assert get_element_type(bad_ref1) is None

        bad_ref2 = "#/readResults/3"
        assert get_element_type(bad_ref2) is None

        bad_ref3 = "#/analyzeResult/readResults/100"
        assert get_element_type(bad_ref3) is None