49 std::unique_ptr<SCH_SCREEN> screen(
new SCH_SCREEN() );
76 wxArrayString symbolNames;
80 BOOST_CHECK_EQUAL( libBuffer.
GetHash(), 1 );
84 BOOST_CHECK_EQUAL( libBuffer.
GetSymbol( parentSymbol1->
GetName() ),
nullptr );
90 BOOST_CHECK_EQUAL( libBuffer.
GetHash(), 2 );
93 BOOST_CHECK_EQUAL( symbolNames.GetCount(), 1 );
94 BOOST_CHECK_EQUAL( symbolNames[0], parentSymbol1->
GetName() );
98 BOOST_CHECK_EQUAL( symbolNames.GetCount(), 1 );
99 BOOST_CHECK_EQUAL( symbolNames[0], parentSymbol1->
GetName() );
103 BOOST_CHECK_EQUAL( symbolNames.GetCount(), 0 );
106 childSymbol1->
SetParent( parentSymbol1 );
111 BOOST_CHECK_EQUAL( libBuffer.
GetHash(), 3 );
115 BOOST_CHECK_EQUAL( symbolNames.GetCount(), 2 );
116 BOOST_CHECK_EQUAL( symbolNames[0], parentSymbol1->
GetName() );
117 BOOST_CHECK_EQUAL( symbolNames[1], childSymbol1->
GetName() );
121 BOOST_CHECK_EQUAL( symbolNames.GetCount(), 1 );
122 BOOST_CHECK_EQUAL( symbolNames[0], childSymbol1->
GetName() );
127 BOOST_CHECK_EQUAL( symbolNames[0], childSymbol1->
GetName() );
129 std::shared_ptr<SYMBOL_BUFFER> buf = libBuffer.
GetBuffer( parentSymbol1->
GetName() );
133 BOOST_CHECK_EQUAL( libBuffer.
GetHash(), 4 );
141BOOST_AUTO_TEST_SUITE_END()
void SetContentModified(bool aModified=true)
size_t GetDerivedSymbolNames(const wxString &aSymbolName, wxArrayString &aList)
Fetch all of the symbols derived from a aSymbolName into aList.
bool DeleteBuffer(std::shared_ptr< SYMBOL_BUFFER > aSymbolBuf)
bool CreateBuffer(LIB_SYMBOL *aCopy, SCH_SCREEN *aScreen)
Update the buffered symbol with the contents of aCopy.
void GetSymbolNames(wxArrayString &aSymbolNames, SYMBOL_NAME_FILTER aFilter=SYMBOL_NAME_FILTER::ALL)
Fetch a list of root symbols names from the library buffer.
bool UpdateBuffer(std::shared_ptr< SYMBOL_BUFFER > aSymbolBuf, LIB_SYMBOL *aCopy)
const std::deque< std::shared_ptr< SYMBOL_BUFFER > > & GetBuffers() const
std::shared_ptr< SYMBOL_BUFFER > GetBuffer(const wxString &aAlias) const
Return all buffered symbols.
LIB_SYMBOL * GetSymbol(const wxString &aAlias) const
Create a new buffer to store a symbol. LIB_BUFFER takes ownership of aCopy.
int GetHash() const
Return the working copy of a LIB_SYMBOL root object with specified alias.
bool HasDerivedSymbols(const wxString &aParentName) const
Check to see any symbols in the buffer are derived from a parent named aParentName.
Define a library symbol object.
SCH_FIELD & GetValueField() const
Return reference to the value field.
void SetParent(LIB_SYMBOL *aParent=nullptr)
wxString GetName() const override
SCH_FIELD & GetDescriptionField() const
Return reference to the description field.
void SetText(const wxString &aText) override
Store a working copy of a library.
SCH_SCREEN * GetScreen() const
LIB_SYMBOL * GetOriginal() const
void SetOriginal(LIB_SYMBOL *aSymbol)
LIB_SYMBOL * GetSymbol() const
SYMBOL_LIBRARY_MANAGER_TEST_FIXTURE()
BOOST_CHECK(box.ClosestPointTo(VECTOR2D(0, 0))==VECTOR2D(1, 2))
Test suite for KiCad math code.
BOOST_AUTO_TEST_CASE(SymbolBuffer)
Test the SYMBOL_BUFFER object.