ES Build and Testing - LIHACHTETAN/ClassicUO-BadNewbie-BasicIDE GitHub Wiki

Compilación y pruebas — Español

Home · BASIC · UO API · A–Z · Examples · Languages

Requisitos para compilar

  • Windows x64 y PowerShell de 64 bits;
  • .NET SDK fijado por global.json o un parche compatible de la misma feature band;
  • caché NuGet disponible o red para restaurar paquetes;
  • Node.js y npm si se recompila Eclipse Theia;
  • espacio libre suficiente para NativeAOT y ambas ediciones.

Comprobar los proyectos .NET

Desde la raíz del código Full:

dotnet --version
dotnet restore .\ClassicUO.sln -p:NuGetAudit=false
dotnet test .\tests\ClassicUO.UnitTests\ClassicUO.UnitTests.csproj -c Release
dotnet test .\external\InjectionScript\src\InjectionScript.Tests\InjectionScript.Tests.csproj -c Release
dotnet test .\external\InjectionScript\src\InjectionScript.Lsp.Tests\InjectionScript.Lsp.Tests.csproj -c Release

El SDK debe respetar global.json. Una compilación Full correcta no reemplaza la compilación y pruebas independientes de los fuentes Without Basic.

Recompilar Basic IDE

La aplicación Theia está en external\YokoTheia:

cd .\external\YokoTheia
npm install
npm run build

No cambie el lockfile ni las dependencias Theia sin repetir toda la regresión de la IDE.

NativeAOT

El cliente Windows distribuible se verifica como NativeAOT x64. Una prueba gráfica necesita datos locales de Ultima Online; estos datos no deben incluirse en el repositorio ni en la release.

Pruebas obligatorias

  • unit tests de ClassicUO Full;
  • unit tests de ClassicUO Without Basic;
  • tests de InjectionScript Runtime;
  • tests LSP/IDE;
  • compilación NativeAOT de ambos clientes sin errores;
  • auditoría de paridad API sin diferencias;
  • native payload probes para ambas ediciones;
  • verificación del archivo extraído en una carpeta limpia.

La regresión funcional también debe cubrir selección de AutoLoad por personaje, Basic Auto Load, Basic Example, guardado de archivos, indexación completa sin scroll, Run/Debug/Pause/Continue/Step/Stop, scripts paralelos, colores de estado, localización y ausencia de Basic en la edición separada.

Auditoría API

Missing from Manual: 0
Not registered in Runtime: 0
Invalid signatures: 0
Duplicate entries: 0
Invalid Basic Script examples: 0

Verificar el archivo de publicación

  1. Cree el ZIP desde una carpeta staging limpia.
  2. Extráigalo en una nueva carpeta temporal.
  3. Compare el árbol y SHA-256 de cada archivo con staging.
  4. Repita los native payload probes de client y client-without-yoko sobre el contenido extraído.
  5. Publique por separado la suma SHA-256 del ZIP.

Las pruebas automáticas no sustituyen una conexión a un servidor real. Los gumps del servidor, extensiones packet específicas del shard, resultado visual y funciones dependientes de los datos de juego también requieren prueba interactiva.