use of org.apache.sling.ide.test.impl.helpers.ProjectAdapter in project sling by apache.
the class ProjectHelperTest method projectWithInstalledFacetIsCandidate.
@Test
public void projectWithInstalledFacetIsCandidate() throws CoreException, InterruptedException {
// create faceted project
IProject contentProject = projectRule.getProject();
ProjectAdapter project = new ProjectAdapter(contentProject);
project.addNatures("org.eclipse.wst.common.project.facet.core.nature");
// create files
project.createOrUpdateFile(Path.fromPortableString("src/main/content/jcr_root/test/hello.txt"), new ByteArrayInputStream("goodbye, world".getBytes()));
project.createOrUpdateFile(Path.fromPortableString("src/main/content/META-INF/vault/filter.xml"), new ByteArrayInputStream("<workspaceFilter version=\"1.0\"/>".getBytes()));
assertThat(ProjectHelper.isPotentialContentProject(contentProject), CoreMatchers.equalTo(true));
}
use of org.apache.sling.ide.test.impl.helpers.ProjectAdapter in project sling by apache.
the class ProjectHelperTest method projectWithoutInstalledFacetIsNotCandidate.
@Test
public void projectWithoutInstalledFacetIsNotCandidate() throws CoreException, InterruptedException {
// create faceted project
IProject contentProject = projectRule.getProject();
ProjectAdapter project = new ProjectAdapter(contentProject);
project.addNatures("org.eclipse.wst.common.project.facet.core.nature");
// install content facet
project.installFacet("sling.content", "1.0");
// create files
project.createOrUpdateFile(Path.fromPortableString("src/main/content/jcr_root/test/hello.txt"), new ByteArrayInputStream("goodbye, world".getBytes()));
project.createOrUpdateFile(Path.fromPortableString("src/main/content/META-INF/vault/filter.xml"), new ByteArrayInputStream("<workspaceFilter version=\"1.0\"/>".getBytes()));
assertThat(ProjectHelper.isPotentialContentProject(contentProject), CoreMatchers.equalTo(false));
}
use of org.apache.sling.ide.test.impl.helpers.ProjectAdapter in project sling by apache.
the class JcrFullCoverageAggregatesDeploymentTest method reorderNodesFromNestedFullCoverageAggregate.
@Test
public void reorderNodesFromNestedFullCoverageAggregate() throws Exception {
wstServer.waitForServerToStart();
// create faceted project
IProject contentProject = projectRule.getProject();
ProjectAdapter project = new ProjectAdapter(contentProject);
project.addNatures("org.eclipse.wst.common.project.facet.core.nature");
// install content facet
project.installFacet("sling.content", "1.0");
ServerAdapter server = new ServerAdapter(wstServer.getServer());
server.installModule(contentProject);
// create filter.xml
project.createVltFilterWithRoots("/content");
// create .content.xml structure
InputStream contentXml = getClass().getResourceAsStream("content-nested-structure.xml");
project.createOrUpdateFile(Path.fromPortableString("jcr_root/content/test-root/en.xml"), contentXml);
Matcher<Node> postConditions = allOf(hasPath("/content/test-root/en"), hasPrimaryType("sling:Folder"), hasMixinTypes("mix:language"), hasChildrenNames("message", "error", "warning"));
final RepositoryAccessor repo = new RepositoryAccessor(config);
Poller poller = new Poller();
poller.pollUntil(new Callable<Node>() {
@Override
public Node call() throws RepositoryException {
return repo.getNode("/content/test-root/en");
}
}, postConditions);
// update .content.xml structure
InputStream updatedContentXml = getClass().getResourceAsStream("content-nested-structure-reordered-nodes.xml");
project.createOrUpdateFile(Path.fromPortableString("jcr_root/content/test-root/en.xml"), updatedContentXml);
// poll until we have the child nodes reordered
postConditions = allOf(hasPath("/content/test-root/en"), hasPrimaryType("sling:OrderedFolder"), hasMixinTypes("mix:language"), hasChildrenNames("message", "warning", "error"));
poller.pollUntil(new Callable<Node>() {
@Override
public Node call() throws RepositoryException {
return repo.getNode("/content/test-root/en");
}
}, postConditions);
}
use of org.apache.sling.ide.test.impl.helpers.ProjectAdapter in project sling by apache.
the class JcrFullCoverageAggregatesDeploymentTest method deleteAllNodesFromNestedFullCoverageAggreate.
@Test
@Ignore(value = "SLING-3591")
public void deleteAllNodesFromNestedFullCoverageAggreate() throws Exception {
wstServer.waitForServerToStart();
// create faceted project
IProject contentProject = projectRule.getProject();
ProjectAdapter project = new ProjectAdapter(contentProject);
project.addNatures("org.eclipse.wst.common.project.facet.core.nature");
// install content facet
project.installFacet("sling.content", "1.0");
ServerAdapter server = new ServerAdapter(wstServer.getServer());
server.installModule(contentProject);
// create .content.xml structure
InputStream contentXml = getClass().getResourceAsStream("content-nested-structure.xml");
project.createOrUpdateFile(Path.fromPortableString("jcr_root/content/test-root/en.xml"), contentXml);
Matcher<Node> postConditions = allOf(hasPath("/content/test-root/en"), hasPrimaryType("sling:Folder"), hasMixinTypes("mix:language"), hasChildrenCount(3));
final RepositoryAccessor repo = new RepositoryAccessor(config);
Poller poller = new Poller();
poller.pollUntil(new Callable<Node>() {
@Override
public Node call() throws RepositoryException {
return repo.getNode("/content/test-root/en");
}
}, postConditions);
// update .content.xml structure
InputStream updatedContentXml = getClass().getResourceAsStream("content-nested-structure-deleted-all-nodes.xml");
project.createOrUpdateFile(Path.fromPortableString("jcr_root/content/test-root/en.xml"), updatedContentXml);
// poll until we only have no child nodes left
postConditions = allOf(hasPath("/content/test-root/en"), hasPrimaryType("sling:Folder"), hasMixinTypes("mix:language"), hasChildrenCount(0));
poller.pollUntil(new Callable<Node>() {
@Override
public Node call() throws RepositoryException {
return repo.getNode("/content/test-root/en");
}
}, postConditions);
}
use of org.apache.sling.ide.test.impl.helpers.ProjectAdapter in project sling by apache.
the class JcrFullCoverageAggregatesDeploymentTest method deployNestedFullCoverageAggregateAtFilterRoot.
@Test
public void deployNestedFullCoverageAggregateAtFilterRoot() throws Exception {
wstServer.waitForServerToStart();
// create faceted project
IProject contentProject = projectRule.getProject();
ProjectAdapter project = new ProjectAdapter(contentProject);
project.addNatures("org.eclipse.wst.common.project.facet.core.nature");
// install content facet
project.installFacet("sling.content", "1.0");
ServerAdapter server = new ServerAdapter(wstServer.getServer());
server.installModule(contentProject);
// create prerequisite data
final RepositoryAccessor repo = new RepositoryAccessor(config);
repo.createNode("/content", "sling:Folder");
repo.createNode("/content/test-root", "sling:Folder");
project.createVltFilterWithRoots("/content/test-root/en");
// create .content.xml structure
InputStream contentXml = getClass().getResourceAsStream("content-nested-structure.xml");
project.createOrUpdateFile(Path.fromPortableString("jcr_root/content/test-root/en.xml"), contentXml);
Matcher<Node> postConditions = allOf(hasPath("/content/test-root/en"), hasPrimaryType("sling:Folder"), hasMixinTypes("mix:language"), hasChildrenCount(3));
Poller poller = new Poller();
poller.pollUntil(new Callable<Node>() {
@Override
public Node call() throws RepositoryException {
return repo.getNode("/content/test-root/en");
}
}, postConditions);
}
Aggregations