Skip to content

Commit dea7ef2

Browse files
committed
code cleanup
1 parent 31a247a commit dea7ef2

28 files changed

Lines changed: 129 additions & 587 deletions

src/TurboHttp.StreamTests/EngineTestBase.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -499,7 +499,7 @@ public Logic(H3EngineFakeConnectionStage stage) : base(stage.Shape)
499499
// Unwrap tagged items (control preface, QPACK encoder, etc.)
500500
OutputStreamType? streamType = null;
501501
var inner = item;
502-
if (item is Http3TaggedItem tagged)
502+
if (item is Http3OutputTaggedItem tagged)
503503
{
504504
streamType = tagged.StreamType;
505505
inner = tagged.Inner;

src/TurboHttp.StreamTests/RFC9114/14_Http30ControlStreamPrefaceStageTests.cs

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,8 @@ public async Task Should_EmitPrefaceFirst_When_FirstPullOccurs()
3636
.RunWith(Sink.Seq<IOutputItem>(), Materializer);
3737

3838
Assert.Equal(2, results.Count);
39-
Assert.IsType<Http3TaggedItem>(results[0]);
40-
Assert.IsNotType<Http3TaggedItem>(results[1]);
39+
Assert.IsType<Http3OutputTaggedItem>(results[0]);
40+
Assert.IsNotType<Http3OutputTaggedItem>(results[1]);
4141
}
4242

4343
[Fact(Timeout = 10_000, DisplayName = "RFC9114-6.2.1-H3CP-002: Preface is tagged as OutputStreamType.Control")]
@@ -49,7 +49,7 @@ public async Task Should_TagPrefaceAsControl_When_Emitted()
4949
.Via(Flow.FromGraph(new Http30ControlStreamPrefaceStage()))
5050
.RunWith(Sink.Seq<IOutputItem>(), Materializer);
5151

52-
var tagged = Assert.IsType<Http3TaggedItem>(results[0]);
52+
var tagged = Assert.IsType<Http3OutputTaggedItem>(results[0]);
5353
Assert.Equal(OutputStreamType.Control, tagged.StreamType);
5454
Assert.IsType<DataItem>(tagged.Inner);
5555
}
@@ -63,7 +63,7 @@ public async Task Should_StartWithStreamType0x00_When_PrefaceEmitted()
6363
.Via(Flow.FromGraph(new Http30ControlStreamPrefaceStage()))
6464
.RunWith(Sink.Seq<IOutputItem>(), Materializer);
6565

66-
var tagged = (Http3TaggedItem)results[0];
66+
var tagged = (Http3OutputTaggedItem)results[0];
6767
var data = (DataItem)tagged.Inner;
6868
var bytes = data.Memory.Memory[..data.Length].ToArray();
6969

@@ -80,7 +80,7 @@ public async Task Should_ContainSettingsFrameType_When_PrefaceEmitted()
8080
.Via(Flow.FromGraph(new Http30ControlStreamPrefaceStage()))
8181
.RunWith(Sink.Seq<IOutputItem>(), Materializer);
8282

83-
var tagged = (Http3TaggedItem)results[0];
83+
var tagged = (Http3OutputTaggedItem)results[0];
8484
var data = (DataItem)tagged.Inner;
8585
var bytes = data.Memory.Memory[..data.Length].ToArray();
8686

@@ -97,7 +97,7 @@ public async Task Should_MatchOpenLocalStreamOutput_When_DefaultSettings()
9797
.Via(Flow.FromGraph(new Http30ControlStreamPrefaceStage()))
9898
.RunWith(Sink.Seq<IOutputItem>(), Materializer);
9999

100-
var tagged = (Http3TaggedItem)results[0];
100+
var tagged = (Http3OutputTaggedItem)results[0];
101101
var data = (DataItem)tagged.Inner;
102102
var actual = data.Memory.Memory[..data.Length].ToArray();
103103

