elsa-core/test/unit/Elsa.Http.UnitTests/ShellFeatures/HttpFeatureTests.cs
Sipke Schoorstra cec3281a20
[codex] Harden workflow JSON type resolution (#7499)
* Harden workflow JSON type resolution

* Harden workflow type alias serialization

* Register JSON island type aliases

* Fix workflow JSON aliases for runtime types

* Register CLR workflow type aliases at startup

* Register safe workflow serialization aliases

* Use registered workflow type aliases in serializers

* Restore trusted legacy workflow JSON aliases

* Share runtime workflow type alias registration

* Address workflow JSON review follow-ups

* Address workflow JSON review follow-ups

* Address workflow JSON review edge cases

* Address workflow JSON converter review feedback

* Register workflow JSON types for HTTP and JavaScript failures

* Address secure type serialization review comments

* Address deserialization review feedback

* Address workflow serialization review comments

* Address workflow type review feedback

* Tighten workflow type hardening fixes

* Avoid workflow alias string type resolution

* Address workflow type alias review feedback

* Stabilize publish event payload assertion

* Stabilize bulk dispatch component test

* Make workflow dictionary aliases idempotent

* Declare workflow runtime feature dependency

* Assert trigger payload alias serialization

* Import workflow helper contracts

* Avoid duplicate CLR workflow materialization

* Normalize workflow factory aliases
2026-05-22 15:25:49 +02:00

30 lines
1 KiB
C#

using Elsa.Expressions.Options;
using Elsa.Expressions.Services;
using Elsa.Http.Bookmarks;
using Elsa.Http.ShellFeatures;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Options;
namespace Elsa.Http.UnitTests.ShellFeatures;
public class HttpFeatureTests
{
[Fact]
public void ConfigureServices_RegistersHttpTypeAliases()
{
var services = new ServiceCollection();
var feature = new HttpFeature();
feature.ConfigureServices(services);
using var serviceProvider = services.BuildServiceProvider();
var expressionOptions = serviceProvider.GetRequiredService<IOptions<ExpressionOptions>>();
var registry = new WellKnownTypeRegistry(expressionOptions);
Assert.True(registry.TryGetType(nameof(HttpEndpointBookmarkPayload), out var type));
Assert.Equal(typeof(HttpEndpointBookmarkPayload), type);
Assert.True(registry.TryGetType(nameof(HttpRequestException), out var exceptionType));
Assert.Equal(typeof(HttpRequestException), exceptionType);
}
}