private void assertAddedNewProperty(Node root, long propertyCountBefore, String newPropertyName) throws RepositoryException { // no LUD wrapping on test assertEquals(propertyCountBefore + 1, root.getProperties().getSize()); assertTrue(root.hasProperty(newPropertyName)); // assertTrue(root.hasProperty(NodeTypes.LastModified.LAST_MODIFIED)); // assertTrue(root.hasProperty(NodeTypes.LastModified.LAST_MODIFIED_BY)); assertFalse(eventBus.isEmpty()); JcrItemId itemId = (JcrItemId)((ContentChangedEvent) eventBus.getEvent()).getItemId(); assertTrue(itemId.getUuid().equals(root.getIdentifier())); } }
@Test public void testDoesNothingGivenProperty() throws Exception { // GIVEN Node root = session.getRootNode(); Node node = root.addNode("nodeName"); node.setProperty("propertyName", "propertyValue"); long nodeCountBefore = node.getNodes().getSize(); DuplicateNodeAction action = new DuplicateNodeAction(definition, new JcrPropertyAdapter(node.getProperty("propertyName")), eventBus); // WHEN action.execute(); // THEN assertEquals(nodeCountBefore, node.getNodes().getSize()); assertFalse(node.hasNode("nodeName0")); assertTrue(eventBus.isEmpty()); }
@Test public void doesNothingGivenProperty() throws Exception { // GIVEN Node node = root.addNode(NODE_NAME); node.setProperty("propertyName", "propertyValue"); long nodeCountBefore = node.getNodes().getSize(); AddNodeAction action = new AddNodeAction(definition, new JcrPropertyAdapter(node.getProperty("propertyName")), eventBus); // WHEN action.execute(); // THEN assertEquals(nodeCountBefore, node.getNodes().getSize()); assertFalse(node.hasNode(NEW_NODE_NAME)); assertTrue(eventBus.isEmpty()); }
private void assertAddedNewNode(Node parent, String nodeName, String nodeType, long expectedNumberOfChildNodes) throws RepositoryException { assertEquals(expectedNumberOfChildNodes, parent.getNodes().getSize()); assertThat(parent, hasNode(nodeName)); Node newNode = parent.getNode(nodeName); assertEquals(nodeType, newNode.getPrimaryNodeType().getName()); assertFalse(eventBus.isEmpty()); assertTrue(((ContentChangedEvent) eventBus.getEvent()).getItemId().equals(JcrItemUtil.getItemId(newNode))); } }
@Before @Override public void setUp() throws Exception { super.setUp(); session = new MockSession("workspace"); MockContext ctx = new MockContext(); ctx.addSession("workspace", session); ctx.setUser(new DummyUser()); MgnlContext.setInstance(ctx); eventBus = new RecordingEventBus(); i18n = mock(SimpleTranslator.class); when(i18n.translate(anyString())).thenReturn("some translated message"); callback = new AtomicReference<ConfirmationCallback>(); subAppContext = mock(SubAppContext.class); doAnswer(new Answer() { @Override public Object answer(InvocationOnMock invocation) throws Throwable { Object[] arguments = invocation.getArguments(); callback.set((ConfirmationCallback) arguments[6]); return null; } }).when(subAppContext).openConfirmation(any(MessageStyleTypeEnum.class), anyString(), anyString(), anyString(), anyString(), anyBoolean(), any(ConfirmationCallback.class)); }
@Test public void testDoesNothingGivenProperty() throws Exception { // GIVEN Node root = session.getRootNode(); Node node = root.addNode(NODE_NAME); node.setProperty(UNTITLED_PROPERTY_NAME, UNTITLED_PROPERTY_VALUE); long propertyCountBefore = node.getProperties().getSize(); AddPropertyAction action = new AddPropertyAction(definition, new JcrPropertyAdapter(node.getProperty(UNTITLED_PROPERTY_NAME)), eventBus); // WHEN action.execute(); // THEN assertEquals(propertyCountBefore, node.getProperties().getSize()); assertEquals(node.getProperty(UNTITLED_PROPERTY_NAME).getString(), UNTITLED_PROPERTY_VALUE); assertTrue(eventBus.isEmpty()); }
@Test public void testCanDeleteNode() throws Exception { // GIVEN Node root = session.getRootNode(); Node node = root.addNode("node"); JcrNodeAdapter nodeAdapter = new JcrNodeAdapter(node); DeleteItemAction action = new DeleteItemAction(new DeleteItemActionDefinition(), nodeAdapter, eventBus, subAppContext, i18n); // WHEN action.execute(); assertTrue(root.hasNode("node")); callback.get().onSuccess(); // THEN assertFalse(root.hasNode("node")); assertFalse(eventBus.isEmpty()); assertTrue(((ContentChangedEvent) eventBus.getEvent()).getItemId().equals(JcrItemUtil.getItemId(node))); }
@Before public void setUp() throws Exception { ComponentsTestUtil.setInstance(MagnoliaConfigurationProperties.class, mock(MagnoliaConfigurationProperties.class)); definition = new AddNodeActionDefinition(); session = new MockSession(WORKSPACE); MockContext ctx = new MockContext(); ctx.addSession(WORKSPACE, session); ctx.setUser(new DummyUser()); MgnlContext.setInstance(ctx); eventBus = new RecordingEventBus(); root = session.getRootNode(); }
@Test public void testCanDeleteProperty() throws Exception { // GIVEN Node root = session.getRootNode(); Property property = root.setProperty("property", "value"); JcrItemId propertyItemId = JcrItemUtil.getItemId(property); JcrPropertyAdapter propertyAdapter = new JcrPropertyAdapter(property); DeleteItemAction action = new DeleteItemAction(new DeleteItemActionDefinition(), propertyAdapter, eventBus, subAppContext, i18n); // WHEN action.execute(); assertTrue(root.hasProperty("property")); callback.get().onSuccess(); // THEN assertFalse(root.hasProperty("property")); assertFalse(eventBus.isEmpty()); assertTrue(((ContentChangedEvent) eventBus.getEvent()).getItemId().equals(propertyItemId)); }
@Before @Override public void setUp() throws Exception { super.setUp(); ComponentsTestUtil.setImplementation(AvailabilityDefinition.class, ConfiguredAvailabilityDefinition.class); ComponentsTestUtil.setImplementation(TranslationService.class, TranslationServiceImpl.class); ComponentsTestUtil.setImplementation(MessagesManager.class, DefaultMessagesManager.class); ComponentsTestUtil.setImplementation(LocaleProvider.class, ContextLocaleProvider.class); definition = new AddFolderActionDefinition(); session = new MockSession(WORKSPACE); MockContext ctx = new MockContext(); ctx.addSession(WORKSPACE, session); ctx.setUser(new DummyUser()); MgnlContext.setInstance(ctx); eventBus = new RecordingEventBus(); }
@Test public void testCanAddChildNode() throws Exception { // GIVEN Node root = session.getRootNode(); Node node = root.addNode(NODE_NAME); long nodeCount = node.getNodes().getSize(); AddNodeAction action = new AddNodeAction(definition, new JcrNodeAdapter(node), eventBus); // WHEN action.execute(); // THEN assertTrue(node.hasNode(AbstractRepositoryAction.DEFAULT_NEW_ITEM_NAME)); assertEquals(nodeCount + 1, node.getNodes().getSize()); Node newNode = node.getNode(AbstractRepositoryAction.DEFAULT_NEW_ITEM_NAME); assertEquals(NodeTypes.Folder.NAME, newNode.getPrimaryNodeType().getName()); assertFalse(eventBus.isEmpty()); assertTrue(((ContentChangedEvent) eventBus.getEvent()).getItemId().equals(JcrItemUtil.getItemId(newNode))); } }
@Before @Override public void setUp() throws Exception { super.setUp(); ComponentsTestUtil.setImplementation(AccessDefinition.class, ConfiguredAccessDefinition.class); ComponentsTestUtil.setImplementation(AvailabilityDefinition.class, ConfiguredAvailabilityDefinition.class); ComponentsTestUtil.setImplementation(TranslationService.class, TranslationServiceImpl.class); ComponentsTestUtil.setImplementation(MessagesManager.class, DefaultMessagesManager.class); ComponentsTestUtil.setImplementation(LocaleProvider.class, ContextLocaleProvider.class); definition = new AddPropertyActionDefinition(); session = new MockSession(WORKSPACE); MockContext ctx = new MockContext(); ctx.addSession(WORKSPACE, session); ctx.setUser(new DummyUser()); MgnlContext.setInstance(ctx); ComponentsTestUtil.setInstance(SystemContext.class, ctx); eventBus = new RecordingEventBus(); }
Calendar duplicate = parent.getNode("nodeToCopy0").getProperty(NodeTypes.LastModified.LAST_MODIFIED).getDate(); assertTrue(init.before(duplicate)); assertFalse(eventBus.isEmpty()); assertTrue(((ContentChangedEvent) eventBus.getEvent()).getItemId().equals(JcrItemUtil.getItemId(parent.getNode("nodeToCopy0"))));