Exemplo n.º 1
0
        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());
        }
Exemplo n.º 2
0
        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());
        }