Skip to content

iOS runtime tests should use just-run xharness command instead of run #95060

@akoeplinger

Description

@akoeplinger

I recently noticed that we're using the xharness apple run command to run iOS runtime tests when building on Helix:

string output = lastLine.Replace("apple test", "apple run").Replace("--signal-app-end", $"--expected-exit-code=100 --set-env=MONO_APPLE_APP_ENTRY_POINT_LIB_NAME={value} --set-env=MONO_APPLE_APP_ASSEMBLY_LOAD_PREFIX={value.Split('/')[0]}") + "&& echo \"Test passed\" || { echo \"Test failed\"; exit 1; }";

This is different to how we're doing it locally and what is supposed to happen, i.e. using apple just-run:

$__Command $HARNESS_RUNNER apple just-run %5c


The result is that we're installing the app over and over again for each run of a test assembly instead of just once at the beginning which takes a lot of time.

The expected workflow is

  1. apple install
  2. apple just-run for each test assembly
  3. apple uninstall.

The install/uninstall part was handled by https://github.com/dotnet/runtime/blob/main/src/tests/Common/Coreclr.TestWrapper/MobileAppHandler.cs originally when using the runtime tests infrastructure.

Metadata

Metadata

Assignees

Labels

area-Infrastructure-monoin-prThere is an active PR which will close this issue when it is mergedos-iosApple iOS

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions