ExampleScripts

HelloWorld_IO.sh

Objective:

An example framework for a user script using SANBlaze Built-In IO tests

Pass/Fail:

HelloWorld_IO will fail if any of the underlying IO tests fail

HelloWorld.py

HelloWorld.py - Python test script for sb_testmgr

Demonstrate best practices for interfacing with the SANBlaze testmanager framework Setup only, no testing is performed

Copyright SANBlaze, 2021 This script can be used as a template for Certified by SANBlaze scripts using the guide SBCert_Python_Scripting.pdf It demonstrates correct use of the interaction between python scripts and the SANBlaze testmanager framework

HelloWorld_IO_Resets.py

HelloWorld_IO_Resets.py Python test script for sb_testmgr

Demonstrate best practices for reset test scripts Copyright SANBlaze, 2021

HelloWorld_IO_WaitForWriteEntireDisk.sh

Objective:

An example framework for a user script using SANBlaze Built-In IO tests

Pass/Fail:

HelloWorld_IO will fail if any of the underlying IO tests fail

PM_L0_Enable.sh

Objective:

Disable all power substates on a device and test that it has reached L0.

Pass/Fail:

Pass if device enters L0 state and remains in L0 state upon exit

PM_L1_Enable.sh

Objective:

Test a device for ability to reach L1 state. Will leave the device in L1 state. When starting, will attempt to put the drive in L0 state before continuing.

Pass/Fail:

Pass if device enters L1 state and remains in L1 state upon exit

PM_L1.2_Enable.sh

Objective:

Test a device for ability to reach L1.2 state. Will leave the device in L1.2 state. When starting, will attempt to put the drive in L0 state before continuing.

Pass/Fail:

Pass if device enters L1.2 state and remains in L1.2 state upon exit

PM_L1.1_Enable.sh

Objective:

Test a device for ability to reach L1.1 state. Will leave the device in L1.1 state. When starting, will attempt to put the drive in L0 state before continuing.

Pass/Fail:

Pass if device enters L1.1 state and remains in L1.1 state upon exit

PM_L1.1_Verify.sh

Objective:

Test a device for L1.1 power sub state by cycling from L0 to L1 and L1.1 power states and verifying the DUT behavior. Initial sec/pass value from web page is used to add delay in seconds between each state transition. Leave 0 for no delay.

Pass/Fail:

Pass if device enters each supported state correctly and returns to L0 state in response to toggling CLKREQ# to the DUT

PM_L1.2_Verify.sh

Objective:

Test a device for L1.2 power sub state by cycling from L0 to L1 and L1.2 power states and verifying the DUT behavior. Initial sec/pass value from web page is used to add delay in seconds between each state transition. Leave 0 for no delay.

Pass/Fail:

Pass if device enters each supported state correctly and returns to L0 state in response to toggling CLKREQ# to the DUT

PM_L1_Substate_Verify

Objective:

Test a device for L1.1 and L1.2 power sub states by cycling through each L1 power state and verifying the DUT behavior. Initial sec/pass value from web page is used to add delay in seconds between each state transition. Leave 0 for no delay.

Pass/Fail:

Pass if device enters each supported state correctly and returns to L0 state in response to toggling CLKREQ# to the DUT

SBExpress_DataVerify_SDB_PowerFail.sh

Objective:

Starts a SANBlaze Write Test with verify and stop on path loss to the device. When the drive comes back, verify all writes. Uses passtimer to set the time to do writes before cuttint power.

Pass/Fail:

SBExpress_DataVerify_SDB_PowerFail will fail if the device does not come online after the power failure, or if data corruption is detected.

HelloWorld_IO_Dual.py

HelloWorld_IO_Dual.py Python test script for sb_testmgr

Demonstrate best practices for Dual Port test scripts Copyright SANBlaze, 2021

SRIOV_HelloWorld.py

Hello World SRIOV

Objective:

Provide an example script of using SRIOV functions with SANBlaze hardware.

Pass/Fail:

All actions must succeed for script to pass

HelloWorld_IO.py

HelloWorld_IO.py Python test script for sb_testmgr

Demonstrate best practices for Single Port Drive test script using SANBlaze IO program to generate traffic Copyright SANBlaze, 2021 This script can be used as a template for Certified by SANBlaze scripts using the guide SBCert_Python_Scripting.pdf It demonstrates correct use of the interaction between python scripts and the SANBlaze testmanager framework

PM_L0_Enable.sh

Objective:

Disable all power substates on a device and test that it has reached L0. If the device is not in L0, assume RESET is needed. This script is INTERNAL USE ONLY and is for debug.Disable all power substates on a device and test that it has reached L0.Test a device for ability to reach L1 state. Will leave the device in L1 state. When starting, will attempt to put the drive in L0 state before continuing.Test a device for ability to reach L1.2 state. Will leave the device in L1.2 state. When starting, will attempt to put the drive in L0 state before continuing.Test a device for ability to reach L1.1 state. Will leave the device in L1.1 state. When starting, will attempt to put the drive in L0 state before continuing.Test a device for L1.1 power sub state by cycling from L0 to L1 and L1.1 power states and verifying the DUT behavior. Initial sec/pass value from web page is used to add delay in seconds between each state transition. Leave 0 for no delay.Test a device for L1.2 power sub state by cycling from L0 to L1 and L1.2 power states and verifying the DUT behavior. Initial sec/pass value from web page is used to add delay in seconds between each state transition. Leave 0 for no delay.Test a device for L1.1 and L1.2 power sub states by cycling through each L1 power state and verifying the DUT behavior. Initial sec/pass value from web page is used to add delay in seconds between each state transition. Leave 0 for no delay.Test a device for L1.1 and L1.2 power sub states by cycling through each L1 power state and verifying the DUT behavior. At each of the power states, power will be measured and reported. At the end of testing a summary of power for each state will be reported. Initial sec/pass value from web page is used to add delay in seconds between each state transition. Leave 0 for no delay.

Pass/Fail:

Pass if PCIe bus is RESET and device enters L0 state and remains in L0 state upon exitPass if device enters L0 state and remains in L0 state upon exitPass if device enters L1 state and remains in L1 state upon exitPass if device enters L1.2 state and remains in L1.2 state upon exitPass if device enters L1.1 state and remains in L1.1 state upon exitPass if device enters each supported state correctly and returns to L0 state in response to toggling CLKREQ# to the DUTPass if device enters each supported state correctly and returns to L0 state in response to toggling CLKREQ# to the DUTPass if device enters each supported state correctly and returns to L0 state in response to toggling CLKREQ# to the DUTPass if device enters each supported state correctly and returns to L0 state in response to toggling CLKREQ# to the DUT

HelloWorld.sh

Objective:

A basic example framework for a user script

Pass/Fail:

HelloWorld will always PASS

SRIOV_HelloWorld_IO.py

SRIOV Hello World IO

Objective:

Provide an example script of using SRIOV functions with IO with SANBlaze hardware.

Pass/Fail:

All actions must succeed for script to pass

PM_CLKREQ_L_Toggle.sh

Objective:

Recover from L1 substates by toggling CLKREQ_L. Initial sec/pass value from web page is used to add delay in seconds between each state transition. Leave 0 for no delay.

Pass/Fail:

Pass if device enters L0 state