32#include <boost/test/unit_test.hpp>
48struct ISSUE24915_FIXTURE
59 BOOST_REQUIRE_EQUAL( m_refs.GetCount(), 3u );
62 const SCH_REFERENCE& FindRef(
const wxString& aRef )
const
64 for(
size_t i = 0; i < m_refs.GetCount(); ++i )
66 if( m_refs[i].GetRef() == aRef )
70 BOOST_FAIL(
"reference not found" );
74 wxString ModelValue( SYMBOL_FIELDS_EDITOR_GRID_DATA_MODEL& aModel,
const wxString& aRef,
75 const wxString& aField )
const
86 wxString ExportValue( SYMBOL_FIELDS_EDITOR_GRID_DATA_MODEL& aModel,
const wxString& aRef,
87 const wxString& aField )
const
93 return aModel.
GetGroupedValue( row, col, wxS(
", " ), wxS(
"-" ),
true,
false );
98 SCH_REFERENCE_LIST m_refs;
110 m_schematic->SetCurrentVariant( wxEmptyString );
114 jobModel.
AddColumn( wxS(
"Value" ), wxS(
"Value" ),
false );
115 jobModel.
AddColumn( wxS(
"${DNP}" ), wxS(
"DNP" ),
false );
117 BOOST_CHECK_EQUAL( ModelValue( jobModel, wxS(
"R1" ), wxS(
"Value" ) ), wxS(
"10k" ) );
118 BOOST_CHECK_EQUAL( ModelValue( jobModel, wxS(
"R3" ), wxS(
"Value" ) ), wxS(
"2M" ) );
119 BOOST_CHECK_EQUAL( ModelValue( jobModel, wxS(
"R2" ), wxS(
"${DNP}" ) ), wxS(
"1" ) );
120 BOOST_CHECK_EQUAL( ModelValue( jobModel, wxS(
"R1" ), wxS(
"${DNP}" ) ), wxS(
"0" ) );
123 BOOST_CHECK_EQUAL( ExportValue( jobModel, wxS(
"R2" ), wxS(
"${DNP}" ) ), wxS(
"DNP" ) );
124 BOOST_CHECK_EQUAL( ExportValue( jobModel, wxS(
"R1" ), wxS(
"${DNP}" ) ), wxEmptyString );
125 BOOST_CHECK_EQUAL( ExportValue( jobModel, wxS(
"R1" ), wxS(
"Value" ) ), wxS(
"10k" ) );
135 m_schematic->SetCurrentVariant( wxS(
"H0" ) );
138 baseModel.
AddColumn( wxS(
"Value" ), wxS(
"Value" ),
false );
139 baseModel.
AddColumn( wxS(
"${DNP}" ), wxS(
"DNP" ),
false );
141 BOOST_CHECK_EQUAL( ModelValue( baseModel, wxS(
"R1" ), wxS(
"Value" ) ), wxS(
"6k2" ) );
142 BOOST_CHECK_EQUAL( ModelValue( baseModel, wxS(
"R3" ), wxS(
"Value" ) ), wxS(
"1M" ) );
143 BOOST_CHECK_EQUAL( ModelValue( baseModel, wxS(
"R2" ), wxS(
"${DNP}" ) ), wxS(
"0" ) );
145 BOOST_CHECK_EQUAL( ExportValue( baseModel, wxS(
"R2" ), wxS(
"${DNP}" ) ), wxEmptyString );
static SCHEMATIC * LoadSchematic(const wxString &aFileName, bool aSetActive, bool aForceDefaultProject, PROJECT *aProject=nullptr, bool aCalculateConnectivity=true, REPORTER *aRootReporter=nullptr)
int GetFieldNameCol(const wxString &aFieldName) const
void SetCurrentVariant(const wxString &aVariantName)
Set the current variant name for highlighting purposes.
void AddColumn(const wxString &aFieldName, const wxString &aLabel, bool aAddedByUser) override
wxString GetGroupedValue(const DATA_MODEL_ROW< ITEM_TYPE > &aRow, int aCol, const wxString &refDelimiter=wxT(", "), const wxString &refRangeDelimiter=wxT("-"), bool resolveVars=false, bool listMixedValues=false)
std::string GetEeschemaTestDataDir()
Get the configured location of Eeschema test data.
Definition of the SCH_SHEET_PATH and SCH_SHEET_LIST classes for Eeschema.
@ SYMBOL_FILTER_NON_POWER
DATA_MODEL_ROW< SCH_REFERENCE > SYMBOL_FIELDS_TABLE_DATA_MODEL_ROW
BOOST_REQUIRE(intersection.has_value()==c.ExpectedIntersection.has_value())
BOOST_FIXTURE_TEST_CASE(JobVariantDrivesFieldsDataStore, ISSUE24915_FIXTURE)
BOOST_CHECK_EQUAL(result, "25.4")