GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — gh-100933: Improve `check_element` helper in `test_xml_etree` by sobolevn · Pull Request #100934 · python/cpython

Conversation

@sobolevn

@sobolevn sobolevn commented Jan 11, 2023 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Member

Items that this test checks are always str and dict:

  • attrib:

    cpython/Modules/_elementtree.c

    Lines 536 to 548 in a9f0144

    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:

    cpython/Modules/_elementtree.c

    Lines 561 to 564 in a9f0144

    PyObject *tmp = list_join(res);
    if (!tmp)
    return NULL;
    self->text = tmp;
  • tail:

    cpython/Modules/_elementtree.c

    Lines 582 to 585 in a9f0144

    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.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@sobolevn
pythongh-100933: Improve check_element helper in test_xml_etree
a11b403
@bedevere-bot bedevere-bot added the awaiting review label Jan 11, 2023
@bedevere-bot bedevere-bot mentioned this pull request Jan 11, 2023
Remove check_string and check_mapping from test_xml_etree #100933
Closed
@bedevere-bot bedevere-bot added the tests Tests in the Lib/test dir label Jan 11, 2023
@sobolevn sobolevn added the skip news label Jan 11, 2023
@sobolevn

sobolevn commented Feb 8, 2023

Copy link
Copy Markdown
Member Author

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

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@sobolevn
sobolevn requested a review from ambv February 8, 2023 07:47
@ambv ambv added needs backport to 3.10 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

miss-islington commented Feb 8, 2023

Copy link
Copy Markdown
Contributor

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

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@bedevere-bot bedevere-bot removed the awaiting review label Feb 8, 2023
@bedevere-bot

bedevere-bot commented Feb 8, 2023

Copy link
Copy Markdown

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

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@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
@sobolevn @miss-islington
pythongh-100933: Improve check_element helper in test_xml_etree (p…
46cf240
…ythonGH-100934)

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

Co-authored-by: Nikita Sobolev <[email protected]>
@bedevere-bot

bedevere-bot commented Feb 8, 2023

Copy link
Copy Markdown

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

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@bedevere-bot bedevere-bot removed the needs backport to 3.10 label Feb 8, 2023
miss-islington pushed a commit to miss-islington/cpython that referenced this pull request Feb 8, 2023
@sobolevn @miss-islington
pythongh-100933: Improve check_element helper in test_xml_etree (p…
513ade4
…ythonGH-100934)

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

Co-authored-by: Nikita Sobolev <[email protected]>
ambv pushed a commit that referenced this pull request Feb 8, 2023
@miss-islington @sobolevn
[3.11] gh-100933: Improve check_element helper in test_xml_etree (G…
5f0b819
…H-100934) (#101686)

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

Co-authored-by: Nikita Sobolev <[email protected]>
ambv pushed a commit that referenced this pull request Feb 8, 2023
@miss-islington @sobolevn
[3.10] gh-100933: Improve check_element helper in test_xml_etree (G…
c51cd54
…H-100934) (#101687)

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

Co-authored-by: Nikita Sobolev <[email protected]>
carljm added a commit to carljm/cpython that referenced this pull request Feb 9, 2023
@carljm
Merge branch 'main' into inlinecomp2
be3becc
* 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

Reviewers

@ambv ambv Awaiting requested review from ambv

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

skip news tests Tests in the Lib/test dir

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

4 participants

@sobolevn @miss-islington @bedevere-bot @ambv
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.