@Test public void testExportDLReferences() throws Exception { Element rootElement = _portletDataContextExport.getExportDataRootElement(); String content = replaceParameters(getContent("dl_references.txt"), _fileEntry); List<String> urls = getURLs(content); content = ExportImportHelperUtil.replaceExportContentReferences( _portletDataContextExport, _referrerStagedModel, rootElement.element("entry"), content, true); for (String url : urls) { Assert.assertFalse(content.contains(url)); } TestReaderWriter testReaderWriter = (TestReaderWriter) _portletDataContextExport.getZipWriter(); List<String> entries = testReaderWriter.getEntries(); Assert.assertEquals(entries.size(), 1); List<String> binaryEntries = testReaderWriter.getBinaryEntries(); Assert.assertEquals(binaryEntries.size(), entries.size()); for (String entry : testReaderWriter.getEntries()) { Assert.assertTrue(content.contains("[$dl-reference=" + entry + "$]")); } ; }
@Before public void setUp() throws Exception { _liveGroup = GroupTestUtil.addGroup(); _stagingGroup = GroupTestUtil.addGroup(); ServiceContext serviceContext = ServiceContextTestUtil.getServiceContext( _stagingGroup.getGroupId(), TestPropsValues.getUserId()); _fileEntry = DLAppLocalServiceUtil.addFileEntry( TestPropsValues.getUserId(), _stagingGroup.getGroupId(), DLFolderConstants.DEFAULT_PARENT_FOLDER_ID, RandomTestUtil.randomString() + ".txt", ContentTypes.TEXT_PLAIN, RandomTestUtil.randomBytes(TikaSafeRandomizerBumper.INSTANCE), serviceContext); ThumbnailCapability thumbnailCapability = _fileEntry.getRepositoryCapability(ThumbnailCapability.class); _fileEntry = thumbnailCapability.setLargeImageId(_fileEntry, _fileEntry.getFileEntryId()); TestReaderWriter testReaderWriter = new TestReaderWriter(); _portletDataContextExport = PortletDataContextFactoryUtil.createExportPortletDataContext( _stagingGroup.getCompanyId(), _stagingGroup.getGroupId(), new HashMap<String, String[]>(), new Date(System.currentTimeMillis() - Time.HOUR), new Date(), testReaderWriter); Document document = SAXReaderUtil.createDocument(); Element manifestRootElement = document.addElement("root"); manifestRootElement.addElement("header"); testReaderWriter.addEntry("/manifest.xml", document.asXML()); Element rootElement = SAXReaderUtil.createElement("root"); _portletDataContextExport.setExportDataRootElement(rootElement); _stagingPrivateLayout = LayoutTestUtil.addLayout(_stagingGroup, true); _stagingPublicLayout = LayoutTestUtil.addLayout(_stagingGroup, false); _portletDataContextExport.setPlid(_stagingPublicLayout.getPlid()); _portletDataContextImport = PortletDataContextFactoryUtil.createImportPortletDataContext( _liveGroup.getCompanyId(), _liveGroup.getGroupId(), new HashMap<String, String[]>(), new TestUserIdStrategy(), testReaderWriter); _portletDataContextImport.setImportDataRootElement(rootElement); Element missingReferencesElement = rootElement.addElement("missing-references"); _portletDataContextImport.setMissingReferencesElement(missingReferencesElement); _livePublicLayout = LayoutTestUtil.addLayout(_liveGroup, false); _portletDataContextImport.setPlid(_livePublicLayout.getPlid()); _portletDataContextImport.setSourceGroupId(_stagingGroup.getGroupId()); rootElement.addElement("entry"); _referrerStagedModel = JournalTestUtil.addArticle( _stagingGroup.getGroupId(), RandomTestUtil.randomString(), RandomTestUtil.randomString()); }