@@ -122,9 +122,9 @@ public async Task Should_EmitPrefaceOnlyOnce_When_MultipleUpstreamItems()
122122
// First item = preface (tagged), then 5 upstream items pass through
123123
Assert.Equal(6, results.Count);
124124

125-
var taggedCount = results.Count(r => r is Http3TaggedItem t && t.StreamType == OutputStreamType.Control);
125+
var taggedCount = results.Count(r => r is Http3OutputTaggedItem t && t.StreamType == OutputStreamType.Control);
126126
Assert.Equal(1, taggedCount);
127-
Assert.IsType<Http3TaggedItem>(results[0]);
127+
Assert.IsType<Http3OutputTaggedItem>(results[0]);
128128
}
129129

130130
[Fact(Timeout = 10_000, DisplayName = "RFC9114-6.2.1-H3CP-007: Subsequent items pass through unchanged")]
@@ -153,7 +153,7 @@ public async Task Should_TerminateCleanly_When_UpstreamFinishes()
153153

154154
// Preface + one passthrough item, then stage completes cleanly
155155
Assert.Equal(2, results.Count);
156-
Assert.IsType<Http3TaggedItem>(results[0]);
156+
Assert.IsType<Http3OutputTaggedItem>(results[0]);
157157
}
158158

159159
[Fact(Timeout = 10_000, DisplayName = "RFC9114-6.2.1-H3CP-009: Custom settings are reflected in preface bytes")]
@@ -168,7 +168,7 @@ public async Task Should_UseCustomSettings_When_Provided()
168168
.Via(Flow.FromGraph(new Http30ControlStreamPrefaceStage(settings)))
169169
.RunWith(Sink.Seq<IOutputItem>(), Materializer);
170170

171-
var tagged = (Http3TaggedItem)results[0];
171+
var tagged = (Http3OutputTaggedItem)results[0];
172172
var data = (DataItem)tagged.Inner;
173173
var actual = data.Memory.Memory[..data.Length].ToArray();
174174

src/TurboHttp.StreamTests/RFC9114/15_Http30StreamDemuxStageTests.cs

Lines changed: 0 additions & 210 deletions
This file was deleted.

src/TurboHttp.StreamTests/RFC9204/Http30QpackEncoderStreamTests.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ public async Task Should_PrependStreamType0x02_When_FirstInstructionEmitted()
111111
var outputs = await outputTask;
112112

113113
Assert.NotEmpty(outputs);
114-
var tagged = Assert.IsType<Http3TaggedItem>(outputs.First());
114+
var tagged = Assert.IsType<Http3OutputTaggedItem>(outputs.First());
115115
Assert.Equal(OutputStreamType.QpackEncoder, tagged.StreamType);
116116

117117
var data = Assert.IsType<DataItem>(tagged.Inner);
@@ -153,7 +153,7 @@ public async Task Should_TagOutputAsQpackEncoder_When_InstructionsEmitted()
153153

154154
Assert.All(outputs, item =>
155155
{
156-
var tagged = Assert.IsType<Http3TaggedItem>(item);
156+
var tagged = Assert.IsType<Http3OutputTaggedItem>(item);
157157
Assert.Equal(OutputStreamType.QpackEncoder, tagged.StreamType);
158158
});
159159
}
@@ -175,7 +175,7 @@ public async Task Should_FilterEmptyInstructions_When_NoEncoderData()
175175

176176
// Only the non-empty instruction should produce output.
177177
Assert.Single(results);
178-
var tagged = Assert.IsType<Http3TaggedItem>(results.First());
178+
var tagged = Assert.IsType<Http3OutputTaggedItem>(results.First());
179179
var data = Assert.IsType<DataItem>(tagged.Inner);
180180
var bytes = data.Memory.Memory[..data.Length].ToArray();
181181

