Skip to content

tests: add teensy30 regression coverage for local lib/FastLED shadowing bundled framework FastLED #195

@zackees

Description

@zackees

Problem

We just fixed a Teensy 3.0 regression where fbuild selected the bundled Teensy framework libraries/FastLED even when the project already had a local lib/FastLED.

That produced duplicate FastLED builds and linker failures in the FastLED repo on teensy30:

  • project-local copy: lib/FastLED/...
  • bundled framework copy: framework-arduinoteensy/.../libraries/FastLED/...

The symptom was a long series of multiple-definition errors for CFastLED, FastLED, power_mgt, noise, palette symbols, etc.

What to add

Please add dedicated teensy30 regression coverage for this shadowing case in the Teensy test suite.

Suggested shape:

  • fixture based on tests/platform/teensy30
  • include a project-local lib/FastLED/ tree
  • build a sketch that includes <FastLED.h>
  • assert that the bundled Teensy framework FastLED is not selected/compiled when the local library exists

Good targets

Either of these is fine:

  • crates/fbuild-build/src/teensy/orchestrator.rs unit coverage for framework-library selection
  • crates/fbuild-build/tests/teensy_build.rs ignored integration coverage using a teensy30 fixture

The important thing is that a future regression would fail specifically on the Teensy 3.0 path, not just in downstream FastLED CI.

Why this matters

teensy30 already has a fixture under tests/platform/teensy30, but the current Teensy integration tests are centered on teensy41, so this exact 3.0 shadowing path can regress without an obvious test failure inside fbuild itself.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingpriority: p1Important follow-up after p0 foundations

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions