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

Test plan for feature Generic Hash #7524

Merged
merged 8 commits into from
Oct 10, 2023

Conversation

congh-nvidia
Copy link
Contributor

@congh-nvidia congh-nvidia commented Feb 21, 2023

Description of PR

Summary:
Test plan for the new feature Generic Hash.
The HLD of Generic Hash: sonic-net/SONiC#1101
The test implementation is not included in this PR, will open another PR.

Type of change

  • Bug fix
  • Testbed and Framework(new/improvement)
  • Test case(new/improvement)

Back port request

  • 201911
  • 202012
  • 202205
  • 202305

Approach

What is the motivation for this PR?

Adding the test plan for the new feature Generic Hash.

How did you do it?

How did you verify/test it?

The test plan has already been reviewed internally.

Any platform specific information?

Supported testbed topology if it's a new test case?

Documentation

@congh-nvidia congh-nvidia changed the title Create Generic-Hash-test-plan.md Test plan for feature Generic Hash Feb 21, 2023
@wangxin
Copy link
Collaborator

wangxin commented Feb 21, 2023

The pre-commit check detected issues in the files touched by this pull request.
The detected issues may be old or new. For new issues, please try to fix them.

For old issues, it is not mandatory to fix them because they were not caused by this change. It is unfair to blame
author of this pull request. But if you can take extra effort to fix the old issues as well, that would be great!

Detailed pre-commit check results:
trim trailing whitespace.................................................Failed
- hook id: trailing-whitespace
- exit code: 1
- files were modified by this hook

Fixing docs/testplan/Generic-Hash-test-plan.md

fix end of files.........................................................Passed
check yaml...........................................(no files to check)Skipped
check for added large files..............................................Passed
check python ast.....................................(no files to check)Skipped
flake8...............................................(no files to check)Skipped

To run the pre-commit checks locally, you can follow below steps:

  1. Ensure that default python is python3. In sonic-mgmt docker container, default python is python2. You can run
    the check by activating the python3 virtual environment in sonic-mgmt docker container or outside of sonic-mgmt
    docker container.
  2. Ensure that the pre-commit package is installed:
sudo pip install pre-commit
  1. Go to repository root folder
  2. Install the pre-commit hooks:
pre-commit install
  1. Use pre-commit to check staged file:
pre-commit
  1. Alternatively, you can check committed files using:
pre-commit run --from-ref <commit_id> --to-ref <commit_id>

@liat-grozovik
Copy link
Collaborator

@yxieca could you please help to review or assign?

@yxieca yxieca requested a review from bingwang-ms April 18, 2023 22:58
@yxieca
Copy link
Collaborator

yxieca commented Apr 18, 2023

@congh-nvidia can you present this test plan in test subgroup meeting?

@congh-nvidia
Copy link
Contributor Author

Hi @yxieca, could you send me the time of the next test subgroup meeting?

@yxieca
Copy link
Collaborator

yxieca commented Apr 19, 2023

Hi @yxieca, could you send me the time of the next test subgroup meeting?

@congh-nvidia please find the meeting in this calendar: https://sonic-net.github.io/SONiC/Calendar.html

@congh-nvidia congh-nvidia marked this pull request as draft April 27, 2023 05:59
@liat-grozovik
Copy link
Collaborator

@nazariig please help to review and also add the feature reviewer

@liat-grozovik
Copy link
Collaborator

/azp run Azure.sonic-mgmt

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

The pre-commit check detected issues in the files touched by this pull request.
The pre-commit check is a mandatory check, please fix detected issues.

Detailed pre-commit check results:
trim trailing whitespace.................................................Failed
- hook id: trailing-whitespace
- exit code: 1
- files were modified by this hook

Fixing docs/testplan/Generic-Hash-test-plan.md

fix end of files.........................................................Passed
check yaml...........................................(no files to check)Skipped
check for added large files..............................................Passed
check python ast.....................................(no files to check)Skipped
flake8...............................................(no files to check)Skipped
check conditional mark sort..........................(no files to check)Skipped

To run the pre-commit checks locally, you can follow below steps:

  1. Ensure that default python is python3. In sonic-mgmt docker container, default python is python2. You can run
    the check by activating the python3 virtual environment in sonic-mgmt docker container or outside of sonic-mgmt
    docker container.
  2. Ensure that the pre-commit package is installed:
sudo pip install pre-commit
  1. Go to repository root folder
  2. Install the pre-commit hooks:
pre-commit install
  1. Use pre-commit to check staged file:
pre-commit
  1. Alternatively, you can check committed files using:
pre-commit run --from-ref <commit_id> --to-ref <commit_id>

@congh-nvidia congh-nvidia marked this pull request as ready for review July 25, 2023 06:06
@mssonicbld
Copy link
Collaborator

The pre-commit check detected issues in the files touched by this pull request.
The pre-commit check is a mandatory check, please fix detected issues.

Detailed pre-commit check results:
trim trailing whitespace.................................................Failed
- hook id: trailing-whitespace
- exit code: 1
- files were modified by this hook

Fixing docs/testplan/Generic-Hash-test-plan.md

fix end of files.........................................................Passed
check yaml...........................................(no files to check)Skipped
check for added large files..............................................Passed
check python ast.....................................(no files to check)Skipped
flake8...............................................(no files to check)Skipped
flake8...............................................(no files to check)Skipped
check conditional mark sort..........................(no files to check)Skipped

To run the pre-commit checks locally, you can follow below steps:

  1. Ensure that default python is python3. In sonic-mgmt docker container, default python is python2. You can run
    the check by activating the python3 virtual environment in sonic-mgmt docker container or outside of sonic-mgmt
    docker container.
  2. Ensure that the pre-commit package is installed:
sudo pip install pre-commit
  1. Go to repository root folder
  2. Install the pre-commit hooks:
pre-commit install
  1. Use pre-commit to check staged file:
pre-commit
  1. Alternatively, you can check committed files using:
pre-commit run --from-ref <commit_id> --to-ref <commit_id>

@mssonicbld
Copy link
Collaborator

The pre-commit check detected issues in the files touched by this pull request.
The pre-commit check is a mandatory check, please fix detected issues.

Detailed pre-commit check results:
trim trailing whitespace.................................................Failed
- hook id: trailing-whitespace
- exit code: 1
- files were modified by this hook

Fixing docs/testplan/Generic-Hash-test-plan.md

fix end of files.........................................................Passed
check yaml...........................................(no files to check)Skipped
check for added large files..............................................Passed
check python ast.....................................(no files to check)Skipped
flake8...............................................(no files to check)Skipped
flake8...............................................(no files to check)Skipped
check conditional mark sort..........................(no files to check)Skipped

To run the pre-commit checks locally, you can follow below steps:

  1. Ensure that default python is python3. In sonic-mgmt docker container, default python is python2. You can run
    the check by activating the python3 virtual environment in sonic-mgmt docker container or outside of sonic-mgmt
    docker container.
  2. Ensure that the pre-commit package is installed:
sudo pip install pre-commit
  1. Go to repository root folder
  2. Install the pre-commit hooks:
pre-commit install
  1. Use pre-commit to check staged file:
pre-commit
  1. Alternatively, you can check committed files using:
pre-commit run --from-ref <commit_id> --to-ref <commit_id>

@mssonicbld
Copy link
Collaborator

The pre-commit check detected issues in the files touched by this pull request.
The pre-commit check is a mandatory check, please fix detected issues.

Detailed pre-commit check results:
trim trailing whitespace.................................................Failed
- hook id: trailing-whitespace
- exit code: 1
- files were modified by this hook

Fixing docs/testplan/Generic-Hash-test-plan.md

fix end of files.........................................................Passed
check yaml...........................................(no files to check)Skipped
check for added large files..............................................Passed
check python ast.....................................(no files to check)Skipped
flake8...............................................(no files to check)Skipped
flake8...............................................(no files to check)Skipped
check conditional mark sort..........................(no files to check)Skipped

To run the pre-commit checks locally, you can follow below steps:

  1. Ensure that default python is python3. In sonic-mgmt docker container, default python is python2. You can run
    the check by activating the python3 virtual environment in sonic-mgmt docker container or outside of sonic-mgmt
    docker container.
  2. Ensure that the pre-commit package is installed:
sudo pip install pre-commit
  1. Go to repository root folder
  2. Install the pre-commit hooks:
pre-commit install
  1. Use pre-commit to check staged file:
pre-commit
  1. Alternatively, you can check committed files using:
pre-commit run --from-ref <commit_id> --to-ref <commit_id>

@congh-nvidia
Copy link
Contributor Author

I will update the test plan for the review comments in the Aug 16th sonic-test-workgroup meeting.

@liat-grozovik
Copy link
Collaborator

@nazariig please review

Update the test plan according to the comments in the Aug 16th review meeting:
1. Remove the "doesn't support dualtor" expression.
2. Add clear steps for the lag hash cases when the tested hash field is DST_MAC, ETHERTYPE or VLAN_ID.
3. Add a new test case the cover the lag member remove/add scenario.
4. Remove the test_invalid_hash_fields for it has been covered in the sonic-utilities UT. (https://github.com/sonic-net/sonic-utilities/blob/c7c4831baf2f60c7f63166244eb07c6ab7fe8b8a/tests/hash_test.py)
@mssonicbld
Copy link
Collaborator

The pre-commit check detected issues in the files touched by this pull request.
The pre-commit check is a mandatory check, please fix detected issues.

Detailed pre-commit check results:
trim trailing whitespace.................................................Failed
- hook id: trailing-whitespace
- exit code: 1
- files were modified by this hook

Fixing docs/testplan/Generic-Hash-test-plan.md

fix end of files.........................................................Passed
check yaml...........................................(no files to check)Skipped
check for added large files..............................................Passed
check python ast.....................................(no files to check)Skipped
flake8...............................................(no files to check)Skipped
flake8...............................................(no files to check)Skipped
check conditional mark sort..........................(no files to check)Skipped

To run the pre-commit checks locally, you can follow below steps:

  1. Ensure that default python is python3. In sonic-mgmt docker container, default python is python2. You can run
    the check by activating the python3 virtual environment in sonic-mgmt docker container or outside of sonic-mgmt
    docker container.
  2. Ensure that the pre-commit package is installed:
sudo pip install pre-commit
  1. Go to repository root folder
  2. Install the pre-commit hooks:
pre-commit install
  1. Use pre-commit to check staged file:
pre-commit
  1. Alternatively, you can check committed files using:
pre-commit run --from-ref <commit_id> --to-ref <commit_id>

@congh-nvidia
Copy link
Contributor Author

The test plan is updated according to the comments in the Aug 16th review meeting:

  1. Removed the "doesn't support dualtor" expression.
  2. Added clear steps for the lag hash cases when the tested hash field is DST_MAC, ETHERTYPE or VLAN_ID.
  3. Added a new test case the cover the lag member remove/add scenario.
  4. Removed the test case "test_invalid_hash_fields" for it has been covered in the sonic-utilities UT. (https://github.com/sonic-net/sonic-utilities/blob/c7c4831baf2f60c7f63166244eb07c6ab7fe8b8a/tests/hash_test.py)

Trim the trailing white line.
@mssonicbld
Copy link
Collaborator

The pre-commit check detected issues in the files touched by this pull request.
The pre-commit check is a mandatory check, please fix detected issues.

Detailed pre-commit check results:
trim trailing whitespace.................................................Failed
- hook id: trailing-whitespace
- exit code: 1
- files were modified by this hook

Fixing docs/testplan/Generic-Hash-test-plan.md

fix end of files.........................................................Passed
check yaml...........................................(no files to check)Skipped
check for added large files..............................................Passed
check python ast.....................................(no files to check)Skipped
flake8...............................................(no files to check)Skipped
flake8...............................................(no files to check)Skipped
check conditional mark sort..........................(no files to check)Skipped

To run the pre-commit checks locally, you can follow below steps:

  1. Ensure that default python is python3. In sonic-mgmt docker container, default python is python2. You can run
    the check by activating the python3 virtual environment in sonic-mgmt docker container or outside of sonic-mgmt
    docker container.
  2. Ensure that the pre-commit package is installed:
sudo pip install pre-commit
  1. Go to repository root folder
  2. Install the pre-commit hooks:
pre-commit install
  1. Use pre-commit to check staged file:
pre-commit
  1. Alternatively, you can check committed files using:
pre-commit run --from-ref <commit_id> --to-ref <commit_id>

@mssonicbld
Copy link
Collaborator

The pre-commit check detected issues in the files touched by this pull request.
The pre-commit check is a mandatory check, please fix detected issues.

Detailed pre-commit check results:
trim trailing whitespace.................................................Failed
- hook id: trailing-whitespace
- exit code: 1
- files were modified by this hook

Fixing docs/testplan/Generic-Hash-test-plan.md

fix end of files.........................................................Passed
check yaml...........................................(no files to check)Skipped
check for added large files..............................................Passed
check python ast.....................................(no files to check)Skipped
flake8...............................................(no files to check)Skipped
flake8...............................................(no files to check)Skipped
check conditional mark sort..........................(no files to check)Skipped

To run the pre-commit checks locally, you can follow below steps:

  1. Ensure that default python is python3. In sonic-mgmt docker container, default python is python2. You can run
    the check by activating the python3 virtual environment in sonic-mgmt docker container or outside of sonic-mgmt
    docker container.
  2. Ensure that the pre-commit package is installed:
sudo pip install pre-commit
  1. Go to repository root folder
  2. Install the pre-commit hooks:
pre-commit install
  1. Use pre-commit to check staged file:
pre-commit
  1. Alternatively, you can check committed files using:
pre-commit run --from-ref <commit_id> --to-ref <commit_id>

@congh-nvidia
Copy link
Contributor Author

Hi @yxieca, the pre-commit keeps complaining about the trailing whitespace, but I can't find where it is. Is it auto-fixed by the pre-commit? How can I make the checker pass?
Thanks!

@congh-nvidia
Copy link
Contributor Author

@nazariig please review

@nazariig Please review and approve the test plan, it is updated after the review meeting. Thanks.

@yxieca
Copy link
Collaborator

yxieca commented Sep 25, 2023

Hi @yxieca, the pre-commit keeps complaining about the trailing whitespace, but I can't find where it is. Is it auto-fixed by the pre-commit? How can I make the checker pass? Thanks!

@congh-nvidia this is a standalone file, have you search for " $" or "\t$" with vim? Or similar use similar method with other editors?

Remove the trailing whitespaces.
@liat-grozovik
Copy link
Collaborator

As no feedback for sonic test group community and feature owner has approved, moving a head with merging the test plan.

@liat-grozovik liat-grozovik merged commit 40e10c4 into sonic-net:master Oct 10, 2023
11 checks passed
@congh-nvidia congh-nvidia deleted the generic_hash_testplan branch October 17, 2024 02:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants