mirror of
				https://github.com/Telecominfraproject/wlan-testing.git
				synced 2025-11-03 20:38:05 +00:00 
			
		
		
		
	Wifi 7159 (#415)
* - To return from perfecto logger if we are running testcases for unique ssid Signed-off-by: Sushant Bawiskar <sushant.bawiskar@candelatech.com> * - To add unique ssid schema as a part of testcase Signed-off-by: Sushant Bawiskar <sushant.bawiskar@candelatech.com> * - removing marker from openroaming tescases Signed-off-by: Sushant Bawiskar <sushant.bawiskar@candelatech.com> * Resolved conflicts in Interop/conftest Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com> * Added Android devices needed for cleanup Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com> * Changed marker to match ios and Android test cases with devices in Interop Testing workflow Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com> * Added run-lf argument in return function of setup_profiles Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com> * Added WIFI branches in reference for allure report generation Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com> * Changed marker to Suite B Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com> * Added extra runners Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com> * Added Nat mode Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com> * Added Vlan mode Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com> * Added extra 1 min if --run-lf is used Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com> * changed cleanup requirements Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com> * Added vlan to ssid names in setup profiles of Enterprise mode test Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com> * Changed testbed name Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com> * Changed Regression to performance Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com> * Reverted to original Interop workflow file Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com> * Chnaged file name to performance.yml Signed-off-by: haricharan-jaka <haricharan.jaka@candelatech.com> Co-authored-by: haricharan-jaka <haricharan.jaka@candelatech.com>
This commit is contained in:
		
							
								
								
									
										2114
									
								
								.github/workflows/interop_performance.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										2114
									
								
								.github/workflows/interop_performance.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										313
									
								
								.github/workflows/interop_regression.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										313
									
								
								.github/workflows/interop_regression.yml
									
									
									
									
										vendored
									
									
								
							@@ -1,313 +0,0 @@
 | 
				
			|||||||
name: interop regression testing
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
env:
 | 
					 | 
				
			||||||
  # AWS credentials
 | 
					 | 
				
			||||||
  AWS_EKS_NAME: tip-wlan-main
 | 
					 | 
				
			||||||
  AWS_DEFAULT_OUTPUT: json
 | 
					 | 
				
			||||||
  AWS_DEFAULT_REGION: us-east-2
 | 
					 | 
				
			||||||
  AWS_ACCOUNT_ID: ${{ secrets.AWS_ACCOUNT_ID }}
 | 
					 | 
				
			||||||
  AWS_ACCESS_KEY_ID: ${{ secrets.AWS_CLIENT_ID }}
 | 
					 | 
				
			||||||
  AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_CLIENT_KEY }}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
on:
 | 
					 | 
				
			||||||
  workflow_dispatch:
 | 
					 | 
				
			||||||
    inputs:
 | 
					 | 
				
			||||||
      devices:
 | 
					 | 
				
			||||||
        description: comma-separated list of devices to test
 | 
					 | 
				
			||||||
        default: galaxy-s9,galaxy-s10,galaxy-s20,pixel-4
 | 
					 | 
				
			||||||
        required: false
 | 
					 | 
				
			||||||
      marker_overwrite:
 | 
					 | 
				
			||||||
        description: overwrite the Pytest markers that will be selected, will disable report uploading
 | 
					 | 
				
			||||||
        required: false
 | 
					 | 
				
			||||||
#  schedule:
 | 
					 | 
				
			||||||
#    - cron: "0 2 ? * SAT"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
defaults:
 | 
					 | 
				
			||||||
  run:
 | 
					 | 
				
			||||||
    shell: bash
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
jobs:
 | 
					 | 
				
			||||||
  vars:
 | 
					 | 
				
			||||||
    runs-on: ubuntu-latest
 | 
					 | 
				
			||||||
    outputs:
 | 
					 | 
				
			||||||
      devices: ${{ steps.vars.outputs.devices }}
 | 
					 | 
				
			||||||
      marker_overwrite: ${{ steps.vars.outputs.marker_overwrite }}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    steps:
 | 
					 | 
				
			||||||
      - name: set variables
 | 
					 | 
				
			||||||
        id: vars
 | 
					 | 
				
			||||||
        run: |
 | 
					 | 
				
			||||||
          echo "::set-output name=marker_overwrite::${{ github.event.inputs.marker_overwrite || '' }}"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
          DEVICES="${{ github.event.inputs.devices || 'galaxy-s9,galaxy-s10,galaxy-s20,pixel-4' }}"
 | 
					 | 
				
			||||||
          DEVICES=$(echo $DEVICES | sed "s/,/\",\"/g" | sed 's/^/[\"/g' | sed 's/$/\"]/g')
 | 
					 | 
				
			||||||
          echo "::set-output name=devices::${DEVICES}"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  build:
 | 
					 | 
				
			||||||
    runs-on: ubuntu-latest
 | 
					 | 
				
			||||||
    steps:
 | 
					 | 
				
			||||||
      - uses: actions/checkout@v2
 | 
					 | 
				
			||||||
      - name: build and push Docker image
 | 
					 | 
				
			||||||
        uses: ./.github/actions/build-and-push-docker
 | 
					 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          registry: tip-tip-wlan-cloud-docker-repo.jfrog.io
 | 
					 | 
				
			||||||
          registry_user: wlan-testing-cicd
 | 
					 | 
				
			||||||
          registry_password: ${{ secrets.DOCKER_USER_PASSWORD }}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  # interop-01
 | 
					 | 
				
			||||||
  test-galaxy-s9:
 | 
					 | 
				
			||||||
    runs-on: ubuntu-latest
 | 
					 | 
				
			||||||
    needs: [vars, build]
 | 
					 | 
				
			||||||
    if: "!cancelled() && contains(fromJSON(needs.vars.outputs.devices), 'galaxy-s9')"
 | 
					 | 
				
			||||||
    steps:
 | 
					 | 
				
			||||||
      - uses: actions/checkout@v2
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: get EKS access credentials
 | 
					 | 
				
			||||||
        run: aws eks update-kubeconfig  --name ${{ env.AWS_EKS_NAME }}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: run tests
 | 
					 | 
				
			||||||
        uses: ./.github/actions/run-tests
 | 
					 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          namespace: interop-${{ github.run_id }}-galaxy-s9
 | 
					 | 
				
			||||||
          testbed: interop-01
 | 
					 | 
				
			||||||
          marker_expression: "${{ needs.vars.outputs.marker_overwrite || 'android and client_connectivity' }}"
 | 
					 | 
				
			||||||
          configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}"
 | 
					 | 
				
			||||||
          testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }}
 | 
					 | 
				
			||||||
          additional_args: "-o model-android='Galaxy S9' -o 'jobName=Github-Interop-galaxy-s9' -o 'jobNumber=${{ github.run_number }}' --skip-lanforge"
 | 
					 | 
				
			||||||
          allure_results_artifact_name: allure-results-galaxy-s9
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      # necessary because if conditionals in composite actions are currently not respected
 | 
					 | 
				
			||||||
      - name: delete namespace
 | 
					 | 
				
			||||||
        if: always()
 | 
					 | 
				
			||||||
        continue-on-error: true
 | 
					 | 
				
			||||||
        run: kubectl delete ns --ignore-not-found=true --wait interop-${{ github.run_id }}-galaxy-s9
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#  test-iphone-12:
 | 
					 | 
				
			||||||
#    runs-on: ubuntu-latest
 | 
					 | 
				
			||||||
#    needs: [vars, test-galaxy-s9]
 | 
					 | 
				
			||||||
#    if: "!cancelled() && contains(fromJSON(needs.vars.outputs.devices), 'iphone-12')"
 | 
					 | 
				
			||||||
#    steps:
 | 
					 | 
				
			||||||
#      - uses: actions/checkout@v2
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
#      - name: get EKS access credentials
 | 
					 | 
				
			||||||
#        run: aws eks update-kubeconfig  --name ${{ env.AWS_EKS_NAME }}
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
#      - name: run tests
 | 
					 | 
				
			||||||
#        uses: ./.github/actions/run-tests
 | 
					 | 
				
			||||||
#        with:
 | 
					 | 
				
			||||||
#          namespace: interop-${{ github.run_id }}-iphone-12
 | 
					 | 
				
			||||||
#          testbed: interop-01
 | 
					 | 
				
			||||||
#          marker_expression: "${{ needs.vars.outputs.marker_overwrite || 'interop_uc_sanity and client_connect and ios' }}"
 | 
					 | 
				
			||||||
#          configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}"
 | 
					 | 
				
			||||||
#          testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }}
 | 
					 | 
				
			||||||
#          additional_args: "-o model-iOS='iPhone-12' -o 'jobName=Github-Interop-iphone-12' -o 'jobNumber=${{ github.run_number }}' --skip-lanforge"
 | 
					 | 
				
			||||||
#          allure_results_artifact_name: allure-results-iphone-12
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  # interop-02
 | 
					 | 
				
			||||||
  test-galaxy-s10:
 | 
					 | 
				
			||||||
    runs-on: ubuntu-latest
 | 
					 | 
				
			||||||
    needs: [vars, build]
 | 
					 | 
				
			||||||
    if: "!cancelled() && contains(fromJSON(needs.vars.outputs.devices), 'galaxy-s10')"
 | 
					 | 
				
			||||||
    steps:
 | 
					 | 
				
			||||||
      - uses: actions/checkout@v2
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: get EKS access credentials
 | 
					 | 
				
			||||||
        run: aws eks update-kubeconfig  --name ${{ env.AWS_EKS_NAME }}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: run tests
 | 
					 | 
				
			||||||
        uses: ./.github/actions/run-tests
 | 
					 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          namespace: interop-${{ github.run_id }}-galaxy-s10
 | 
					 | 
				
			||||||
          testbed: interop-02
 | 
					 | 
				
			||||||
          marker_expression: "${{ needs.vars.outputs.marker_overwrite || 'android and client_connectivity' }}"
 | 
					 | 
				
			||||||
          configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}"
 | 
					 | 
				
			||||||
          testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }}
 | 
					 | 
				
			||||||
          additional_args: "-o model-android='Galaxy S10.*' -o 'jobName=Github-Interop-galaxy-s10' -o 'jobNumber=${{ github.run_number }}' --skip-lanforge"
 | 
					 | 
				
			||||||
          allure_results_artifact_name: allure-results-galaxy-s10
 | 
					 | 
				
			||||||
            # necessary because if conditionals in composite actions are currently not respected
 | 
					 | 
				
			||||||
      - name: delete namespace
 | 
					 | 
				
			||||||
        if: always()
 | 
					 | 
				
			||||||
        continue-on-error: true
 | 
					 | 
				
			||||||
        run: kubectl delete ns --ignore-not-found=true --wait interop-${{ github.run_id }}-galaxy-s10
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#  test-iphone-7:
 | 
					 | 
				
			||||||
#    runs-on: ubuntu-latest
 | 
					 | 
				
			||||||
#    needs: [vars, test-galaxy-s10]
 | 
					 | 
				
			||||||
#    if: "!cancelled() && contains(fromJSON(needs.vars.outputs.devices), 'iphone-7')"
 | 
					 | 
				
			||||||
#    steps:
 | 
					 | 
				
			||||||
#      - uses: actions/checkout@v2
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
#      - name: get EKS access credentials
 | 
					 | 
				
			||||||
#        run: aws eks update-kubeconfig  --name ${{ env.AWS_EKS_NAME }}
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
#      - name: run tests
 | 
					 | 
				
			||||||
#        uses: ./.github/actions/run-tests
 | 
					 | 
				
			||||||
#        with:
 | 
					 | 
				
			||||||
#          namespace: interop-${{ github.run_id }}-iphone-7
 | 
					 | 
				
			||||||
#          testbed: interop-02
 | 
					 | 
				
			||||||
#          marker_expression: "${{ needs.vars.outputs.marker_overwrite || 'interop_uc_sanity and client_connect and ios' }}"
 | 
					 | 
				
			||||||
#          configuration: "${{ secrets.LAB_CONFIGURATION }}"
 | 
					 | 
				
			||||||
#          testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }}
 | 
					 | 
				
			||||||
#          additional_args: "-o model-iOS='iPhone-7' -o 'jobName=Github-Interop-iphone-7' -o 'jobNumber=${{ github.run_number }}' --skip-lanforge"
 | 
					 | 
				
			||||||
#          allure_results_artifact_name: allure-results-iphone-7
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  # interop-03
 | 
					 | 
				
			||||||
  test-galaxy-s20:
 | 
					 | 
				
			||||||
    runs-on: ubuntu-latest
 | 
					 | 
				
			||||||
    needs: [vars, build]
 | 
					 | 
				
			||||||
    if: "!cancelled() && contains(fromJSON(needs.vars.outputs.devices), 'galaxy-s20')"
 | 
					 | 
				
			||||||
    steps:
 | 
					 | 
				
			||||||
      - uses: actions/checkout@v2
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: get EKS access credentials
 | 
					 | 
				
			||||||
        run: aws eks update-kubeconfig  --name ${{ env.AWS_EKS_NAME }}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: run tests
 | 
					 | 
				
			||||||
        uses: ./.github/actions/run-tests
 | 
					 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          namespace: interop-${{ github.run_id }}-galaxy-s20
 | 
					 | 
				
			||||||
          testbed: interop-03
 | 
					 | 
				
			||||||
          marker_expression: "${{ needs.vars.outputs.marker_overwrite || 'android and client_connectivity' }}"
 | 
					 | 
				
			||||||
          configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}"
 | 
					 | 
				
			||||||
          testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }}
 | 
					 | 
				
			||||||
          additional_args: "-o model-android='Galaxy S20' -o 'jobName=Github-Interop-galaxy-s20' -o 'jobNumber=${{ github.run_number }}' --skip-lanforge"
 | 
					 | 
				
			||||||
          allure_results_artifact_name: allure-results-galaxy-s20
 | 
					 | 
				
			||||||
            # necessary because if conditionals in composite actions are currently not respected
 | 
					 | 
				
			||||||
      - name: delete namespace
 | 
					 | 
				
			||||||
        if: always()
 | 
					 | 
				
			||||||
        continue-on-error: true
 | 
					 | 
				
			||||||
        run: kubectl delete ns --ignore-not-found=true --wait interop-${{ github.run_id }}-galaxy-s20
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#  test-iphone-xr:
 | 
					 | 
				
			||||||
#    runs-on: ubuntu-latest
 | 
					 | 
				
			||||||
#    needs: [vars, test-galaxy-s20]
 | 
					 | 
				
			||||||
#    if: "!cancelled() && contains(fromJSON(needs.vars.outputs.devices), 'iphone-xr')"
 | 
					 | 
				
			||||||
#    steps:
 | 
					 | 
				
			||||||
#      - uses: actions/checkout@v2
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
#      - name: get EKS access credentials
 | 
					 | 
				
			||||||
#        run: aws eks update-kubeconfig  --name ${{ env.AWS_EKS_NAME }}
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
#      - name: run tests
 | 
					 | 
				
			||||||
#        uses: ./.github/actions/run-tests
 | 
					 | 
				
			||||||
#        with:
 | 
					 | 
				
			||||||
#          namespace: interop-${{ github.run_id }}-iphone-xr
 | 
					 | 
				
			||||||
#          testbed: interop-03
 | 
					 | 
				
			||||||
#          marker_expression: "${{ needs.vars.outputs.marker_overwrite || 'interop_uc_sanity and client_connect and ios' }}"
 | 
					 | 
				
			||||||
#          configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}"
 | 
					 | 
				
			||||||
#          testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }}
 | 
					 | 
				
			||||||
#          additional_args: "-o model-iOS='iPhone-XR' -o 'jobName=Github-Interop-iphone-xr' -o 'jobNumber=${{ github.run_number }}' --skip-lanforge"
 | 
					 | 
				
			||||||
#          allure_results_artifact_name: allure-results-iphone-xr
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  #interop-04
 | 
					 | 
				
			||||||
  test-pixel-4:
 | 
					 | 
				
			||||||
    runs-on: ubuntu-latest
 | 
					 | 
				
			||||||
    needs: [vars, build]
 | 
					 | 
				
			||||||
    if: "!cancelled() && contains(fromJSON(needs.vars.outputs.devices), 'pixel-4')"
 | 
					 | 
				
			||||||
    steps:
 | 
					 | 
				
			||||||
      - uses: actions/checkout@v2
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: get EKS access credentials
 | 
					 | 
				
			||||||
        run: aws eks update-kubeconfig  --name ${{ env.AWS_EKS_NAME }}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: run tests
 | 
					 | 
				
			||||||
        uses: ./.github/actions/run-tests
 | 
					 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          namespace: interop-${{ github.run_id }}-pixel-4
 | 
					 | 
				
			||||||
          testbed: interop-04
 | 
					 | 
				
			||||||
          marker_expression: "${{ needs.vars.outputs.marker_overwrite || 'android and client_connectivity' }}"
 | 
					 | 
				
			||||||
          configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}"
 | 
					 | 
				
			||||||
          testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }}
 | 
					 | 
				
			||||||
          additional_args: "-o model-android='Pixel 4' -o 'jobName=Github-Interop-pixel-4' -o 'jobNumber=${{ github.run_number }}' --skip-lanforge"
 | 
					 | 
				
			||||||
          allure_results_artifact_name: allure-results-pixel-4
 | 
					 | 
				
			||||||
            # necessary because if conditionals in composite actions are currently not respected
 | 
					 | 
				
			||||||
      - name: delete namespace
 | 
					 | 
				
			||||||
        if: always()
 | 
					 | 
				
			||||||
        continue-on-error: true
 | 
					 | 
				
			||||||
        run: kubectl delete ns --ignore-not-found=true --wait interop-${{ github.run_id }}-pixel-4
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  #  test-iphone-11:
 | 
					 | 
				
			||||||
#    runs-on: ubuntu-latest
 | 
					 | 
				
			||||||
#    needs: [vars, test-pixel-4]
 | 
					 | 
				
			||||||
#    if: "!cancelled() && contains(fromJSON(needs.vars.outputs.devices), 'iphone-11')"
 | 
					 | 
				
			||||||
#    steps:
 | 
					 | 
				
			||||||
#      - uses: actions/checkout@v2
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
#      - name: get EKS access credentials
 | 
					 | 
				
			||||||
#        run: aws eks update-kubeconfig  --name ${{ env.AWS_EKS_NAME }}
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
#      - name: run tests
 | 
					 | 
				
			||||||
#        uses: ./.github/actions/run-tests
 | 
					 | 
				
			||||||
