/// <summary> /// Orchestrator function that runs a CNCF Serverless workflow. /// </summary> public static Task <JToken> DurableWorkflowRunner(IDurableOrchestrationContext context) { var args = context.GetInput <StartWorkflowArgs>(); var host = new DurableFunctionsHost(context, args.TelemetryUri); return(StateMachineRunner.RunAsync(args.Definition, host, args.Input, args.Actions)); }
public async Task HelloWorld() { var definition = File.ReadAllText("ExampleWorkflows//helloworld.json"); var workflow = JsonConvert.DeserializeObject <StateMachine>(definition); var json = await StateMachineRunner.RunAsync(workflow, TheHost); Assert.IsNotNull(json); Assert.AreEqual(JTokenType.Object, json.Type); Assert.IsTrue(((JObject)json).ContainsKey("result")); Assert.AreEqual("Hello World!", json["result"].Value <string>()); }