Ejemplo n.º 1
0
        public void PublishCreate_existItem_Force()
        {
            var appSettings = new AppSettings {
                TempFolder = Path.DirectorySeparatorChar.ToString()
            };
            var storage = new FakeIStorage(new List <string> {
                Path.DirectorySeparatorChar + "test"
            },
                                           new List <string> {
                Path.DirectorySeparatorChar + "test.zip"
            });

            var controller = new PublishController(appSettings, new FakeIPublishPreflight(),
                                                   new FakeIWebHtmlPublishService(),
                                                   new FakeIMetaInfo(new List <FileIndexItem>
            {
                new FileIndexItem("/test.jpg")
                {
                    Status = FileIndexItem.ExifStatus.Ok
                }
            }),
                                                   new FakeSelectorStorage(storage),
                                                   _bgTaskQueue, new FakeIWebLogger());

            var actionResult = controller.PublishCreate("/test.jpg",
                                                        "test", "test", true) as JsonResult;
            var result = actionResult.Value as string;

            Assert.AreEqual("test", result);
            Assert.IsFalse(storage.ExistFolder(Path.DirectorySeparatorChar + "test"));
            Assert.IsFalse(storage.ExistFile(Path.DirectorySeparatorChar + "test.zip"));
        }
Ejemplo n.º 2
0
        public void Publish_Single()
        {
            var entity = CreateEntityRevision(new RegexPropertyEditor());

            var controller = new PublishController(GetBackOfficeRequestContext());

            controller.InjectDependencies(new Dictionary <string, string>(), new Dictionary <string, string>(), GetBackOfficeRequestContext(), false);

            var result = controller.PublishForm(new PublishModel
            {
                Id = entity.Item.Id,
                IncludeChildren            = false,
                IncludeUnpublishedChildren = false
            }) as CustomJsonResult;


            //Assert

            Assert.IsNotNull(result);
            var json = JObject.Parse(result.OutputJson());

            Assert.AreEqual(true, json["success"].Value <bool>());

            using (var uow = RebelApplicationContext.Hive.OpenReader <IContentStore>())
            {
                var publishedEntity = uow.Repositories.Revisions.GetLatestRevision <TypedEntity>(entity.Item.Id);
                Assert.AreEqual(FixedStatusTypes.Published.Alias, publishedEntity.MetaData.StatusType.Alias);
            }
        }
 void deobfuscate_MouseButtonClick(Widget source, EventArgs e)
 {
     if (sourceTextBox.OnlyText != null && destTextBox.OnlyText != null)
     {
         PublishController.deobfuscateZipFile(sourceTextBox.OnlyText, destTextBox.OnlyText);
     }
 }
Ejemplo n.º 4
0
        public FileBrowserTree(ScrollView treeScrollView, PublishController publishController)
        {
            this.publishController = publishController;

            fileTree = new Tree(treeScrollView);
            fileTree.NodeMouseReleased += new EventHandler <TreeMouseEventArgs>(fileTree_NodeMouseReleased);

            baseNode = new DirectoryNode("Publishing Files", this);
            fileTree.Nodes.add(baseNode);
            baseNode.Expanded = true;
        }
Ejemplo n.º 5
0
        public void PublishGet_List()
        {
            var controller = new PublishController(new AppSettings(), new FakeIPublishPreflight(),
                                                   new FakeIWebHtmlPublishService(), new FakeIMetaInfo(null), new FakeSelectorStorage(),
                                                   _bgTaskQueue, new FakeIWebLogger());

            var actionResult = controller.PublishGet() as JsonResult;
            var result       = actionResult.Value as IEnumerable <string>;

            Assert.AreEqual("test", result.FirstOrDefault());
        }
Ejemplo n.º 6
0
        public void Exist_EmptyString()
        {
            var controller = new PublishController(new AppSettings(), new FakeIPublishPreflight(),
                                                   new FakeIWebHtmlPublishService(),
                                                   new FakeIMetaInfo(new List <FileIndexItem>()),
                                                   new FakeSelectorStorage(),
                                                   _bgTaskQueue, new FakeIWebLogger());
            var actionResult = controller.Exist(string.Empty) as JsonResult;
            var result       = actionResult.Value is bool;

            Assert.IsTrue(result);
        }
        public void ContentEditorControllerTest_Actions_Secured_By_Permissions()
        {
            //Arrange
            var backOfficeRequestContext = GetBackOfficeRequestContext();
            var controller = new ContentEditorController(backOfficeRequestContext);

            controller.InjectDependencies(GetBackOfficeRequestContext());

            //TODO: There may be a better way of automatically getting a single controller variable using the controller extenders,
            //but likely that's just testing the action invoker, so for now here's the individual controllers

            var copyController = new MoveCopyController(backOfficeRequestContext);

            copyController.InjectDependencies(GetBackOfficeRequestContext());

            var sortController = new SortController(backOfficeRequestContext);

            sortController.InjectDependencies(GetBackOfficeRequestContext());

            var publishController = new PublishController(backOfficeRequestContext);

            publishController.InjectDependencies(GetBackOfficeRequestContext());

            var hos = new HostnameController(backOfficeRequestContext);

            hos.InjectDependencies(GetBackOfficeRequestContext());

            var rollback = new RollbackController(backOfficeRequestContext);

            rollback.InjectDependencies(GetBackOfficeRequestContext());

            var permissions = new PermissionsController(backOfficeRequestContext);

            permissions.InjectDependencies(GetBackOfficeRequestContext());

            //Assert
            Assert.IsTrue(ActionIsSecuredByPermission(controller, "CreateNew", FixedPermissionIds.Create));
            Assert.IsTrue(ActionIsSecuredByPermission(controller, "Edit", FixedPermissionIds.Update));
            Assert.IsTrue(ActionIsSecuredByPermission(controller, "Delete", FixedPermissionIds.Delete));
            Assert.IsTrue(ActionIsSecuredByPermission(copyController, "Copy", FixedPermissionIds.Copy));
            Assert.IsTrue(ActionIsSecuredByPermission(copyController, "Move", FixedPermissionIds.Move));
            Assert.IsTrue(ActionIsSecuredByPermission(sortController, "Sort", FixedPermissionIds.Sort));
            Assert.IsTrue(ActionIsSecuredByPermission(publishController, "Publish", FixedPermissionIds.Publish));
            Assert.IsTrue(ActionIsSecuredByPermission(permissions, "Permissions", FixedPermissionIds.Permissions));
            Assert.IsTrue(ActionIsSecuredByPermission(rollback, "Rollback", FixedPermissionIds.Rollback));

            // TODO: (APN @ Matt) the assertion for action name doesn't take into account two methods with the same name
            // but differing parameter counts, so this one fails
            // NOTE: (MPB) Have renamed post action to HostnameForm to get test passing for now, not sure if that is enough
            // or whether assertion method should allow you to query for a specific method signature?
            Assert.IsTrue(ActionIsSecuredByPermission(hos, "Hostname", FixedPermissionIds.Hostnames));
        }
        public void Initialize()
        {
            _mockProvidersApiClient      = new Mock <IPublishingApiClient>();
            _mockSpecificationsApiClient = new Mock <ISpecificationsApiClient>();
            _mockAuthorizatonHelper      = new Mock <IAuthorizationHelper>();

            var data = new ApiResponse <IEnumerable <PublishedProviderTransaction> >(HttpStatusCode.OK, Builder <PublishedProviderTransaction> .CreateListOfSize(10).All().Do(x => x.Author = new Reference("1", "Test Bot")).Build().AsEnumerable()
                                                                                     );

            _mockProvidersApiClient.Setup(x => x.GetPublishedProviderTransactions("ABC123", "providerId"))
            .ReturnsAsync(data);

            _sut = new PublishController(_mockSpecificationsApiClient.Object, _mockProvidersApiClient.Object, _mockAuthorizatonHelper.Object);
        }
        public void Setup()
        {
            _specificationsApiClient = Substitute.For <ISpecificationsApiClient>();
            _authorizationHelper     = Substitute.For <IAuthorizationHelper>();
            _publishingApiClient     = Substitute.For <IPublishingApiClient>();
            _validatedApiResponse    =
                new ValidatedApiResponse <JobCreationResponse>(HttpStatusCode.OK,
                                                               new JobCreationResponse
            {
                JobId = "ID"
            });

            _publishController =
                new PublishController(_specificationsApiClient, _publishingApiClient, _authorizationHelper);
        }
Ejemplo n.º 10
0
        public void Publish_All_Children_That_Are_Not_Already_Published()
        {
            var entity     = CreateEntityRevision(new RegexPropertyEditor());
            var subEntity1 = CreateEntityRevision(new RegexPropertyEditor());
            var subEntity2 = CreateEntityRevision(new RegexPropertyEditor());

            using (var writer = RebelApplicationContext.Hive.OpenWriter <IContentStore>())
            {
                var subRev1 = subEntity1.CopyToNewRevision();
                subRev1.Item.RelationProxies.EnlistParent(entity.Item, FixedRelationTypes.DefaultRelationType);
                var subRev2 = subEntity2.CopyToNewRevision();
                subRev2.Item.RelationProxies.EnlistParent(entity.Item, FixedRelationTypes.DefaultRelationType);
                writer.Repositories.Revisions.AddOrUpdate(subRev1);
                writer.Repositories.Revisions.AddOrUpdate(subRev2);
                writer.Complete();
            }

            var controller = new PublishController(GetBackOfficeRequestContext());

            controller.InjectDependencies(new Dictionary <string, string>(), new Dictionary <string, string>(), GetBackOfficeRequestContext(), false);

            var result = controller.PublishForm(new PublishModel
            {
                Id = entity.Item.Id,
                IncludeChildren            = true,
                IncludeUnpublishedChildren = true
            }) as CustomJsonResult;


            //Assert

            Assert.IsNotNull(result);
            var json = JObject.Parse(result.OutputJson());

            Assert.AreEqual(true, json["success"].Value <bool>());

            using (var uow = RebelApplicationContext.Hive.OpenReader <IContentStore>())
            {
                var publishedEntity = uow.Repositories.Revisions.GetLatestRevision <TypedEntity>(entity.Item.Id);
                Assert.AreEqual(FixedStatusTypes.Published.Alias, publishedEntity.MetaData.StatusType.Alias);

                var publishedSubEntity1 = uow.Repositories.Revisions.GetLatestRevision <TypedEntity>(subEntity1.Item.Id);
                Assert.AreEqual(FixedStatusTypes.Published.Alias, publishedSubEntity1.MetaData.StatusType.Alias);

                var publishedSubEntity2 = uow.Repositories.Revisions.GetLatestRevision <TypedEntity>(subEntity2.Item.Id);
                Assert.AreEqual(FixedStatusTypes.Published.Alias, publishedSubEntity2.MetaData.StatusType.Alias);
            }
        }
Ejemplo n.º 11
0
        public void PublishControllerIndexActionShouldReturnForms()
        {
            // Arrange
            var publishedFormServiceMock = this.mockRepository.Create<IPublishedFormService>();
            var expectedForms = new PublishedFormMother().GetArrayPublishedForm();
            publishedFormServiceMock.Setup(p => p.GetAllActive()).Returns(expectedForms);
            var controller = new PublishController(publishedFormServiceMock.Object);

            // Act
            var actual = controller.Index() as ViewResult;
            var actualViewModel = actual.Model;

            // Assert
            Assert.IsNotNull(actual);
            Assert.IsNotNull(actualViewModel);
            Assert.IsInstanceOfType(actualViewModel, typeof(PublicationViewModel[]));
            this.mockRepository.VerifyAll();
        }
Ejemplo n.º 12
0
        public void PublishCreate_newItem_readonly()
        {
            var controller = new PublishController(new AppSettings(), new FakeIPublishPreflight(),
                                                   new FakeIWebHtmlPublishService(),
                                                   new FakeIMetaInfo(new List <FileIndexItem> {
                new FileIndexItem("/test.jpg")
                {
                    Status = FileIndexItem.ExifStatus.ReadOnly
                }
            }),
                                                   new FakeSelectorStorage(),
                                                   _bgTaskQueue, new FakeIWebLogger());

            var actionResult = controller.PublishCreate("/test.jpg",
                                                        "test", "test", true) as JsonResult;
            var result = actionResult.Value as string;

            Assert.AreEqual("test", result);
        }
