364 testPart.
SetName(
"tart_name" );
365 BOOST_CHECK( m_part_no_data.Compare( testPart ) < 0 );
366 testPart.
SetName(
"cart_name" );
367 BOOST_CHECK( m_part_no_data.Compare( testPart ) > 0 );
368 testPart.
SetName(
"part_name" );
374 BOOST_CHECK( m_part_no_data.Compare( testPart ) < 0 );
375 id.SetLibItemName(
"cart_name" );
377 BOOST_CHECK( m_part_no_data.Compare( testPart ) > 0 );
378 id.SetLibItemName(
"part_name" );
383 BOOST_CHECK( m_part_no_data.Compare( testPart ) < 0 );
385 m_part_no_data.SetUnitCount( 2,
true );
386 BOOST_CHECK( m_part_no_data.Compare( testPart ) > 0 );
387 m_part_no_data.SetUnitCount( 1,
true );
391 BOOST_CHECK( m_part_no_data.Compare( testPart ) < 0 );
393 m_part_no_data.SetGlobalPower();
394 BOOST_CHECK( m_part_no_data.Compare( testPart ) > 0 );
395 m_part_no_data.SetNormal();
401 m_part_no_data.RemoveDrawItem( &m_part_no_data.GetDrawItems()[
SCH_SHAPE_T].front() );
406 m_part_no_data.RemoveDrawItem( &m_part_no_data.GetDrawItems()[
SCH_SHAPE_T].front() );
412 m_part_no_data.RemoveDrawItem( &m_part_no_data.GetDrawItems()[
SCH_SHAPE_T].front() );
414 m_part_no_data.AddDrawItem(
new SCH_PIN( &m_part_no_data ) );
416 m_part_no_data.RemoveDrawItem( &m_part_no_data.GetDrawItems()[
SCH_PIN_T].front() );
419 wxArrayString footPrintFilters;
420 BOOST_CHECK( m_part_no_data.GetFPFilters() == footPrintFilters );
421 footPrintFilters.Add(
"b" );
424 m_part_no_data.SetFPFilters( footPrintFilters );
425 footPrintFilters.Clear();
428 footPrintFilters.Clear();
429 m_part_no_data.SetFPFilters( footPrintFilters );
433 m_part_no_data.SetDescription(
"b" );
436 m_part_no_data.SetDescription(
"a" );
438 m_part_no_data.SetDescription(
"c" );
440 m_part_no_data.SetDescription( wxEmptyString );
444 m_part_no_data.SetKeyWords(
"b" );
447 m_part_no_data.SetKeyWords(
"a" );
449 m_part_no_data.SetKeyWords(
"c" );
451 m_part_no_data.SetKeyWords( wxEmptyString );
465 m_part_no_data.LockUnits(
true );
467 m_part_no_data.LockUnits(
false );
473 m_part_no_data.SetExcludedFromBOM(
true );
475 m_part_no_data.SetExcludedFromBOM(
false );
481 m_part_no_data.SetExcludedFromBoard(
true );
483 m_part_no_data.SetExcludedFromBoard(
false );
489 m_part_no_data.SetExcludedFromPosFiles(
true );
491 m_part_no_data.SetExcludedFromPosFiles(
false );
494 m_part_no_data.SetShowPinNames(
false );
496 m_part_no_data.SetShowPinNames(
true );
502 m_part_no_data.SetShowPinNumbers(
false );
504 m_part_no_data.SetShowPinNumbers(
true );
523 BOOST_CHECK( m_part_no_data.GetUnitDrawItems( 1, 1 ).size() == 0 );
527 m_part_no_data.AddDrawItem(
pin1 );
528 BOOST_CHECK( m_part_no_data.GetUnitDrawItems( 0, 0 ).size() == 1 );
532 BOOST_CHECK( m_part_no_data.GetUnitDrawItems( 1, 0 ).size() == 1 );
535 pin1->SetBodyStyle( 1 );
536 BOOST_CHECK( m_part_no_data.GetUnitDrawItems( 1, 1 ).size() == 1 );
541 m_part_no_data.SetUnitCount( 2,
true );
545 m_part_no_data.AddDrawItem( pin2 );
546 BOOST_CHECK( m_part_no_data.GetUnitDrawItems( 2, 2 ).size() == 1 );
549 pin1->SetBodyStyle( 0 );
550 BOOST_CHECK( m_part_no_data.GetUnitDrawItems( 1, 1 ).size() == 0 );
551 BOOST_CHECK( m_part_no_data.GetUnitDrawItems( 2, 1 ).size() == 1 );
553 m_part_no_data.RemoveDrawItem( pin2 );
554 m_part_no_data.RemoveDrawItem(
pin1 );
555 m_part_no_data.RemoveDrawItem( &*m_part_no_data.GetDrawItems().begin() );
584 std::unique_ptr<LIB_SYMBOL> parent = std::make_unique<LIB_SYMBOL>(
"parent" );
585 BOOST_CHECK( parent->IsRoot() );
588 std::unique_ptr<LIB_SYMBOL> ref = std::make_unique<LIB_SYMBOL>( *parent );
590 std::unique_ptr<LIB_SYMBOL> child = std::make_unique<LIB_SYMBOL>(
"child", parent.get() );
591 BOOST_CHECK( child->IsDerived() );
594 std::unique_ptr<LIB_SYMBOL> grandChild = std::make_unique<LIB_SYMBOL>(
"grandchild", child.get() );
595 BOOST_CHECK( grandChild->IsDerived() );
598 BOOST_CHECK( parent->GetRootSymbol().get() == parent.get() );
599 BOOST_CHECK( child->GetRootSymbol().get() == parent.get() );
600 BOOST_CHECK( grandChild->GetRootSymbol().get() == parent.get() );
602 std::shared_ptr<LIB_SYMBOL> parentRef = child->GetParent().lock();
603 BOOST_CHECK( parentRef );
604 BOOST_CHECK( parentRef == parent->SharedPtr() );
607 std::shared_ptr<LIB_SYMBOL> childRef = grandChild->GetParent().lock();
608 BOOST_CHECK( childRef );
609 BOOST_CHECK( childRef == child->SharedPtr() );
613 parent->SetUnitCount( 4,
true );
615 parent->SetUnitCount( 1,
true );
620 BOOST_CHECK( *parent == *ref );
622 ref->SetName(
"child" );
625 child->AddField( field );
630 ref->AddField( field );
633 BOOST_CHECK( *ref == *child->Flatten() );
635 ref->SetName(
"grandchild" );
638 grandChild->AddField( field );
643 ref->AddField( field );
646 BOOST_CHECK( *ref == *grandChild->Flatten() );
649 "https://kicad/resistors.pdf" );