KiCad PCB EDA Suite
Loading...
Searching...
No Matches
test_job_export_pcb_3d.cpp File Reference
#include <qa_utils/wx_utils/unit_test_utils.h>
#include <base_units.h>
#include <jobs/job_export_pcb_3d.h>
#include <jobs/jobset.h>
#include <kiid.h>
#include <richio.h>
#include <filesystem>
#include <system_error>
#include <utility>
#include <vector>

Go to the source code of this file.

Classes

class  JOB_EXPORT_PCB_3D_TEST_FIXTURE
 The 3D model export job settings must survive a real save/load cycle through a .kicad_jobset on disk. More...
 

Functions

static std::vector< std::pair< const char *, bool * > > boolSettings (JOB_EXPORT_PCB_3D &aJob)
 Every boolean setting of the job, so that adding a field without a JSON mapping fails the round trip below instead of silently resetting itself on the user's next reload.
 
 BOOST_AUTO_TEST_CASE (FiltersSurviveDiskRoundTrip)
 The component filter and the net filter are the two fields called out in the issue.
 
 BOOST_AUTO_TEST_CASE (BooleanSettingsSurviveDiskRoundTrip)
 
 BOOST_AUTO_TEST_CASE (ValueSettingsSurviveDiskRoundTrip)
 The remaining non-boolean settings, which the table above cannot flip.
 

Function Documentation

◆ boolSettings()

◆ BOOST_AUTO_TEST_CASE() [1/3]

BOOST_AUTO_TEST_CASE ( BooleanSettingsSurviveDiskRoundTrip )

◆ BOOST_AUTO_TEST_CASE() [2/3]

BOOST_AUTO_TEST_CASE ( FiltersSurviveDiskRoundTrip )

The component filter and the net filter are the two fields called out in the issue.

Neither was written to the jobset, so the reporter's second job carries no filter at all.

Definition at line 126 of file test_job_export_pcb_3d.cpp.

References BOOST_AUTO_TEST_CASE(), BOOST_CHECK_EQUAL(), BOOST_REQUIRE(), jobset, JOB_EXPORT_PCB_3D::m_3dparams, EXPORTER_STEP_PARAMS::m_ComponentFilter, and EXPORTER_STEP_PARAMS::m_NetFilter.

◆ BOOST_AUTO_TEST_CASE() [3/3]