src/TurboHttp.StreamTests/Streams/07_ExtractOptionsStageTests.cs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -47,10 +47,10 @@ private static HttpRequestMessage MakeRequest(string url = "http://example.com/"
4747
var src = b.Add(Source.From(requestList).Concat(Source.Never<HttpRequestMessage>()));
4848
var noReuse = b.Add(Source.Never<IControlItem>());
4949

50-
b.From(src).To(stage.In);
51-
b.From(noReuse).To(stage.InReuse);
52-
b.From(stage.OutSignal).To(Sink.FromSubscriber(probe0));
53-
b.From(stage.OutRequest).To(Sink.FromSubscriber(probe1));
50+
b.From(src).To(stage.Inlet);
51+
b.From(noReuse).To(stage.InletReuse);
52+
b.From(stage.OutletSignal).To(Sink.FromSubscriber(probe0));
53+
b.From(stage.OutletRequest).To(Sink.FromSubscriber(probe1));
5454

5555
return ClosedShape.Instance;
5656
})).Run(Materializer);
@@ -152,10 +152,10 @@ public async Task Should_TerminateCleanly_When_UpstreamFinishes()
152152
var src = b.Add(Source.From(requests)); // completing source — intentional
153153
var noReuse = b.Add(Source.Never<IControlItem>());
154154

155-
b.From(src).To(stage.In);
156-
b.From(noReuse).To(stage.InReuse);
157-
b.From(stage.OutSignal).To(Sink.FromSubscriber(probe0));
158-
b.From(stage.OutRequest).To(Sink.FromSubscriber(probe1));
155+
b.From(src).To(stage.Inlet);
156+
b.From(noReuse).To(stage.InletReuse);
157+
b.From(stage.OutletSignal).To(Sink.FromSubscriber(probe0));
158+
b.From(stage.OutletRequest).To(Sink.FromSubscriber(probe1));
159159

160160
return ClosedShape.Instance;
161161
})).Run(Materializer);

src/TurboHttp.StreamTests/Streams/12_HostKeySubFlowTests.cs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
using Akka;
22
using Akka.Streams.Dsl;
33
using TurboHttp.Internal;
4+
using TurboHttp.Streams.Stages.Internal;
45
using TurboHttp.Streams.Stages.Routing;
56

67
namespace TurboHttp.StreamTests.Streams;
@@ -10,7 +11,7 @@ namespace TurboHttp.StreamTests.Streams;
1011
/// Verifies that requests are partitioned by host key and each subflow completes independently.
1112
/// </summary>
1213
/// <remarks>
13-
/// Stage under test: <see cref="GroupByHostKeyStage{T}"/>.
14+
/// Stage under test: <see cref="GroupByRequestKeyStage{T}"/>.
1415
/// Validates subflow isolation, completion propagation, and back-pressure per host partition.
1516
/// </remarks>
1617
public sealed class HostKeySubFlowTests : StreamTestBase
@@ -28,7 +29,7 @@ private static Flow<HttpRequestMessage, TOut, NotUsed> BuildFlow<TOut>(
2829
SubFlow<TOut, NotUsed, Sink<HttpRequestMessage, NotUsed>>> configure)
2930
{
3031
var subflow = Flow.Create<HttpRequestMessage>()
31-
.GroupByHostKey(RequestEndpoint.FromRequest, maxSubstreams: 16);
32+
.GroupByRequestKey(RequestEndpoint.FromRequest, maxSubstreams: 16);
3233

3334
return (Flow<HttpRequestMessage, TOut, NotUsed>)
3435
configure(subflow).MergeSubstreams();
@@ -58,7 +59,7 @@ public async Task Should_PassAllElementsThrough_When_GroupByHostKeyAndMergeSubst
5859

5960
var flow = (Flow<HttpRequestMessage, HttpRequestMessage, NotUsed>)
6061
Flow.Create<HttpRequestMessage>()
61-
.GroupByHostKey(RequestEndpoint.FromRequest, maxSubstreams: 16)
62+
.GroupByRequestKey(RequestEndpoint.FromRequest, maxSubstreams: 16)
6263
.MergeSubstreams();
6364

6465
var results = await RunAsync(flow, requests);

0 commit comments

Comments
 (0)