public static string AssertEstimate(IQSharpEngine engine, string snippetName, params string[] messages) { var channel = new MockChannel(); var estimateMagic = new EstimateMagic(engine.SymbolsResolver); var response = estimateMagic.Execute(snippetName, channel); var result = response.Output as Dictionary <string, double>; PrintResult(response, channel); Assert.AreEqual(ExecuteStatus.Ok, response.Status); Assert.IsNotNull(result); Assert.AreEqual(8, result.Count); CollectionAssert.Contains(result.Keys, "T"); CollectionAssert.Contains(result.Keys, "CNOT"); CollectionAssert.AreEqual(messages.Select(ChannelWithNewLines.Format).ToArray(), channel.msgs.ToArray()); return(response.Output?.ToString()); }
public static async Task <string> AssertEstimate(IQSharpEngine engine, string snippetName, params string[] messages) { var channel = new MockChannel(); var estimateMagic = new EstimateMagic(engine.SymbolsResolver); var response = await estimateMagic.Execute(snippetName, channel); var result = response.Output as DataTable; PrintResult(response, channel); Assert.AreEqual(ExecuteStatus.Ok, response.Status); Assert.IsNotNull(result); Assert.AreEqual(8, result.Rows.Count); var keys = result.Rows.Cast <DataRow>().Select(row => row.ItemArray[0]).ToList(); CollectionAssert.Contains(keys, "T"); CollectionAssert.Contains(keys, "CNOT"); CollectionAssert.AreEqual(messages.Select(ChannelWithNewLines.Format).ToArray(), channel.msgs.ToArray()); return(response.Output?.ToString()); }