Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gh-100933: Improve check_element helper in test_xml_etree #100934

Merged
merged 1 commit into from
Feb 8, 2023

Conversation

sobolevn
Copy link
Member

@sobolevn sobolevn commented Jan 11, 2023

Items that this test checks are always str and dict:

  • attrib:
    element_get_attrib(ElementObject* self)
    {
    /* return borrowed reference to attrib dictionary */
    /* note: this function assumes that the extra section exists */
    PyObject* res = self->extra->attrib;
    if (!res) {
    /* create missing dictionary */
    res = self->extra->attrib = PyDict_New();
    }
    return res;
  • text:
    PyObject *tmp = list_join(res);
    if (!tmp)
    return NULL;
    self->text = tmp;
  • tail:
    PyObject *tmp = list_join(res);
    if (!tmp)
    return NULL;
    self->tail = tmp;

As you can see, there are no "custom" types that should be checked differently. isinstance is enough.

test_xml_etree_c is also affected by this change.

@sobolevn
Copy link
Member Author

sobolevn commented Feb 8, 2023

@ambv I've updated the description of this PR as we discussed. Can you please take a look now? 🙂

@sobolevn sobolevn requested a review from ambv February 8, 2023 07:47
@ambv ambv added needs backport to 3.10 only security fixes needs backport to 3.11 only security fixes labels Feb 8, 2023
@ambv ambv merged commit eb49d32 into python:main Feb 8, 2023
@miss-islington
Copy link
Contributor

Thanks @sobolevn for the PR, and @ambv for merging it 🌮🎉.. I'm working now to backport this PR to: 3.10, 3.11.
🐍🍒⛏🤖

@bedevere-bot
Copy link

GH-101686 is a backport of this pull request to the 3.11 branch.

@bedevere-bot bedevere-bot removed the needs backport to 3.11 only security fixes label Feb 8, 2023
miss-islington pushed a commit to miss-islington/cpython that referenced this pull request Feb 8, 2023
…ythonGH-100934)

Items checked by this test are always `str` and `dict` instances.
(cherry picked from commit eb49d32)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
@bedevere-bot
Copy link

GH-101687 is a backport of this pull request to the 3.10 branch.

@bedevere-bot bedevere-bot removed the needs backport to 3.10 only security fixes label Feb 8, 2023
miss-islington pushed a commit to miss-islington/cpython that referenced this pull request Feb 8, 2023
…ythonGH-100934)

Items checked by this test are always `str` and `dict` instances.
(cherry picked from commit eb49d32)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
ambv pushed a commit that referenced this pull request Feb 8, 2023
…H-100934) (#101686)

Items checked by this test are always `str` and `dict` instances.
(cherry picked from commit eb49d32)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
ambv pushed a commit that referenced this pull request Feb 8, 2023
…H-100934) (#101687)

Items checked by this test are always `str` and `dict` instances.
(cherry picked from commit eb49d32)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
carljm added a commit to carljm/cpython that referenced this pull request Feb 9, 2023
* main: (82 commits)
  pythongh-101670: typo fix in PyImport_ExtendInittab() (python#101723)
  pythonGH-99293: Document that `Py_TPFLAGS_VALID_VERSION_TAG` shouldn't be used. (#pythonGH-101736)
  no-issue: Add Dong-hee Na as the cjkcodecs codeowner (pythongh-101731)
  pythongh-101678: Merge math_1_to_whatever() and math_1() (python#101730)
  pythongh-101678: refactor the math module to use special functions from c11 (pythonGH-101679)
  pythongh-85984: Remove legacy Lib/pty.py code. (python#92365)
  pythongh-98831: Use opcode metadata for stack_effect() (python#101704)
  pythongh-101283: Version was just released, so should be changed in 3.11.3 (pythonGH-101719)
  pythongh-101283: Fix use of unbound variable (pythonGH-101712)
  pythongh-101283: Improved fallback logic for subprocess with shell=True on Windows (pythonGH-101286)
  pythongh-101277: Port more itertools static types to heap types (python#101304)
  pythongh-98831: Modernize CALL and family (python#101508)
  pythonGH-101696: invalidate type version tag in `_PyStaticType_Dealloc` (python#101697)
  pythongh-100221: Fix creating dirs in `make sharedinstall` (pythonGH-100329)
  pythongh-101670: typo fix in PyImport_AppendInittab() (pythonGH-101672)
  pythongh-101196: Make isdir/isfile/exists faster on Windows (pythonGH-101324)
  pythongh-101614: Don't treat python3_d.dll as a Python DLL when checking extension modules for incompatibility (pythonGH-101615)
  pythongh-100933: Improve `check_element` helper in `test_xml_etree` (python#100934)
  pythonGH-101578: Normalize the current exception (pythonGH-101607)
  pythongh-47937: Note that Popen attributes are read-only (python#93070)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
skip news tests Tests in the Lib/test dir
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants