Skip to content

Test "Update Stack" #9046

Description

@alexr00

Refs: #9013

  • macOS
  • linux
  • windows

Complexity: 4


Setup

  • Install the latest pre-release of GitHub Pull Requests
  • Open a clone of a GitHub repo
  • You will also need at least one stack of PRs. If you don't have one, here's how to create one:
    1. Create a PR
    2. From the head branch of the PR, create a new branch, make a change, and commit.
    3. With the extension, create a new PR from this branch, with the base branch being the head of the previous PR
    4. Verify that you see an option to create a stack
    5. Create the PR and verify that the PRs are stacked

Note

  • Resolving merge conflicts is not yet supported. If there are merge conflicts, "Update Stack" will not be offered.

Test a partially out of date stack

  • Have a stack of at least 3 PRs
  • Make a change in the middle PR
  • Make sure you have one of the PRs in the stack checked out.
  • Open all of the PR webviews in the stack. Verify that they all offer "Update Stack" in the stack section.
  • Use "Update Stack". Verify that the top PR in the stack is rebased and the results are pushed to GitHub.

Test a stack that is out of date with the base branch

  • Have a stack of at least 2 PRs
  • Make a change on the base branch (the branch that the bottom PR of the stack wants to merge into). Do not introduce a merge conflict.
  • Make sure you have one of the PRs in the stack checked out.
  • Open all of the PR webviews in the stack. Verify that they all offer "Update Stack" in the stack section.
  • Use "Update Stack". Verify all the PRs in the stack are rebased in a cascading rebase and are afterwards up-to-date with the base branch.

Test that "Update Stack" isn't offered when branch isn't checked out

  • Open the PR webview of a PR that's part of a stack.
  • Make sure that none of the branches in the stack are checked out.
  • Verify that "Update Stack" isn't offered.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions