P4C
The P4 Compiler
|
Extracts information from the @testSpec to emit a PTF test case. More...
#include <ptf.h>
Public Member Functions | |
PTF (const TestBackendConfiguration &testBackendConfiguration) | |
void | writeTestToFile (const TestSpec *spec, cstring selectedBranches, size_t testId, float currentCoverage) override |
Produce a PTF test. | |
Public Member Functions inherited from P4::P4Tools::P4Testgen::Bmv2::Bmv2TestFramework | |
Bmv2TestFramework (const TestBackendConfiguration &testBackendConfiguration) | |
Public Member Functions inherited from P4::P4Tools::P4Testgen::TestFramework | |
bool | isInFileMode () const |
@Returns true if the test framework is configured to write to a file. | |
virtual AbstractTestReferenceOrError | produceTest (const TestSpec *spec, cstring selectedBranches, size_t testIdx, float currentCoverage) |
Additional Inherited Members | |
Protected Member Functions inherited from P4::P4Tools::P4Testgen::Bmv2::Bmv2TestFramework | |
virtual inja::json | getClone (const TestObjectMap &cloneSpecs) const |
Returns the configuration for a cloned packet configuration. | |
virtual inja::json | getControlPlane (const TestSpec *testSpec) const |
Converts all the control plane objects into Inja format. | |
virtual inja::json | getControlPlaneForTable (const TableMatchMap &matches, const std::vector< ActionArg > &args) const |
Helper function for the control plane table inja objects. | |
virtual inja::json | getControlPlaneTable (const TableConfig &tblConfig) const |
Converts a table configuration into Inja format. | |
virtual inja::json::array_t | getMeter (const TestObjectMap &meterValues) const |
virtual inja::json | getSend (const TestSpec *testSpec) const |
Converts the input packet and port into Inja format. | |
Protected Member Functions inherited from P4::P4Tools::P4Testgen::TestFramework | |
TestFramework (const TestBackendConfiguration &testBackendConfiguration) | |
Creates a generic test framework. | |
const TestBackendConfiguration & | getTestBackendConfiguration () const |
Returns the configuration options for the test back end. | |
Static Protected Member Functions inherited from P4::P4Tools::P4Testgen::Bmv2::Bmv2TestFramework | |
static std::string | formatHexExpressionWithSeparators (const IR::Expression &expr) |
Wrapper helper function that automatically inserts separators for hex strings. | |
Static Protected Member Functions inherited from P4::P4Tools::P4Testgen::TestFramework | |
static void | checkForDefaultActionOverride (inja::json &tblJson, const TableConfig *tblConfig) |
template<class ProfileType , class SelectorType > | |
static void | checkForTableActionProfile (inja::json &tblJson, std::map< cstring, cstring > &apAsMap, const TableConfig *tblConfig) |
template<class ProfileType > | |
static void | collectActionProfileDeclarations (const TestSpec *testSpec, inja::json &controlPlaneJson, const std::map< cstring, cstring > &apAsMap) |
Collect all the action profile objects. These will have to be declared in the test. | |
static inja::json | getTrace (const TestSpec *testSpec) |
Converts the traces of this test into a string representation and Inja object. | |
Extracts information from the @testSpec to emit a PTF test case.
|
overridevirtual |
Produce a PTF test.
Implements P4::P4Tools::P4Testgen::TestFramework.