Skip to content

Commit 20fb0c5

Browse files
committed
Improve async code
1 parent 076d75f commit 20fb0c5

File tree

2 files changed

+5
-4
lines changed

2 files changed

+5
-4
lines changed

Fluid.Tests/IncludeStatementTests.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -656,7 +656,7 @@ public void RenderTag_With_MultipleNamedArguments()
656656
}
657657

658658
[Fact]
659-
public void RenderTag_For_And_NamedArguments()
659+
public async Task RenderTag_For_And_NamedArguments()
660660
{
661661
var fileProvider = new MockFileProvider();
662662
fileProvider.Add("product.liquid", "Product: {{ product.title }}, Tag: {{ tag }} ");
@@ -678,8 +678,8 @@ public void RenderTag_For_And_NamedArguments()
678678

679679
// Check that the For expression evaluates correctly
680680
Assert.IsType<MemberExpression>(renderStmt.For);
681-
var forValue = renderStmt.For.EvaluateAsync(context).GetAwaiter().GetResult();
682-
var items = forValue.EnumerateAsync(context).GetAwaiter().GetResult().ToList();
681+
var forValue = await renderStmt.For.EvaluateAsync(context);
682+
var items = (await forValue.EnumerateAsync(context)).ToList();
683683
Assert.Equal(2, items.Count); // Should have 2 items
684684

685685
// Also check that For is really the "products" variable

Fluid/Values/FluidValueJsonConverter.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,8 @@ public override void Write(Utf8JsonWriter writer, FluidValue value, JsonSerializ
4949
throw new InvalidOperationException("A TemplateContext is required to serialize FluidValue instances. Please wrap the FluidValue in a SerializableFluidValue.");
5050
}
5151
writer.WriteStartArray();
52-
var items = actualValue.EnumerateAsync(context).GetAwaiter().GetResult();
52+
var task = actualValue.EnumerateAsync(context);
53+
var items = task.IsCompletedSuccessfully ? task.Result : task.GetAwaiter().GetResult();
5354
foreach (var item in items)
5455
{
5556
var wrapped = new SerializableFluidValue(item, context);

0 commit comments

Comments
 (0)