Ejemplo n.º 1
0
        public void Cleanup()
        {
            // Note: you should always dispose mock object after using
            // to make it possible for GC to collect it
            Mock <IParameterHelper> paramHelperMoq = (Mock <IParameterHelper>)ScenarioContext.Current["paramHelperMoq"];

            paramHelperMoq.Dispose();
        }
        public void when_stopping_disposed_then_ignores()
        {
            var receiver = new Mock<IMessageReceiver>();
            var serializer = new Mock<ITextSerializer>();
            var processor = new Mock<MessageProcessor>(receiver.Object, serializer.Object) { CallBase = true }.Object;

            processor.Dispose();

            processor.Stop();
        }
        public void when_disposing_then_disposes_receiver_if_disposable()
        {
            var receiver = new Mock<IMessageReceiver>();
            var disposable = receiver.As<IDisposable>();
            var serializer = new Mock<ITextSerializer>();
            var processor = new Mock<MessageProcessor>(receiver.Object, serializer.Object) { CallBase = true }.Object;

            processor.Dispose();

            disposable.Verify(x => x.Dispose());
        }
        public void when_disposing_started_then_stops()
        {
            var receiver = new Mock<IMessageReceiver>();
            var serializer = new Mock<ITextSerializer>();
            var processor = new Mock<MessageProcessor>(receiver.Object, serializer.Object) { CallBase = true }.Object;

            processor.Start();
            processor.Dispose();

            Mock.Get(processor).Verify(x => x.Stop());
        }
Ejemplo n.º 5
0
        public void when_stopping_disposed_then_ignores()
        {
            var receiver   = new Mock <IMessageReceiver>();
            var serializer = new Mock <ITextSerializer>();
            var processor  = new Mock <MessageProcessor>(receiver.Object, serializer.Object)
            {
                CallBase = true
            }.Object;

            processor.Dispose();

            processor.Stop();
        }
        public void when_stopping_disposed_then_throws()
        {
            var receiver   = new Mock <IMessageReceiver>();
            var serializer = new Mock <ISerializer>();
            var processor  = new Mock <MessageProcessor>(receiver.Object, serializer.Object)
            {
                CallBase = true
            }.Object;

            processor.Dispose();

            Assert.Throws <ObjectDisposedException>(() => processor.Stop());
        }
Ejemplo n.º 7
0
        public void when_disposing_then_disposes_receiver_if_disposable()
        {
            var receiver   = new Mock <IMessageReceiver>();
            var disposable = receiver.As <IDisposable>();
            var serializer = new Mock <ITextSerializer>();
            var processor  = new Mock <MessageProcessor>(receiver.Object, serializer.Object)
            {
                CallBase = true
            }.Object;

            processor.Dispose();

            disposable.Verify(x => x.Dispose());
        }
Ejemplo n.º 8
0
        public void when_disposing_started_then_stops()
        {
            var receiver   = new Mock <IMessageReceiver>();
            var serializer = new Mock <ITextSerializer>();
            var processor  = new Mock <MessageProcessor>(receiver.Object, serializer.Object)
            {
                CallBase = true
            }.Object;

            processor.Start();
            processor.Dispose();

            Mock.Get(processor).Verify(x => x.Stop());
        }
Ejemplo n.º 9
0
        public void CannotNegotiateUsingFinishedTransport()
        {
            var transport =
                new Mock <ClientTransportBase>(Mock.Of <IHttpClient>(), "fakeTransport")
            {
                CallBase = true
            }.Object;

            transport.Dispose();

            Assert.Equal(
                Resources.Error_TransportCannotBeReused,
                Assert.Throws <InvalidOperationException>(
                    () => transport.Negotiate(Mock.Of <IConnection>(), "connectionData")).Message);
        }
        public void Format()
        {
            var mockMgr = new Mock<IOutputPortMgr>();
            var mockInPort = new Mock<IOutputPort>();
            var mockEnum = new Mock<IEnumerator<IOutputPort>>();

            using (RecordExpectations recorder = RecorderManager.StartRecording())
            {
                recorder.ExpectAndReturn(mockMgr.Count, 1);
                recorder.ExpectAndReturn(mockMgr.GetEnumerator(), mockEnum);
                recorder.ExpectAndReturn(mockEnum.MoveNext(), true);
                recorder.ExpectAndReturn(mockEnum.Current, mockInPort);
                recorder.ExpectAndReturn(mockInPort.ContentType, BlobType.Network);
                recorder.ExpectAndReturn(mockInPort.OutputStatus, PayLoadStatus.Available);
                recorder.ExpectAndReturn(mockEnum.MoveNext(), false);
                mockEnum.Dispose();
            }

            OutputPortMgrTextFormatter formatter = new OutputPortMgrTextFormatter();
            string result = formatter.Format(mockMgr);
            Assert.NotNull(result);
            MockManager.Verify();
        }
