Skip to content

Drop SixLabors.ImageSharp; use SkiaSharp in UI tests#14

Merged
vpapenko merged 1 commit into
mainfrom
fix/drop-imagesharp
May 23, 2026
Merged

Drop SixLabors.ImageSharp; use SkiaSharp in UI tests#14
vpapenko merged 1 commit into
mainfrom
fix/drop-imagesharp

Conversation

@vpapenko

Copy link
Copy Markdown
Owner

Problem. SixLabors.ImageSharp 4.x switched to a commercial-only license, so PR #10 (Appium.WebDriver + 4 other test-stack bumps from Dependabot) fails its build with error : No Six Labors license found.ImageSharp was introduced only in the MAUI port (the original Xamarin lib never used it, and the picker library itself doesn't depend on it) — purely as a screenshot read/sample helper for the UI tests.Fix. Replace ImageSharp with SkiaSharp, which the picker library already ships, so no new transitive dependency.A thin ColorPicker.UITests/Infrastructure/PixelImage.cs wraps SKBitmap and exposes exactly the surface the tests use:- Width, Height- indexer this[int x, int y] -> Pixel- Load(byte[]) / Load(string path)- Save(string path) (PNG)- Crop(x, y, w, h)The Pixel record deliberately keeps R/G/B/A (not Red/Green/Blue/Alpha) so every existing pixel-sampling test reads identically.Also drops SixLabors.ImageSharp from the dependabot test-stack group.Validation. dotnet build ColorPicker.UITests -c Release is clean (0 errors). Full CI / UI Tests / Consumer Smoke will exercise the rest.

ImageSharp 4.x went commercial-license-only, blocking PR #10's Appium.WebDriver bump. The picker library already depends on SkiaSharp, so the UI tests can reuse it for the (load PNG / sample pixels / crop / save PNG) surface they actually need.

- New ColorPicker.UITests/Infrastructure/PixelImage.cs: thin SKBitmap wrapper exposing Width/Height, this[x,y], Load(bytes|path), Save(path), Crop(x,y,w,h). Pixel(R,G,B,A) record keeps R/G/B/A field names so call sites are unchanged.

- Csproj: SixLabors.ImageSharp 3.1.5 -> SkiaSharp 2.88.8 (matches the library's pinned version).

- All 11 consumer files in Infrastructure/, PageObjects/ and Tests/ migrated. Pure type/method renames, no behaviour change.

- dependabot.yml: drop SixLabors.ImageSharp from the test-stack group.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@vpapenko vpapenko merged commit 98c092e into main May 23, 2026
5 checks passed
@vpapenko vpapenko deleted the fix/drop-imagesharp branch May 23, 2026 09:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant