From 76c22c50d848a14f7058b50c15aa28eb8f03bc7a Mon Sep 17 00:00:00 2001 From: Levi Date: Fri, 25 Sep 2026 16:36:27 +0800 Subject: [PATCH] test: align beta2 integration checks --- .../http/fetcher_checksum_retry_test.go | 14 ++++++++++++ pkg/download/extension.go | 22 +++++++++---------- ui/flutter/test/updater_test.dart | 2 +- ui/flutter/test/widget_test.dart | 2 +- 4 files changed, 26 insertions(+), 14 deletions(-) diff --git a/internal/protocol/http/fetcher_checksum_retry_test.go b/internal/protocol/http/fetcher_checksum_retry_test.go index a7d3573a..537bc8c7 100644 --- a/internal/protocol/http/fetcher_checksum_retry_test.go +++ b/internal/protocol/http/fetcher_checksum_retry_test.go @@ -10,6 +10,7 @@ import ( "strings" "sync/atomic" "testing" + "time" "github.com/GopeedLab/gopeed/pkg/base" "github.com/GopeedLab/gopeed/pkg/protocol/http" @@ -63,6 +64,19 @@ func TestFetcher_ChecksumMismatch_Retry(t *testing.T) { if err := f.Resolve(&base.Request{URL: server.URL + "/retry_test.txt"}, opts); err != nil { t.Fatalf("Resolve error: %v", err) } + // Ensure the reusable resolve response has been fully prefetched so the + // first attempt deterministically verifies the corrupt initial payload. + deadline := time.NewTimer(5 * time.Second) + defer deadline.Stop() + ticker := time.NewTicker(10 * time.Millisecond) + defer ticker.Stop() + for !f.prefetchDone.Load() { + select { + case <-deadline.C: + t.Fatal("timed out waiting for checksum test prefetch") + case <-ticker.C: + } + } if err := f.Start(); err != nil { t.Fatalf("Start error: %v", err) } diff --git a/pkg/download/extension.go b/pkg/download/extension.go index 34128e52..29993cb5 100644 --- a/pkg/download/extension.go +++ b/pkg/download/extension.go @@ -654,22 +654,20 @@ func (h InstanceEvents) OnDone(fn engine.JSFunction) { } type ExtensionInfo struct { - HostVersion string `json:"hostVersion"` - Identity string `json:"identity"` - Name string `json:"name"` - Author string `json:"author"` - Title string `json:"title"` - Version string `json:"version"` + Identity string `json:"identity"` + Name string `json:"name"` + Author string `json:"author"` + Title string `json:"title"` + Version string `json:"version"` } func NewExtensionInfo(ext *Extension) *ExtensionInfo { return &ExtensionInfo{ - HostVersion: base.Version, - Identity: ext.buildIdentity(), - Name: ext.Name, - Author: ext.Author, - Title: ext.Title, - Version: ext.Version, + Identity: ext.buildIdentity(), + Name: ext.Name, + Author: ext.Author, + Title: ext.Title, + Version: ext.Version, } } diff --git a/ui/flutter/test/updater_test.dart b/ui/flutter/test/updater_test.dart index 6ea25fad..83a0daa3 100644 --- a/ui/flutter/test/updater_test.dart +++ b/ui/flutter/test/updater_test.dart @@ -194,7 +194,7 @@ void main() { expect(find.text('Faster downloads'), findsOneWidget); expect(find.text('下载更快'), findsNothing); expect(find.text('Later'), findsOneWidget); - expect(find.text('Update Now'), findsOneWidget); + expect(find.text('Update'), findsOneWidget); expect(find.text("What's New"), findsNothing); final versionText = tester.widget(find.text('2.0.0-beta.1 → 2.0.0-beta.2')); expect(versionText.style?.decoration, TextDecoration.none); diff --git a/ui/flutter/test/widget_test.dart b/ui/flutter/test/widget_test.dart index f4064cdd..c8c6485c 100644 --- a/ui/flutter/test/widget_test.dart +++ b/ui/flutter/test/widget_test.dart @@ -2651,7 +2651,7 @@ void main() { await tester.tap(find.byKey(const ValueKey('settings-language-select'))); await tester.pumpAndSettle(); expect(find.text('English'), findsOneWidget); - expect(SettingsLanguageSelect.supportedValues, hasLength(22)); + expect(SettingsLanguageSelect.supportedValues, hasLength(23)); expect(SettingsLanguageSelect.supportedValues, containsAll(['az', 'zh', 'zh_TW', 'pt'])); expect(SettingsLanguageSelect.supportedValues, isNot(contains('zh_CN'))); expect(SettingsLanguageSelect.supportedValues, isNot(contains('pt_BR')));