Ejemplo n.º 11
0
        public void CannotNegotiateUsingFinishedTransport()
        {
            var transport =
                new Mock<ClientTransportBase>(Mock.Of<IHttpClient>(), "fakeTransport") { CallBase = true }.Object;

            transport.Dispose();

            Assert.Equal(
                Resources.Error_TransportCannotBeReused,
                Assert.Throws<InvalidOperationException>(
                    () => transport.Negotiate(Mock.Of<IConnection>(), "connectionData")).Message);
        }
Ejemplo n.º 12
0
        /// <summary>
        /// Generates the Open API document.
        /// </summary>
        /// <param name="project">Project path.</param>
        /// <param name="configuration">Copile configuration.</param>
        /// <param name="version">Open API version.</param>
        /// <param name="format">Open API output format.</param>
        /// <param name="output">Output path.</param>
        /// <param name="console">Value indicating whether to render the document on console or not.</param>
        public void Generate(
            [Option('p', Description = "Project path. Default is current directory")] string project  = ".",
            [Option('c', Description = "Configuration. Default is 'Debug'")] string configuration     = "Debug",
            [Option('t', Description = "Target framework. Default is 'netcoreapp2.1'")] string target = "netcoreapp2.1",
            [Option('v', Description = "Open API spec version. Value can be either 'v2' or 'v3'. Default is 'v2'")] OpenApiVersionType version      = OpenApiVersionType.V2,
            [Option('f', Description = "Open API output format. Value can be either 'json' or 'yaml'. Default is 'yaml'")] OpenApiFormatType format = OpenApiFormatType.Json,
            [Option('o', Description = "Generated Open API output location. Default is 'output'")] string output = "output",
            bool console = false)
        {
            var pi = default(ProjectInfo);

            try
            {
                pi = new ProjectInfo(project, configuration, target);
            }
            catch
            {
                return;
            }
#if NET461
            var requestUri = new Uri("http://localhost:7071");
            var req        = new HttpRequestMessage()
            {
                RequestUri = requestUri,
            };
#else
            var req = new Mock <HttpRequest>();
            req.SetupGet(p => p.Scheme).Returns("http");
            req.SetupGet(p => p.Host).Returns(new HostString("localhost", 7071));
#endif
            var filter         = new RouteConstraintFilter();
            var acceptor       = new OpenApiSchemaAcceptor();
            var namingStrategy = new CamelCaseNamingStrategy();
            var collection     = VisitorCollection.CreateInstance();
            var helper         = new DocumentHelper(filter, acceptor);
            var document       = new Document(helper);

            var swagger = default(string);
            try
            {
                swagger = document.InitialiseDocument()
                          .AddMetadata(pi.OpenApiInfo)
#if NET461
                          .AddServer(req, pi.HostJsonHttpSettings.RoutePrefix)
#else
                          .AddServer(req.Object, pi.HostJsonHttpSettings.RoutePrefix)
#endif
                          .AddNamingStrategy(namingStrategy)
                          .AddVisitors(collection)
                          .Build(pi.CompiledDllPath)
                          .RenderAsync(version.ToOpenApiSpecVersion(), format.ToOpenApiFormat())
                          .Result;
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                Console.WriteLine(ex.StackTrace);
#if NET461
                req.Dispose();
#endif
            }
#if NET461
            req.Dispose();
#endif
            if (console)
            {
                Console.WriteLine(swagger);
            }

            var outputpath =
#if NET461
                Path.IsPathRooted(output)
#else
                Path.IsPathFullyQualified(output)
#endif
                ? output
                : $"{pi.CompiledPath}{directorySeparator}{output}";

            if (!Directory.Exists(outputpath))
            {
                Directory.CreateDirectory(outputpath);
            }

            File.WriteAllText($"{outputpath}{directorySeparator}swagger.{format.ToDisplayName()}", swagger, Encoding.UTF8);
        }
Ejemplo n.º 13
0
 public void CleanupGlobalsForTest()
 {
     _serviceProviderMock.Dispose();
     GoogleCloudExtensionPackage.Instance = null;
 }