#        with:
 | 
					 | 
				
			||||||
#          namespace: interop-${{ github.run_id }}-iphone-11
 | 
					 | 
				
			||||||
#          testbed: interop-04
 | 
					 | 
				
			||||||
#          marker_expression: "${{ needs.vars.outputs.marker_overwrite || 'interop_uc_sanity and client_connect and ios' }}"
 | 
					 | 
				
			||||||
#          configuration: "${{ secrets.LAB_CONFIGURATION_JSON }}"
 | 
					 | 
				
			||||||
#          testing_docker_image: tip-tip-wlan-cloud-docker-repo.jfrog.io/cloud-sdk-nightly:${{ github.run_id }}
 | 
					 | 
				
			||||||
#          additional_args: "-o model-iOS='iPhone-11' -o 'jobName=Github-Interop-iphone-11' -o 'jobNumber=${{ github.run_number }}' --skip-lanforge"
 | 
					 | 
				
			||||||
#          allure_results_artifact_name: allure-results-iphone-11
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  report:
 | 
					 | 
				
			||||||
    needs: [vars, test-pixel-4, test-galaxy-s20, test-galaxy-s10, test-galaxy-s9]
 | 
					 | 
				
			||||||
    if: "!cancelled()"
 | 
					 | 
				
			||||||
    runs-on: ubuntu-latest
 | 
					 | 
				
			||||||
    strategy:
 | 
					 | 
				
			||||||
      fail-fast: false
 | 
					 | 
				
			||||||
      matrix:
 | 
					 | 
				
			||||||
        device: ${{ fromJson( needs.vars.outputs.devices ) }}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    steps:
 | 
					 | 
				
			||||||
      - name: checkout testing repo
 | 
					 | 
				
			||||||
        uses: actions/checkout@v2
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - uses: actions/download-artifact@v2
 | 
					 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          name: allure-results-${{ matrix.device }}
 | 
					 | 
				
			||||||
          path: allure-results
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: download history of previous run
 | 
					 | 
				
			||||||
        continue-on-error: true
 | 
					 | 
				
			||||||
        run: |
 | 
					 | 
				
			||||||
          LAST_RUN_ID=$(aws s3api head-object --bucket openwifi-allure-reports --key interop-regression/${{ matrix.device }}/latest/index.html | jq -r .Metadata.latest)
 | 
					 | 
				
			||||||
          aws s3 cp --recursive s3://openwifi-allure-reports/interop-regression/${{ matrix.device }}/$LAST_RUN_ID/history history
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: generate Allure report
 | 
					 | 
				
			||||||
        uses: ./.github/actions/generate-allure-report
 | 
					 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          results_path: ./allure-results
 | 
					 | 
				
			||||||
          history_path: ./history
 | 
					 | 
				
			||||||
          additional_metadata: |
 | 
					 | 
				
			||||||
            Device=${{ matrix.device }}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: upload Allure report as artifact
 | 
					 | 
				
			||||||
        uses: actions/upload-artifact@v2
 | 
					 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          name: allure-report-${{ matrix.device }}
 | 
					 | 
				
			||||||
          path: allure-report
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      # doing this to be able to aggregate multiple reports together later on
 | 
					 | 
				
			||||||
      - name: copy results into report
 | 
					 | 
				
			||||||
        run: cp -r allure-results allure-report/results
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      - name: upload to S3
 | 
					 | 
				
			||||||
        if: github.ref == 'refs/heads/master' && needs.vars.outputs.marker_overwrite == ''
 | 
					 | 
				
			||||||
        uses: ./.github/actions/allure-report-to-s3
 | 
					 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          test_type: interop-regression
 | 
					 | 
				
			||||||
          testbed: ${{ matrix.device }}
 | 
					 | 
				
			||||||
          report_path: allure-report
 | 
					 | 
				
			||||||
          s3_access_key_id: ${{ secrets.ALLURE_S3_ACCESS_KEY_ID }}
 | 
					 | 
				
			||||||
          s3_access_key_secret: ${{ secrets.ALLURE_S3_ACCESS_KEY_SECRET }}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  cleanup:
 | 
					 | 
				
			||||||
    needs: [test-pixel-4, test-galaxy-s20, test-galaxy-s10, test-galaxy-s9]
 | 
					 | 
				
			||||||
    runs-on: ubuntu-latest
 | 
					 | 
				
			||||||
    if: always()
 | 
					 | 
				
			||||||
    steps:
 | 
					 | 
				
			||||||
      - uses: actions/checkout@v2
 | 
					 | 
				
			||||||
      - name: cleanup Docker image
 | 
					 | 
				
			||||||
        uses: ./.github/actions/cleanup-docker
 | 
					 | 
				
			||||||
        with:
 | 
					 | 
				
			||||||
          registry_user: wlan-testing-cicd
 | 
					 | 
				
			||||||
          registry_password: ${{ secrets.DOCKER_USER_PASSWORD }}
 | 
					 | 
				
			||||||
@@ -199,7 +199,7 @@ def setup_vlan():
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@pytest.fixture(scope="class")
 | 
					@pytest.fixture(scope="class")
 | 
				
			||||||
def setup_profiles(request, setup_controller, testbed, get_equipment_ref, fixtures_ver, skip_lf, get_openflow,
 | 
					def setup_profiles(request, setup_controller, testbed, get_equipment_ref, fixtures_ver, skip_lf, get_openflow, run_lf,
 | 
				
			||||||
                   instantiate_profile, get_markers, create_lanforge_chamberview_dut, lf_tools,
 | 
					                   instantiate_profile, get_markers, create_lanforge_chamberview_dut, lf_tools,
 | 
				
			||||||
                   get_security_flags, get_configuration, radius_info, get_apnos, radius_accounting_info):
 | 
					                   get_security_flags, get_configuration, radius_info, get_apnos, radius_accounting_info):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -232,9 +232,9 @@ def setup_profiles(request, setup_controller, testbed, get_equipment_ref, fixtur
 | 
				
			|||||||
                                             instantiate_profile,
 | 
					                                             instantiate_profile,
 | 
				
			||||||
                                             get_markers, create_lanforge_chamberview_dut, lf_tools,
 | 
					                                             get_markers, create_lanforge_chamberview_dut, lf_tools,
 | 
				
			||||||
                                             get_security_flags, get_configuration, radius_info, get_apnos,
 | 
					                                             get_security_flags, get_configuration, radius_info, get_apnos,
 | 
				
			||||||
                                             radius_accounting_info, skip_lf=skip_lf, open_flow=get_openflow)
 | 
					                                             radius_accounting_info, skip_lf=skip_lf, open_flow=get_openflow, run_lf=run_lf)
 | 
				
			||||||
    print("sleeping for 120 sec.")
 | 
					    print("sleeping for 120 sec.")
 | 
				
			||||||
    time.sleep(120)
 | 
					    time.sleep(180)
 | 
				
			||||||
    print("Done sleeping")
 | 
					    print("Done sleeping")
 | 
				
			||||||
    yield return_var
 | 
					    yield return_var
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -292,6 +292,13 @@ def pytest_runtest_makereport(item, call):
 | 
				
			|||||||
    testCaseErrorMsg = []
 | 
					    testCaseErrorMsg = []
 | 
				
			||||||
    testCaseReportURL = []
 | 
					    testCaseReportURL = []
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    if os.environ.get('PYTEST_CURRENT_TEST') is not None:
 | 
				
			||||||
 | 
					        if (str(os.environ.get('PYTEST_CURRENT_TEST').split(':')[-1].split(' ')[0]).strip()).startswith("test_unique"):
 | 
				
			||||||
 | 
					            return 0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # if os.environ.get('PYTEST_CURRENT_TEST') is not None and ((os.environ.get('PYTEST_CURRENT_TEST').split(':')[-1].split(' ')[0]).strip()).startswith("test_unique_ssid"):
 | 
				
			||||||
 | 
					    #     return 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if result.when == 'call':
 | 
					    if result.when == 'call':
 | 
				
			||||||
        item.session.results[item] = result
 | 
					        item.session.results[item] = result
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -383,7 +390,7 @@ def pytest_sessionfinish(session, exitstatus):
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    except Exception as e:
 | 
					    except Exception as e:
 | 
				
			||||||
        pass
 | 
					        pass
 | 
				
			||||||
    print('------------------------------------------------------------------\n\n\n\n')
 | 
					    print('\n------------------------------------------------------------------\n\n\n\n')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@pytest.fixture(scope="function")
 | 
					@pytest.fixture(scope="function")
 | 
				
			||||||
@@ -682,6 +689,8 @@ def is_device_available(request, model):
 | 
				
			|||||||
        print("The device is currently allocated to:" + allocated_to)
 | 
					        print("The device is currently allocated to:" + allocated_to)
 | 
				
			||||||
        return False
 | 
					        return False
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Checks whether the device is available or not.If the device is not available rechecks depending upon the
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Checks whether the device is available or not.If the device is not available rechecks depending upon the
 | 
					# Checks whether the device is available or not.If the device is not available rechecks depending upon the
 | 
				
			||||||
# 'timerValue' and 'timerThreshold' values.With the current parameters it will check after:10,20,40,80 mins.
 | 
					# 'timerValue' and 'timerThreshold' values.With the current parameters it will check after:10,20,40,80 mins.
 | 
				
			||||||
def is_device_Available_timeout(request, model):
 | 
					def is_device_Available_timeout(request, model):
 | 
				
			||||||
@@ -706,3 +715,15 @@ def is_device_Available_timeout(request, model):
 | 
				
			|||||||
            return True
 | 
					            return True
 | 
				
			||||||
    else:
 | 
					    else:
 | 
				
			||||||
        return True
 | 
					        return True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					def get_device_attribuites(request, model, attribute):
 | 
				
			||||||
 | 
					    try:
 | 
				
			||||||
 | 
					        responseXml = response_device(request, model)
 | 
				
			||||||
 | 
					    except:
 | 
				
			||||||
 | 
					        print("Unable to get response.")
 | 
				
			||||||
 | 
					        raise Exception("Unable to get response.")
 | 
				
			||||||
 | 
					    try:
 | 
				
			||||||
 | 
					        attribute_value = get_attribute_device(responseXml, str(attribute))
 | 
				
			||||||
 | 
					    except:
 | 
				
			||||||
 | 
					        attribute_value = False
 | 
				
			||||||
 | 
					    return attribute_value
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -16,8 +16,8 @@ import allure
 | 
				
			|||||||
if 'perfecto_libs' not in sys.path:
 | 
					if 'perfecto_libs' not in sys.path:
 | 
				
			||||||
    sys.path.append(f'../libs/perfecto_libs')
 | 
					    sys.path.append(f'../libs/perfecto_libs')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# pytestmark = [pytest.mark.sanity, pytest.mark.interop, pytest.mark.android, pytest.mark.interop_and, pytest.mark.openRoaming, pytest.mark.bridge]
 | 
					pytestmark = [pytest.mark.sanity, pytest.mark.interop, pytest.mark.android, pytest.mark.interop_and, pytest.mark.openRoaming, pytest.mark.bridge]
 | 
				
			||||||
pytestmark = [pytest.mark.openRoaming]
 | 
					# pytestmark = [pytest.mark.openRoaming]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
from android_lib import closeApp, set_APconnMobileDevice_android, verify_APconnMobileDevice_Android, deleteOpenRoamingInstalledProfile, downloadInstallOpenRoamingProfile, verifyUploadDownloadSpeed_android, Toggle_AirplaneMode_android, ForgetWifiConnection, openApp
 | 
					from android_lib import closeApp, set_APconnMobileDevice_android, verify_APconnMobileDevice_Android, deleteOpenRoamingInstalledProfile, downloadInstallOpenRoamingProfile, verifyUploadDownloadSpeed_android, Toggle_AirplaneMode_android, ForgetWifiConnection, openApp
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -27,8 +27,8 @@ import allure
 | 
				
			|||||||
if 'perfecto_libs' not in sys.path:
 | 
					if 'perfecto_libs' not in sys.path:
 | 
				
			||||||
    sys.path.append(f'../libs/perfecto_libs')
 | 
					    sys.path.append(f'../libs/perfecto_libs')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# pytestmark = [pytest.mark.sanity, pytest.mark.interop, pytest.mark.interop_ios, pytest.mark.ios, pytest.mark.openRoaming, pytest.mark.bridge]
 | 
					pytestmark = [pytest.mark.sanity, pytest.mark.interop, pytest.mark.interop_ios, pytest.mark.ios, pytest.mark.openRoaming, pytest.mark.bridge]
 | 
				
			||||||
pytestmark = [pytest.mark.openRoaming]
 | 
					# pytestmark = [pytest.mark.openRoaming]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
from iOS_lib import closeApp, openApp, ForgetProfileWifiConnection, deleteOpenRoamingInstalledProfile, verifyUploadDownloadSpeediOS, downloadInstallOpenRoamingProfile, ForgetWifiConnection, Toggle_AirplaneMode_iOS, set_APconnMobileDevice_iOS, verify_APconnMobileDevice_iOS, Toggle_WifiMode_iOS, tearDown
 | 
					from iOS_lib import closeApp, openApp, ForgetProfileWifiConnection, deleteOpenRoamingInstalledProfile, verifyUploadDownloadSpeediOS, downloadInstallOpenRoamingProfile, ForgetWifiConnection, Toggle_AirplaneMode_iOS, set_APconnMobileDevice_iOS, verify_APconnMobileDevice_iOS, Toggle_WifiMode_iOS, tearDown
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -28,8 +28,8 @@ import allure
 | 
				
			|||||||
if 'perfecto_libs' not in sys.path:
 | 
					if 'perfecto_libs' not in sys.path:
 | 
				
			||||||
    sys.path.append(f'../libs/perfecto_libs')
 | 
					    sys.path.append(f'../libs/perfecto_libs')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# pytestmark = [pytest.mark.sanity, pytest.mark.interop, pytest.mark.interop_ios, pytest.mark.ios, pytest.mark.openRoaming, pytest.mark.nat]
 | 
					pytestmark = [pytest.mark.sanity, pytest.mark.interop, pytest.mark.interop_ios, pytest.mark.ios, pytest.mark.openRoaming, pytest.mark.nat]
 | 
				
			||||||
pytestmark = [pytest.mark.openRoaming]
 | 
					# pytestmark = [pytest.mark.openRoaming]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
from iOS_lib import closeApp, openApp, ForgetProfileWifiConnection, deleteOpenRoamingInstalledProfile, verifyUploadDownloadSpeediOS, downloadInstallOpenRoamingProfile, ForgetWifiConnection, Toggle_AirplaneMode_iOS, set_APconnMobileDevice_iOS, verify_APconnMobileDevice_iOS, Toggle_WifiMode_iOS, tearDown
 | 
					from iOS_lib import closeApp, openApp, ForgetProfileWifiConnection, deleteOpenRoamingInstalledProfile, verifyUploadDownloadSpeediOS, downloadInstallOpenRoamingProfile, ForgetWifiConnection, Toggle_AirplaneMode_iOS, set_APconnMobileDevice_iOS, verify_APconnMobileDevice_iOS, Toggle_WifiMode_iOS, tearDown
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -27,8 +27,8 @@ import allure
 | 
				
			|||||||
if 'perfecto_libs' not in sys.path:
 | 
					if 'perfecto_libs' not in sys.path:
 | 
				
			||||||
    sys.path.append(f'../libs/perfecto_libs')
 | 
					    sys.path.append(f'../libs/perfecto_libs')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# pytestmark = [pytest.mark.sanity, pytest.mark.interop, pytest.mark.interop_ios, pytest.mark.ios, pytest.mark.openRoaming, pytest.mark.vlan]
 | 
					pytestmark = [pytest.mark.sanity, pytest.mark.interop, pytest.mark.interop_ios, pytest.mark.ios, pytest.mark.openRoaming, pytest.mark.vlan]
 | 
				
			||||||
pytestmark = [pytest.mark.openRoaming]
 | 
					# pytestmark = [pytest.mark.openRoaming]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
from iOS_lib import closeApp, openApp, ForgetProfileWifiConnection, deleteOpenRoamingInstalledProfile, verifyUploadDownloadSpeediOS, downloadInstallOpenRoamingProfile, ForgetWifiConnection, Toggle_AirplaneMode_iOS, set_APconnMobileDevice_iOS, verify_APconnMobileDevice_iOS, Toggle_WifiMode_iOS, tearDown
 | 
					from iOS_lib import closeApp, openApp, ForgetProfileWifiConnection, deleteOpenRoamingInstalledProfile, verifyUploadDownloadSpeediOS, downloadInstallOpenRoamingProfile, ForgetWifiConnection, Toggle_AirplaneMode_iOS, set_APconnMobileDevice_iOS, verify_APconnMobileDevice_iOS, Toggle_WifiMode_iOS, tearDown
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -38,12 +38,18 @@ setup_params_enterprise = {
 | 
				
			|||||||
    "rf": {},
 | 
					    "rf": {},
 | 
				
			||||||
    "radius": True
 | 
					    "radius": True
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
for sec_modes in setup_params_enterprise['ssid_modes'].keys():
 | 
					class TestUniqueSSIDBridgeAnd(object):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @pytest.mark.unique_ssid_enterprise_bridge_and
 | 
				
			||||||
 | 
					    def test_unique_ssid_bridge_and(self):
 | 
				
			||||||
 | 
					        for sec_modes in setup_params_enterprise['ssid_modes'].keys():
 | 
				
			||||||
            for i in range(len(setup_params_enterprise['ssid_modes'][sec_modes])):
 | 
					            for i in range(len(setup_params_enterprise['ssid_modes'][sec_modes])):
 | 
				
			||||||
                N = 3
 | 
					                N = 3
 | 
				
			||||||
                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
					                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
                                     string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
					                                                      string.digits, k=N))) + str(int(time.time_ns()) % 10000)
 | 
				
			||||||
        setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] + "_"+ rand_string
 | 
					                setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] = \
 | 
				
			||||||
 | 
					                    setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] + "_" + rand_string
 | 
				
			||||||
 | 
					            assert True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@allure.suite(suite_name="interop sanity")
 | 
					@allure.suite(suite_name="interop sanity")
 | 
				
			||||||
@allure.sub_suite(sub_suite_name="Bridge Mode EAP Client Connect : Suite-A")
 | 
					@allure.sub_suite(sub_suite_name="Bridge Mode EAP Client Connect : Suite-A")
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -38,12 +38,25 @@ setup_params_general = {
 | 
				
			|||||||
    "radius": False
 | 
					    "radius": False
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
for sec_modes in setup_params_general['ssid_modes'].keys():
 | 
					class TestUniqueSSIDGeneralBridgeAnd(object):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @pytest.mark.unique_ssid_general_one_bridge_and
 | 
				
			||||||
 | 
					    def test_unique_ssid_general_one_bridge_and(self):
 | 
				
			||||||
 | 
					        for sec_modes in setup_params_general['ssid_modes'].keys():
 | 
				
			||||||
            for i in range(len(setup_params_general['ssid_modes'][sec_modes])):
 | 
					            for i in range(len(setup_params_general['ssid_modes'][sec_modes])):
 | 
				
			||||||
                N = 3
 | 
					                N = 3
 | 
				
			||||||
                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
					                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
                                     string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
					                                                      string.digits, k=N))) + str(int(time.time_ns()) % 10000)
 | 
				
			||||||
        setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] + "_"+ rand_string
 | 
					                setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] = \
 | 
				
			||||||
 | 
					                setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] + "_" + rand_string
 | 
				
			||||||
 | 
					            assert True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# for sec_modes in setup_params_general['ssid_modes'].keys():
 | 
				
			||||||
 | 
					#     for i in range(len(setup_params_general['ssid_modes'][sec_modes])):
 | 
				
			||||||
 | 
					#         N = 3
 | 
				
			||||||
 | 
					#         rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
 | 
					#                                      string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
				
			||||||
 | 
					#         setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] + "_"+ rand_string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@allure.suite(suite_name="interop sanity")
 | 
					@allure.suite(suite_name="interop sanity")
 | 
				
			||||||
@allure.sub_suite(sub_suite_name="Bridge Mode Client Connect : Suite-A")
 | 
					@allure.sub_suite(sub_suite_name="Bridge Mode Client Connect : Suite-A")
 | 
				
			||||||
@@ -305,12 +318,26 @@ setup_params_general_two = {
 | 
				
			|||||||
    "radius": False
 | 
					    "radius": False
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
for sec_modes in setup_params_general_two['ssid_modes'].keys():
 | 
					class TestUniqueSSIDGeneralTwoBridgeAnd(object):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @pytest.mark.unique_ssid_general_two_bridge_and
 | 
				
			||||||
 | 
					    def test_unique_ssid_general_two_bridge_and(self):
 | 
				
			||||||
 | 
					        for sec_modes in setup_params_general_two['ssid_modes'].keys():
 | 
				
			||||||
            for i in range(len(setup_params_general_two['ssid_modes'][sec_modes])):
 | 
					            for i in range(len(setup_params_general_two['ssid_modes'][sec_modes])):
 | 
				
			||||||
        N = 2
 | 
					                N = 3
 | 
				
			||||||
                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
					                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
                                     string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
					                                                      string.digits, k=N))) + str(int(time.time_ns()) % 10000)
 | 
				
			||||||
        setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'].replace("ssid_","") + "_"+ rand_string
 | 
					                setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'] = \
 | 
				
			||||||
 | 
					                setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'] + "_" + rand_string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        assert True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# for sec_modes in setup_params_general_two['ssid_modes'].keys():
 | 
				
			||||||
 | 
					#     for i in range(len(setup_params_general_two['ssid_modes'][sec_modes])):
 | 
				
			||||||
 | 
					#         N = 2
 | 
				
			||||||
 | 
					#         rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
 | 
					#                                      string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
				
			||||||
 | 
					#         setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'].replace("ssid_","") + "_"+ rand_string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@allure.suite(suite_name="interop sanity")
 | 
					@allure.suite(suite_name="interop sanity")
 | 
				
			||||||
@allure.sub_suite(sub_suite_name="Bridge Mode Client Connect : Suite-B")
 | 
					@allure.sub_suite(sub_suite_name="Bridge Mode Client Connect : Suite-B")
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -42,12 +42,25 @@ setup_params_enterprise = {
 | 
				
			|||||||
    "radius": True
 | 
					    "radius": True
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
for sec_modes in setup_params_enterprise['ssid_modes'].keys():
 | 
					class TestUniqueSSIDEnterpriseBridgeIOS(object):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @pytest.mark.unique_ssid_enterprise_bridge_ios
 | 
				
			||||||
 | 
					    def test_unique_ssid_enterprise_bridge_ios(self):
 | 
				
			||||||
 | 
					        for sec_modes in setup_params_enterprise['ssid_modes'].keys():
 | 
				
			||||||
            for i in range(len(setup_params_enterprise['ssid_modes'][sec_modes])):
 | 
					            for i in range(len(setup_params_enterprise['ssid_modes'][sec_modes])):
 | 
				
			||||||
                N = 3
 | 
					                N = 3
 | 
				
			||||||
                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
					                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
                                     string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
					                                                      string.digits, k=N))) + str(int(time.time_ns()) % 10000)
 | 
				
			||||||
        setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] + "_"+ rand_string
 | 
					                setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] = \
 | 
				
			||||||
 | 
					                    setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] + "_" + rand_string
 | 
				
			||||||
 | 
					            assert True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# for sec_modes in setup_params_enterprise['ssid_modes'].keys():
 | 
				
			||||||
 | 
					#     for i in range(len(setup_params_enterprise['ssid_modes'][sec_modes])):
 | 
				
			||||||
 | 
					#         N = 3
 | 
				
			||||||
 | 
					#         rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
 | 
					#                                      string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
				
			||||||
 | 
					#         setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] + "_"+ rand_string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@allure.suite(suite_name="interop sanity")
 | 
					@allure.suite(suite_name="interop sanity")
 | 
				
			||||||
@allure.sub_suite(sub_suite_name="Bridge Mode EAP Client Connect : Suite-A")
 | 
					@allure.sub_suite(sub_suite_name="Bridge Mode EAP Client Connect : Suite-A")
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -40,12 +40,26 @@ setup_params_general = {
 | 
				
			|||||||
    "rf": {},
 | 
					    "rf": {},
 | 
				
			||||||
    "radius": False
 | 
					    "radius": False
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
for sec_modes in setup_params_general['ssid_modes'].keys():
 | 
					
 | 
				
			||||||
 | 
					class TestUniqueSSIDGeneralOneBridgeIOS(object):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @pytest.mark.unique_ssid_general_one_bridge_ios
 | 
				
			||||||
 | 
					    def test_unique_ssid_general_one_bridge_ios(self):
 | 
				
			||||||
 | 
					        for sec_modes in setup_params_general['ssid_modes'].keys():
 | 
				
			||||||
            for i in range(len(setup_params_general['ssid_modes'][sec_modes])):
 | 
					            for i in range(len(setup_params_general['ssid_modes'][sec_modes])):
 | 
				
			||||||
                N = 3
 | 
					                N = 3
 | 
				
			||||||
                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
					                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
                                     string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
					                                                      string.digits, k=N))) + str(int(time.time_ns()) % 10000)
 | 
				
			||||||
        setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] + "_"+ rand_string
 | 
					                setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] = \
 | 
				
			||||||
 | 
					                setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] + "_" + rand_string
 | 
				
			||||||
 | 
					            assert True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# for sec_modes in setup_params_general['ssid_modes'].keys():
 | 
				
			||||||
 | 
					#     for i in range(len(setup_params_general['ssid_modes'][sec_modes])):
 | 
				
			||||||
 | 
					#         N = 3
 | 
				
			||||||
 | 
					#         rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
 | 
					#                                      string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
				
			||||||
 | 
					#         setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] + "_"+ rand_string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@allure.suite(suite_name="interop sanity")
 | 
					@allure.suite(suite_name="interop sanity")
 | 
				
			||||||
@allure.sub_suite(sub_suite_name="Bridge Mode Client Connect : Suite-A")
 | 
					@allure.sub_suite(sub_suite_name="Bridge Mode Client Connect : Suite-A")
 | 
				
			||||||
@@ -296,12 +310,26 @@ setup_params_general_two = {
 | 
				
			|||||||
    "rf": {},
 | 
					    "rf": {},
 | 
				
			||||||
    "radius": False
 | 
					    "radius": False
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
for sec_modes in setup_params_general_two['ssid_modes'].keys():
 | 
					class TestUniqueSSIDGeneralTwoBridgeios(object):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @pytest.mark.unique_ssid_general_two_bridge_ios
 | 
				
			||||||
 | 
					    def test_unique_ssid_general_two_bridge_ios(self):
 | 
				
			||||||
 | 
					        for sec_modes in setup_params_general_two['ssid_modes'].keys():
 | 
				
			||||||
            for i in range(len(setup_params_general_two['ssid_modes'][sec_modes])):
 | 
					            for i in range(len(setup_params_general_two['ssid_modes'][sec_modes])):
 | 
				
			||||||
        N = 2
 | 
					                N = 3
 | 
				
			||||||
                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
					                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
                                     string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
					                                                      string.digits, k=N))) + str(int(time.time_ns()) % 10000)
 | 
				
			||||||
        setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'].replace("ssid_","") + "_"+ rand_string
 | 
					                setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'] = \
 | 
				
			||||||
 | 
					                setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'] + "_" + rand_string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        assert True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# for sec_modes in setup_params_general_two['ssid_modes'].keys():
 | 
				
			||||||
 | 
					#     for i in range(len(setup_params_general_two['ssid_modes'][sec_modes])):
 | 
				
			||||||
 | 
					#         N = 2
 | 
				
			||||||
 | 
					#         rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
 | 
					#                                      string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
				
			||||||
 | 
					#         setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'].replace("ssid_","") + "_"+ rand_string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@allure.suite(suite_name="interop sanity")
 | 
					@allure.suite(suite_name="interop sanity")
 | 
				
			||||||
@allure.sub_suite(sub_suite_name="Bridge Mode Client Connect : Suite-B")
 | 
					@allure.sub_suite(sub_suite_name="Bridge Mode Client Connect : Suite-B")
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -17,10 +17,11 @@ import allure
 | 
				
			|||||||
if 'perfecto_libs' not in sys.path:
 | 
					if 'perfecto_libs' not in sys.path:
 | 
				
			||||||
    sys.path.append(f'../libs/perfecto_libs')
 | 
					    sys.path.append(f'../libs/perfecto_libs')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
pytestmark = [pytest.mark.sanity, pytest.mark.interop, pytest.mark.android, pytest.mark.interop_and, pytest.mark.client_connect
 | 
					pytestmark = [pytest.mark.sanity, pytest.mark.interop, pytest.mark.android, pytest.mark.interop_and,
 | 
				
			||||||
              ,pytest.mark.interop_uc_sanity, pytest.mark.nat, pytest.mark.enterprise]
 | 
					              pytest.mark.client_connect, pytest.mark.interop_uc_sanity, pytest.mark.nat, pytest.mark.enterprise]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
from android_lib import closeApp, set_APconnMobileDevice_android, Toggle_AirplaneMode_android, ForgetWifiConnection, openApp, get_ip_address_eap_and
 | 
					from android_lib import closeApp, set_APconnMobileDevice_android, Toggle_AirplaneMode_android, ForgetWifiConnection, \
 | 
				
			||||||
 | 
					    openApp, get_ip_address_eap_and
 | 
				
			||||||
 | 
					
 | 
				
			||||||
setup_params_enterprise = {
 | 
					setup_params_enterprise = {
 | 
				
			||||||
    "mode": "NAT",
 | 
					    "mode": "NAT",
 | 
				
			||||||
@@ -38,12 +39,20 @@ setup_params_enterprise = {
 | 
				
			|||||||
    "rf": {},
 | 
					    "rf": {},
 | 
				
			||||||
    "radius": True
 | 
					    "radius": True
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
for sec_modes in setup_params_enterprise['ssid_modes'].keys():
 | 
					
 | 
				
			||||||
 | 
					class TestUniqueSSIDEnterpriseNatAnd(object):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @pytest.mark.unique_ssid_enterprise_nat_and
 | 
				
			||||||
 | 
					    def test_unique_ssid_enterprise_nat_and(self):
 | 
				
			||||||
 | 
					        for sec_modes in setup_params_enterprise['ssid_modes'].keys():
 | 
				
			||||||
            for i in range(len(setup_params_enterprise['ssid_modes'][sec_modes])):
 | 
					            for i in range(len(setup_params_enterprise['ssid_modes'][sec_modes])):
 | 
				
			||||||
                N = 3
 | 
					                N = 3
 | 
				
			||||||
                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
					                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
                                     string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
					                                                      string.digits, k=N))) + str(int(time.time_ns()) % 10000)
 | 
				
			||||||
        setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] + "_"+ rand_string
 | 
					                setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] = \
 | 
				
			||||||
 | 
					                    setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] + "_" + rand_string
 | 
				
			||||||
 | 
					            assert True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@allure.suite(suite_name="interop sanity")
 | 
					@allure.suite(suite_name="interop sanity")
 | 
				
			||||||
@allure.sub_suite(sub_suite_name="Nat Mode EAP Client Connectivity : Suite-A")
 | 
					@allure.sub_suite(sub_suite_name="Nat Mode EAP Client Connectivity : Suite-A")
 | 
				
			||||||
@@ -83,7 +92,8 @@ class TestNatModeEnterpriseTTLSSuiteA(object):
 | 
				
			|||||||
        connData = get_ToggleAirplaneMode_data
 | 
					        connData = get_ToggleAirplaneMode_data
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        # Set Wifi/AP Mode
 | 
					        # Set Wifi/AP Mode
 | 
				
			||||||
        ip, is_internet = get_ip_address_eap_and(request, ssidName, identity, ttls_passwd, setup_perfectoMobile_android, connData)
 | 
					        ip, is_internet = get_ip_address_eap_and(request, ssidName, identity, ttls_passwd, setup_perfectoMobile_android,
 | 
				
			||||||
 | 
					                                                 connData)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if ip:
 | 
					        if ip:
 | 
				
			||||||
            if is_internet:
 | 
					            if is_internet:
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -37,12 +37,19 @@ setup_params_general = {
 | 
				
			|||||||
    "rf": {},
 | 
					    "rf": {},
 | 
				
			||||||
    "radius": False
 | 
					    "radius": False
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
for sec_modes in setup_params_general['ssid_modes'].keys():
 | 
					
 | 
				
			||||||
 | 
					class TestUniqueSSIDGeneralOneNatIos(object):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @pytest.mark.unique_ssid_general_one_nat_ios
 | 
				
			||||||
 | 
					    def test_unique_ssid_general_one_nat_ios(self):
 | 
				
			||||||
 | 
					        for sec_modes in setup_params_general['ssid_modes'].keys():
 | 
				
			||||||
            for i in range(len(setup_params_general['ssid_modes'][sec_modes])):
 | 
					            for i in range(len(setup_params_general['ssid_modes'][sec_modes])):
 | 
				
			||||||
                N = 3
 | 
					                N = 3
 | 
				
			||||||
                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
					                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
                                     string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
					                                                      string.digits, k=N))) + str(int(time.time_ns()) % 10000)
 | 
				
			||||||
        setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] + "_"+ rand_string
 | 
					                setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] = \
 | 
				
			||||||
 | 
					                setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] + "_" + rand_string
 | 
				
			||||||
 | 
					            assert True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@allure.suite(suite_name="interop sanity")
 | 
					@allure.suite(suite_name="interop sanity")
 | 
				
			||||||
@@ -61,7 +68,6 @@ class TestNatModeConnectSuiteOne(object):
 | 
				
			|||||||
        pytest -m "client_connect and nat and InteropsuiteA"
 | 
					        pytest -m "client_connect and nat and InteropsuiteA"
 | 
				
			||||||
    """
 | 
					    """
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
    @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-4510", name="WIFI-4510")
 | 
					    @allure.testcase(url="https://telecominfraproject.atlassian.net/browse/WIFI-4510", name="WIFI-4510")
 | 
				
			||||||
    @pytest.mark.fiveg
 | 
					    @pytest.mark.fiveg
 | 
				
			||||||
    @pytest.mark.wpa2_personal
 | 
					    @pytest.mark.wpa2_personal
 | 
				
			||||||
@@ -301,12 +307,20 @@ setup_params_general_two = {
 | 
				
			|||||||
    "radius": False
 | 
					    "radius": False
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
for sec_modes in setup_params_general_two['ssid_modes'].keys():
 | 
					class TestUniqueSSIDGeneralTwoNatAND(object):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @pytest.mark.unique_ssid_general_two_nat_and
 | 
				
			||||||
 | 
					    def test_unique_ssid_general_two_nat_and(self):
 | 
				
			||||||
 | 
					        for sec_modes in setup_params_general_two['ssid_modes'].keys():
 | 
				
			||||||
            for i in range(len(setup_params_general_two['ssid_modes'][sec_modes])):
 | 
					            for i in range(len(setup_params_general_two['ssid_modes'][sec_modes])):
 | 
				
			||||||
                N = 3
 | 
					                N = 3
 | 
				
			||||||
                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
					                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
                                     string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
					                                                      string.digits, k=N))) + str(int(time.time_ns()) % 10000)
 | 
				
			||||||
        setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'] + "_"+ rand_string
 | 
					                setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'] = \
 | 
				
			||||||
 | 
					                setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'] + "_" + rand_string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        assert True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@allure.suite(suite_name="interop sanity")
 | 
					@allure.suite(suite_name="interop sanity")
 | 
				
			||||||
@allure.sub_suite(sub_suite_name="NAT Mode Client Connect : Suite-B")
 | 
					@allure.sub_suite(sub_suite_name="NAT Mode Client Connect : Suite-B")
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -41,12 +41,18 @@ setup_params_enterprise = {
 | 
				
			|||||||
    "rf": {},
 | 
					    "rf": {},
 | 
				
			||||||
    "radius": True
 | 
					    "radius": True
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
for sec_modes in setup_params_enterprise['ssid_modes'].keys():
 | 
					class TestUniqueSSIDEnterpriseNatIOS(object):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @pytest.mark.unique_ssid_enterprise_nat_ios
 | 
				
			||||||
 | 
					    def test_unique_ssid_enterprise_nat_ios(self):
 | 
				
			||||||
 | 
					        for sec_modes in setup_params_enterprise['ssid_modes'].keys():
 | 
				
			||||||
            for i in range(len(setup_params_enterprise['ssid_modes'][sec_modes])):
 | 
					            for i in range(len(setup_params_enterprise['ssid_modes'][sec_modes])):
 | 
				
			||||||
                N = 3
 | 
					                N = 3
 | 
				
			||||||
                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
					                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
                                     string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
					                                                      string.digits, k=N))) + str(int(time.time_ns()) % 10000)
 | 
				
			||||||
        setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] + "_"+ rand_string
 | 
					                setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] = \
 | 
				
			||||||
 | 
					                    setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] + "_" + rand_string
 | 
				
			||||||
 | 
					            assert True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@allure.suite(suite_name="interop sanity")
 | 
					@allure.suite(suite_name="interop sanity")
 | 
				
			||||||
@allure.sub_suite(sub_suite_name="Nat Mode EAP Client Connect : Suite-A")
 | 
					@allure.sub_suite(sub_suite_name="Nat Mode EAP Client Connect : Suite-A")
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -40,14 +40,18 @@ setup_params_general = {
 | 
				
			|||||||
    "rf": {},
 | 
					    "rf": {},
 | 
				
			||||||
    "radius": False
 | 
					    "radius": False
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					class TestUniqueSSIDGeneralOneNATiOS(object):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
for sec_modes in setup_params_general['ssid_modes'].keys():
 | 
					    @pytest.mark.unique_ssid_general_one_nat_ios
 | 
				
			||||||
 | 
					    def test_unique_ssid_general_one_nat_ios(self):
 | 
				
			||||||
 | 
					        for sec_modes in setup_params_general['ssid_modes'].keys():
 | 
				
			||||||
            for i in range(len(setup_params_general['ssid_modes'][sec_modes])):
 | 
					            for i in range(len(setup_params_general['ssid_modes'][sec_modes])):
 | 
				
			||||||
                N = 3
 | 
					                N = 3
 | 
				
			||||||
                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
					                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
                                     string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
					                                                      string.digits, k=N))) + str(int(time.time_ns()) % 10000)
 | 
				
			||||||
 | 
					                setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] = \
 | 
				
			||||||
        setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] + "_"+ rand_string
 | 
					                setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] + "_" + rand_string
 | 
				
			||||||
 | 
					            assert True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@allure.suite(suite_name="interop sanity")
 | 
					@allure.suite(suite_name="interop sanity")
 | 
				
			||||||
@allure.sub_suite(sub_suite_name="Nat Mode Client Connect : Suite-A")
 | 
					@allure.sub_suite(sub_suite_name="Nat Mode Client Connect : Suite-A")
 | 
				
			||||||
@@ -299,12 +303,19 @@ setup_params_general_two = {
 | 
				
			|||||||
    "radius": False
 | 
					    "radius": False
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
for sec_modes in setup_params_general_two['ssid_modes'].keys():
 | 
					class TestUniqueSSIDGeneralTwoNAtiOS(object):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @pytest.mark.unique_ssid_general_two_nat_ios
 | 
				
			||||||
 | 
					    def test_unique_ssid_general_two_nat_ios(self):
 | 
				
			||||||
 | 
					        for sec_modes in setup_params_general_two['ssid_modes'].keys():
 | 
				
			||||||
            for i in range(len(setup_params_general_two['ssid_modes'][sec_modes])):
 | 
					            for i in range(len(setup_params_general_two['ssid_modes'][sec_modes])):
 | 
				
			||||||
                N = 3
 | 
					                N = 3
 | 
				
			||||||
                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
					                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
                                     string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
					                                                      string.digits, k=N))) + str(int(time.time_ns()) % 10000)
 | 
				
			||||||
        setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'] + "_"+ rand_string
 | 
					                setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'] = \
 | 
				
			||||||
 | 
					                setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'] + "_" + rand_string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        assert True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@allure.suite(suite_name="interop sanity")
 | 
					@allure.suite(suite_name="interop sanity")
 | 
				
			||||||
@allure.sub_suite(sub_suite_name="Nat Mode Client Connect : Suite-B")
 | 
					@allure.sub_suite(sub_suite_name="Nat Mode Client Connect : Suite-B")
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -38,12 +38,28 @@ setup_params_enterprise = {
 | 
				
			|||||||
    "rf": {},
 | 
					    "rf": {},
 | 
				
			||||||
    "radius": True
 | 
					    "radius": True
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
for sec_modes in setup_params_enterprise['ssid_modes'].keys():
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class TestUniqueSSIDEnterpriseVLANAND(object):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @pytest.mark.unique_ssid_enterprise_vlan_and
 | 
				
			||||||
 | 
					    def test_unique_ssid_enterprise_vlan_and(self):
 | 
				
			||||||
 | 
					        for sec_modes in setup_params_enterprise['ssid_modes'].keys():
 | 
				
			||||||
            for i in range(len(setup_params_enterprise['ssid_modes'][sec_modes])):
 | 
					            for i in range(len(setup_params_enterprise['ssid_modes'][sec_modes])):
 | 
				
			||||||
                N = 3
 | 
					                N = 3
 | 
				
			||||||
                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
					                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
                                     string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
					                                                      string.digits, k=N))) + str(int(time.time_ns()) % 10000)
 | 
				
			||||||
        setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] + "_"+ rand_string
 | 
					                setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] = \
 | 
				
			||||||
 | 
					                    setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] + "_" + rand_string
 | 
				
			||||||
 | 
					            assert True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# for sec_modes in setup_params_enterprise['ssid_modes'].keys():
 | 
				
			||||||
 | 
					#     for i in range(len(setup_params_enterprise['ssid_modes'][sec_modes])):
 | 
				
			||||||
 | 
					#         N = 3
 | 
				
			||||||
 | 
					#         rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
 | 
					#                                      string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
				
			||||||
 | 
					#         setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] + "_"+ rand_string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@allure.suite(suite_name="interop sanity")
 | 
					@allure.suite(suite_name="interop sanity")
 | 
				
			||||||
@allure.sub_suite(sub_suite_name="Vlan Mode EAP Client Connect : Suite-A")
 | 
					@allure.sub_suite(sub_suite_name="Vlan Mode EAP Client Connect : Suite-A")
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -37,12 +37,26 @@ setup_params_general = {
 | 
				
			|||||||
    "rf": {},
 | 
					    "rf": {},
 | 
				
			||||||
    "radius": False
 | 
					    "radius": False
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
for sec_modes in setup_params_general['ssid_modes'].keys():
 | 
					
 | 
				
			||||||
 | 
					class TestUniqueSSIDGeneralOneVLANAND(object):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @pytest.mark.unique_ssid_general_one_vlan_and
 | 
				
			||||||
 | 
					    def test_unique_ssid_general_one_vlan(self):
 | 
				
			||||||
 | 
					        for sec_modes in setup_params_general['ssid_modes'].keys():
 | 
				
			||||||
            for i in range(len(setup_params_general['ssid_modes'][sec_modes])):
 | 
					            for i in range(len(setup_params_general['ssid_modes'][sec_modes])):
 | 
				
			||||||
                N = 3
 | 
					                N = 3
 | 
				
			||||||
                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
					                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
                                     string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
					                                                      string.digits, k=N))) + str(int(time.time_ns()) % 10000)
 | 
				
			||||||
        setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] + "_"+ rand_string
 | 
					                setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] = \
 | 
				
			||||||
 | 
					                setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] + "_" + rand_string
 | 
				
			||||||
 | 
					            assert True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# for sec_modes in setup_params_general['ssid_modes'].keys():
 | 
				
			||||||
 | 
					#     for i in range(len(setup_params_general['ssid_modes'][sec_modes])):
 | 
				
			||||||
 | 
					#         N = 3
 | 
				
			||||||
 | 
					#         rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
 | 
					#                                      string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
				
			||||||
 | 
					#         setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] + "_"+ rand_string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@allure.suite(suite_name="interop sanity")
 | 
					@allure.suite(suite_name="interop sanity")
 | 
				
			||||||
@allure.sub_suite(sub_suite_name="Vlan Mode Client Connect : Suite-A")
 | 
					@allure.sub_suite(sub_suite_name="Vlan Mode Client Connect : Suite-A")
 | 
				
			||||||
@@ -289,12 +303,26 @@ setup_params_general_two = {
 | 
				
			|||||||
    "rf": {},
 | 
					    "rf": {},
 | 
				
			||||||
    "radius": False
 | 
					    "radius": False
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
for sec_modes in setup_params_general_two['ssid_modes'].keys():
 | 
					class TestUniqueSSIDGeneralTwoVLANAND(object):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @pytest.mark.unique_ssid_general_two_vlan_and
 | 
				
			||||||
 | 
					    def test_unique_ssid_general_two_vlan_And(self):
 | 
				
			||||||
 | 
					        for sec_modes in setup_params_general_two['ssid_modes'].keys():
 | 
				
			||||||
            for i in range(len(setup_params_general_two['ssid_modes'][sec_modes])):
 | 
					            for i in range(len(setup_params_general_two['ssid_modes'][sec_modes])):
 | 
				
			||||||
        N = 2
 | 
					                N = 3
 | 
				
			||||||
                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
					                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
                                     string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
					                                                      string.digits, k=N))) + str(int(time.time_ns()) % 10000)
 | 
				
			||||||
        setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'].replace("ssid_","") + "_"+ rand_string
 | 
					                setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'] = \
 | 
				
			||||||
 | 
					                setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'] + "_" + rand_string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        assert True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# for sec_modes in setup_params_general_two['ssid_modes'].keys():
 | 
				
			||||||
 | 
					#     for i in range(len(setup_params_general_two['ssid_modes'][sec_modes])):
 | 
				
			||||||
 | 
					#         N = 2
 | 
				
			||||||
 | 
					#         rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
 | 
					#                                      string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
				
			||||||
 | 
					#         setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'].replace("ssid_","") + "_"+ rand_string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@allure.suite(suite_name="interop sanity")
 | 
					@allure.suite(suite_name="interop sanity")
 | 
				
			||||||
@allure.sub_suite(sub_suite_name="Vlan Mode Client Connect : Suite-B")
 | 
					@allure.sub_suite(sub_suite_name="Vlan Mode Client Connect : Suite-B")
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -29,24 +29,37 @@ setup_params_enterprise = {
 | 
				
			|||||||
    "mode": "VLAN",
 | 
					    "mode": "VLAN",
 | 
				
			||||||
    "ssid_modes": {
 | 
					    "ssid_modes": {
 | 
				
			||||||
        "wpa2_enterprise": [
 | 
					        "wpa2_enterprise": [
 | 
				
			||||||
            {"ssid_name": "ssid_wpa2_eap_2g", "appliedRadios": ["2G"], "vlan": 100},
 | 
					            {"ssid_name": "ssid_wpa2_eap_2g_vlan", "appliedRadios": ["2G"], "vlan": 100},
 | 
				
			||||||
            {"ssid_name": "ssid_wpa2_eap_5g", "appliedRadios": ["5G"], "vlan": 100}],
 | 
					            {"ssid_name": "ssid_wpa2_eap_5g_vlan", "appliedRadios": ["5G"], "vlan": 100}],
 | 
				
			||||||
        "wpa3_enterprise": [
 | 
					        "wpa3_enterprise": [
 | 
				
			||||||
            {"ssid_name": "ssid_wpa3_eap_2g", "appliedRadios": ["2G"], "vlan": 100},
 | 
					            {"ssid_name": "ssid_wpa3_eap_2g_vlan", "appliedRadios": ["2G"], "vlan": 100},
 | 
				
			||||||
            {"ssid_name": "ssid_wpa3_eap_5g", "appliedRadios": ["5G"], "vlan": 100}],
 | 
					            {"ssid_name": "ssid_wpa3_eap_5g_vlan", "appliedRadios": ["5G"], "vlan": 100}],
 | 
				
			||||||
        "wpa_enterprise": [
 | 
					        "wpa_enterprise": [
 | 
				
			||||||
            {"ssid_name": "ssid_wpa_eap_2g", "appliedRadios": ["2G"], "vlan": 100},
 | 
					            {"ssid_name": "ssid_wpa_eap_2g_vlan", "appliedRadios": ["2G"], "vlan": 100},
 | 
				
			||||||
            {"ssid_name": "ssid_wpa_eap_5g", "appliedRadios": ["5G"], "vlan": 100}]},
 | 
					            {"ssid_name": "ssid_wpa_eap_5g_vlan", "appliedRadios": ["5G"], "vlan": 100}]},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    "rf": {},
 | 
					    "rf": {},
 | 
				
			||||||
    "radius": True
 | 
					    "radius": True
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
for sec_modes in setup_params_enterprise['ssid_modes'].keys():
 | 
					class TestUniqueSSIDEnterpriseVLANiOS(object):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @pytest.mark.unique_ssid_enterprise_vlan_ios
 | 
				
			||||||
 | 
					    def test_unique_ssid_enterprise_vlan_ios(self):
 | 
				
			||||||
 | 
					        for sec_modes in setup_params_enterprise['ssid_modes'].keys():
 | 
				
			||||||
            for i in range(len(setup_params_enterprise['ssid_modes'][sec_modes])):
 | 
					            for i in range(len(setup_params_enterprise['ssid_modes'][sec_modes])):
 | 
				
			||||||
                N = 3
 | 
					                N = 3
 | 
				
			||||||
                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
					                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
                                     string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
					                                                      string.digits, k=N))) + str(int(time.time_ns()) % 10000)
 | 
				
			||||||
        setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] + "_"+ rand_string
 | 
					                setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] = \
 | 
				
			||||||
 | 
					                    setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] + "_" + rand_string
 | 
				
			||||||
 | 
					            assert True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# for sec_modes in setup_params_enterprise['ssid_modes'].keys():
 | 
				
			||||||
 | 
					#     for i in range(len(setup_params_enterprise['ssid_modes'][sec_modes])):
 | 
				
			||||||
 | 
					#         N = 3
 | 
				
			||||||
 | 
					#         rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
 | 
					#                                      string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
				
			||||||
 | 
					#         setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_enterprise['ssid_modes'][sec_modes][i]['ssid_name'] + "_"+ rand_string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@allure.suite(suite_name="interop sanity")
 | 
					@allure.suite(suite_name="interop sanity")
 | 
				
			||||||
@allure.sub_suite(sub_suite_name="Vlan Mode EAP Client Connect : Suite-A")
 | 
					@allure.sub_suite(sub_suite_name="Vlan Mode EAP Client Connect : Suite-A")
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -39,12 +39,25 @@ setup_params_general = {
 | 
				
			|||||||
    "rf": {},
 | 
					    "rf": {},
 | 
				
			||||||
    "radius": False
 | 
					    "radius": False
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
for sec_modes in setup_params_general['ssid_modes'].keys():
 | 
					class TestUniqueSSIDGeneralOneVLANiOS(object):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @pytest.mark.unique_ssid_general_one_vlan_ios
 | 
				
			||||||
 | 
					    def test_unique_ssid_general_one_vlan_ios(self):
 | 
				
			||||||
 | 
					        for sec_modes in setup_params_general['ssid_modes'].keys():
 | 
				
			||||||
            for i in range(len(setup_params_general['ssid_modes'][sec_modes])):
 | 
					            for i in range(len(setup_params_general['ssid_modes'][sec_modes])):
 | 
				
			||||||
                N = 3
 | 
					                N = 3
 | 
				
			||||||
                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
					                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
                                     string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
					                                                      string.digits, k=N))) + str(int(time.time_ns()) % 10000)
 | 
				
			||||||
        setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] + "_"+ rand_string
 | 
					                setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] = \
 | 
				
			||||||
 | 
					                setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] + "_" + rand_string
 | 
				
			||||||
 | 
					            assert True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# for sec_modes in setup_params_general['ssid_modes'].keys():
 | 
				
			||||||
 | 
					#     for i in range(len(setup_params_general['ssid_modes'][sec_modes])):
 | 
				
			||||||
 | 
					#         N = 3
 | 
				
			||||||
 | 
					#         rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
 | 
					#                                      string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
				
			||||||
 | 
					#         setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_general['ssid_modes'][sec_modes][i]['ssid_name'] + "_"+ rand_string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@allure.suite(suite_name="interop sanity")
 | 
					@allure.suite(suite_name="interop sanity")
 | 
				
			||||||
@allure.sub_suite(sub_suite_name="Vlan Mode Client Connect : Suite-A")
 | 
					@allure.sub_suite(sub_suite_name="Vlan Mode Client Connect : Suite-A")
 | 
				
			||||||
@@ -286,12 +299,27 @@ setup_params_general_two = {
 | 
				
			|||||||
    "rf": {},
 | 
					    "rf": {},
 | 
				
			||||||
    "radius": False
 | 
					    "radius": False
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
for sec_modes in setup_params_general_two['ssid_modes'].keys():
 | 
					
 | 
				
			||||||
 | 
					class TestUniqueSSIDGeneralTwoVLANiOS(object):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @pytest.mark.unique_ssid_general_two_vlan_ios
 | 
				
			||||||
 | 
					    def test_unique_ssid_general_two_vlan_ios(self):
 | 
				
			||||||
 | 
					        for sec_modes in setup_params_general_two['ssid_modes'].keys():
 | 
				
			||||||
            for i in range(len(setup_params_general_two['ssid_modes'][sec_modes])):
 | 
					            for i in range(len(setup_params_general_two['ssid_modes'][sec_modes])):
 | 
				
			||||||
        N = 2
 | 
					                N = 3
 | 
				
			||||||
                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
					                rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
                                     string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
					                                                      string.digits, k=N))) + str(int(time.time_ns()) % 10000)
 | 
				
			||||||
        setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'].replace("ssid_","") + "_"+ rand_string
 | 
					                setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'] = \
 | 
				
			||||||
 | 
					                setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'] + "_" + rand_string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        assert True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# for sec_modes in setup_params_general_two['ssid_modes'].keys():
 | 
				
			||||||
 | 
					#     for i in range(len(setup_params_general_two['ssid_modes'][sec_modes])):
 | 
				
			||||||
 | 
					#         N = 2
 | 
				
			||||||
 | 
					#         rand_string = (''.join(random.choices(string.ascii_uppercase +
 | 
				
			||||||
 | 
					#                                      string.digits, k=N)))+str(int(time.time_ns())%10000)
 | 
				
			||||||
 | 
					#         setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'] = setup_params_general_two['ssid_modes'][sec_modes][i]['ssid_name'].replace("ssid_","") + "_"+ rand_string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@allure.suite(suite_name="interop sanity")
 | 
					@allure.suite(suite_name="interop sanity")
 | 
				
			||||||
@allure.sub_suite(sub_suite_name="Vlan Mode Client Connect : Suite-B")
 | 
					@allure.sub_suite(sub_suite_name="Vlan Mode Client Connect : Suite-B")
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user