LinuxSuRen / LinuxSuRen/api-testing

[bug] Extension Download Test Failures on darwin_arm64

Aperta
#828 0 commenti 1 reazione 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

bug
Lingua principale
Go
Stelle
369
Fork
67
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Extension Download Test Failures on darwin_arm64

Description

The extension download functionality tests are failing when running make test on macOS with ARM64 architecture. The tests fail to find architecture-specific binaries in the mock Docker registry.

Error Details

=== FAIL: TestExtensionCmd/normal (0.01s)
Error: not found atest-store-git_darwin_arm64/atest-store-git from http://127.0.0.1:55323/v2/linuxsuren/atest-ext-store-git/manifests/0.0.2
Error: not found atest-store-orm_darwin_arm64/atest-store-orm from http://127.0.0.1:55323/v2/linuxsuren/atest-ext-store-orm/manifests/0.0.2

Environment

  • OS: macOS (Darwin 25.0.0)
  • Architecture: ARM64 (Apple Silicon)
  • Test: TestExtensionCmd in cmd/extension_test.go
  • Mock Registry: 127.0.0.1:55323

Root Cause Analysis

  1. Architecture-Specific Binary Missing: The test expects darwin_arm64 binaries but the mock Docker registry only contains limited test data
  2. Mock Registry Incomplete: The simulated registry manifests don't include all required architecture variants
  3. Platform Detection: The extension system correctly detects darwin_arm64 but can't find matching binaries

Impact

  • Extension installation tests fail on ARM64 macOS systems
  • Core API testing functionality remains unaffected
  • CI/CD might fail on ARM64 runners

Reproduction Steps

  1. Run make test on macOS with ARM64 architecture
  2. Observe TestExtensionCmd/normal test failure
  3. Check mock registry logs for missing manifest requests

Suggested Solutions

  1. Expand Mock Registry Data: Add darwin_arm64 binaries to test fixtures
  2. Platform Fallback Logic: Implement fallback to linux_amd64 for testing
  3. Skip Architecture-Specific Tests: Skip extension tests on unsupported platforms
  4. Mock Registry Enhancement: Generate complete manifest data for all supported architectures

Files Involved

  • cmd/extension_test.go:66 - Test assertion location
  • Mock registry configuration and test data
  • Extension download and platform detection logic

Priority

Low - This affects testing infrastructure but not core functionality. Extension system works in production environments with proper registries.

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia da cmd/extension_test.go:66 ed esegui TestExtensionCmd, oppure riproduci il problema con make test su darwin_arm64. Poi esamina la configurazione del registro mock e i dati di test alla ricerca dei binari specifici per l’architettura mancanti e confronta i manifest richiesti. Il lavoro è completato quando i test per il download dell’estensione passano su ARM64 macOS senza influire sul comportamento esistente dei test.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
go
Ambito
testing-qa
Tipo di issue
Bug
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
42/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.