Ejemplo n.º 13
0
        public PublishWindow(AnomalyController controller)
            : base("Anomaly.GUI.PublishWindow.PublishWindow.layout")
        {
            this.controller = controller;

            resourceProfileCombo = window.findWidget("Profile") as ComboBox;
            resourceProfileCombo.EventComboChangePosition += resourceProfileCombo_EventComboChangePosition;

            Button browseButton = window.findWidget("Browse") as Button;

            browseButton.MouseButtonClick += browseButton_MouseButtonClick;

            Button publishButton = window.findWidget("Publish") as Button;

            publishButton.MouseButtonClick += publishButton_MouseButtonClick;

            Button saveProfile = window.findWidget("Save") as Button;

            saveProfile.MouseButtonClick += saveProfile_MouseButtonClick;

            archiveCheckBox   = new CheckButton(window.findWidget("CreateArchive") as Button);
            obfuscateCheckBox = new CheckButton(window.findWidget("Obfuscate") as Button);

            outputLocationTextBox          = window.findWidget("OutputDir") as EditBox;
            outputLocationTextBox.OnlyText = AnomalyConfig.LastPublishDirectory;

            archiveNameText = window.findWidget("ArchiveName") as EditBox;

            publishController = new PublishController(controller.Solution);
            //fileList.DirectoryIgnored += new EventHandler<PublishControllerEventArgs>(fileList_DirectoryIgnored);
            //fileList.ExternalFileAdded += new EventHandler<PublishControllerEventArgs>(fileList_ExternalFileAdded);

            resourceProfileCombo.addItem("None");
            foreach (String profileFile in Directory.EnumerateFiles(controller.Solution.WorkingDirectory, "*.rpr", SearchOption.TopDirectoryOnly))
            {
                resourceProfileCombo.addItem(Path.GetFileNameWithoutExtension(profileFile));
            }
            resourceProfileCombo.addItem("New...");

            fileTree = new FileBrowserTree(window.findWidget("Scroller") as ScrollView, publishController);
        }
Ejemplo n.º 14
0
        public void PublishCreate_FakeBg_Expect_Generate_FakeZip_newItem()
        {
            var fakeBg = new FakeIUpdateBackgroundTaskQueue();
            var fakeIWebHtmlPublishService = new FakeIWebHtmlPublishService();
            var controller = new PublishController(new AppSettings(), new FakeIPublishPreflight(),
                                                   fakeIWebHtmlPublishService,
                                                   new FakeIMetaInfo(new List <FileIndexItem> {
                new FileIndexItem("/test.jpg")
                {
                    Status = FileIndexItem.ExifStatus.Ok
                }
            }),
                                                   new FakeSelectorStorage(),
                                                   fakeBg, new FakeIWebLogger());

            controller.PublishCreate("/test.jpg",
                                     "test", "test", true);

            Assert.AreEqual(1, fakeIWebHtmlPublishService.ItemNamesGenerateZip.Count);
            Assert.AreEqual("test", fakeIWebHtmlPublishService.ItemNamesGenerateZip[0]);
        }
Ejemplo n.º 15
0
        public void PublishCreate_NotFound()
        {
            var controller = new PublishController(new AppSettings(),
                                                   new FakeIPublishPreflight(),
                                                   new FakeIWebHtmlPublishService(),
                                                   new FakeIMetaInfo(
                                                       new List <FileIndexItem> {
                new FileIndexItem("/test.jpg")
                {
                    Status = FileIndexItem.ExifStatus.NotFoundNotInIndex
                }
            }
                                                       ),
                                                   new FakeSelectorStorage(),
                                                   _bgTaskQueue, new FakeIWebLogger());

            var actionResult = controller.PublishCreate("/not-found.jpg",
                                                        "test", "test", true) as NotFoundObjectResult;

            Assert.AreEqual(404, actionResult.StatusCode);
        }
 public void Setup()
 {
     _publishController = new PublishController(_specificationsApiClient, _publishingApiClient, _authorizationHelper);
 }
Ejemplo n.º 17
0
 public PublishBuilder(PublishController controller)
 {
     Guard.NotNull(controller, nameof(controller));
     _controller = controller;
 }
 public void Setup()
 {
     _sqsClientMock = new Mock <ISqsClient>();
     _publishControllerUnderTest = new PublishController(_sqsClientMock.Object);
 }