Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ namespace Xamarin.Android.Build.Tests
public class AndroidDependenciesTests : BaseTest
{
[Test]
[Ignore ("Flaky test that intermittently fails when downloading the Android SDK/JDK over the network in CI. See: https://github.com/dotnet/android/issues/11973")]
[NonParallelizable] // Do not run environment modifying tests in parallel.
public void InstallAndroidDependenciesTest ([Values ("GoogleV2", "Xamarin")] string manifestType, [Values (AndroidRuntime.CoreCLR, AndroidRuntime.NativeAOT)] AndroidRuntime runtime)
{
Expand Down Expand Up @@ -63,6 +62,7 @@ public void InstallAndroidDependenciesTest ([Values ("GoogleV2", "Xamarin")] str
using (var b = CreateApkBuilder ()) {
b.Verbosity = LoggerVerbosity.Detailed;
b.CleanupAfterSuccessfulBuild = false;
b.ThrowOnBuildFailure = false;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 💡 Testing — This is the correct fix: without it, Builder.Build throws FailedBuildException on the first failed attempt (Builder.cs:414), so the retry loop below could never reach attempts 2–3. One thing to be aware of: this disables throwing for the entire builder, including the final default-target build at line 121. That's still safe because that build is guarded by Assert.IsTrue (b.Build (...), "build should have succeeded."), so a real failure there is still surfaced. No change needed — just confirming the behavior is intentional.

(Rule: Verify retry/error-handling semantics)

string defaultTarget = b.Target;
b.Target = "InstallAndroidDependencies";
b.BuildLogFile = "install-deps.log";
Expand Down
Loading