public void ShouldProcessRequestWithDeleteStatus()
        {
            var mockAttributesLoader = new Mock <IAttributesLoader>();

            mockAttributesLoader.Setup(x => x.GetRemovedAttributes()).Returns(new List <XAttribute>());
            var          loader  = new StaticLoader(mockAttributesLoader.Object);
            const string content = "using Gauge.CSharp.Lib.Attributes;\n" +
                                   "namespace foobar\n" +
                                   "{\n" +
                                   "    public class FooBar\n" +
                                   "    {\n" +
                                   "        [Step(\"goodbye\",\"adieu\", \"sayonara\")]\n" +
                                   "        public void farewell()\n" +
                                   "        {\n" +
                                   "        }\n" +
                                   "    }\n" +
                                   "}\n";

            loader.LoadStepsFromText(content, "Foo.cs");

            var processor = new CacheFileProcessor(loader);
            var request   = new CacheFileRequest
            {
                FilePath = "Foo.cs",
                Status   = CacheFileRequest.Types.FileStatus.Deleted
            };

            Assert.True(loader.GetStepRegistry().ContainsStep("goodbye"));

            processor.Process(request);

            Assert.False(loader.GetStepRegistry().ContainsStep("goodbye"));
        }
Beispiel #2
0
        public void ShouldProcessMessage()
        {
            var loader = new StaticLoader();

            var processor = new CacheFileProcessor(loader);
            var request   = new Message
            {
                CacheFileRequest = new CacheFileRequest
                {
                    Content = "using Gauge.CSharp.Lib.Attributes;\n" +
                              "namespace foobar\n" +
                              "{\n" +
                              "    public class FooBar\n" +
                              "    {\n" +
                              "        [Step(\"goodbye\",\"adieu\", \"sayonara\")]\n" +
                              "        public void farewell()\n" +
                              "        {\n" +
                              "        }\n" +
                              "    }\n" +
                              "}\n",
                    FilePath = "Foo.cs",
                    Status   = CacheFileRequest.Types.FileStatus.Opened
                }
            };

            processor.Process(request);

            Assert.True(loader.GetStepRegistry().ContainsStep("goodbye"));
        }
 private void InitializeMessageProcessors()
 {
     this.stepValidateRequestProcessor           = new StepValidationProcessor(_stepRegistry);
     this.stepNameRequestProcessor               = new StepNameProcessor(_stepRegistry);
     this.refactorRequestProcessor               = new RefactorProcessor(_stepRegistry);
     this.cacheFileRequestProcessor              = new CacheFileProcessor(_loader);
     this.stubImplementationCodeRequestProcessor = new StubImplementationCodeProcessor();
     this.stepPositionsRequestProcessor          = new StepPositionsProcessor(_stepRegistry);
     this.stepNamesRequestProcessor              = new StepNamesProcessor(_stepRegistry);
 }
        public void ShouldProcessRequestWithDeleteStatus()
        {
            var mockLoader = new Mock <IStaticLoader>();

            mockLoader.Setup(x => x.LoadImplementations());
            mockLoader.Setup(x => x.RemoveSteps(fileName)).Verifiable();
            var processor = new CacheFileProcessor(mockLoader.Object);
            var request   = new CacheFileRequest
            {
                FilePath = fileName,
                Status   = CacheFileRequest.Types.FileStatus.Deleted
            };

            processor.Process(request);

            mockLoader.Verify();
            mockLoader.VerifyNoOtherCalls();
        }
        public void ShouldProcessMessage()
        {
            var mockLoader = new Mock <IStaticLoader>();

            mockLoader.Setup(x => x.LoadImplementations());
            mockLoader.Setup(x => x.ReloadSteps(content, fileName)).Verifiable();
            var processor = new CacheFileProcessor(mockLoader.Object);
            var request   = new CacheFileRequest
            {
                Content  = content,
                FilePath = fileName,
                Status   = CacheFileRequest.Types.FileStatus.Opened
            };

            processor.Process(request);

            mockLoader.Verify();
            mockLoader.VerifyNoOtherCalls();
        }