/******************************************************************************* * Copyright (c) 2012-2015 Codenvy, S.A. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Codenvy, S.A. - initial API and implementation *******************************************************************************/ package org.eclipse.che.ide.extension.ant.server.project.type; /** @author Vladyslav Zhukovskii */ public class AntProjectTypeResolverTest { // private static final String workspace = "my_ws"; // private AntProjectTypeResolver antProjectTypeResolver; // // private static final String vfsUser = "dev"; // private static final Set<String> vfsUserGroups = new LinkedHashSet<>(Arrays.asList("workspace/developer")); // // private ProjectManager projectManager; // // private String buildXML = // "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n" + // "<project basedir=\".\" default=\"build\" name=\"antproj\">\n" + // " <target description=\"Builds the application\" name=\"build\">\n" + // " <echo message=\"Hello, world\"/>\n" + // " </target>\n" + // "</project>"; // // // @Before // public void setUp() throws Exception { // final String vfsUser = "dev"; // final Set<String> vfsUserGroups = new LinkedHashSet<>(Arrays.asList("workspace/developer")); // Set<ProjectType> pts = new HashSet<>(); // final ProjectType pt = new ProjectType("ant", "ant") { // { // setDefaultBuilder("ant"); // } // }; // // // // pts.add(pt); // // // final ProjectTypeRegistry projectTypeRegistry = new ProjectTypeRegistry(pts); // // final EventService eventService = new EventService(); // final VirtualFileSystemRegistry vfsRegistry = new VirtualFileSystemRegistry(); // final MemoryFileSystemProvider memoryFileSystemProvider = // new MemoryFileSystemProvider(workspace, eventService, new VirtualFileSystemUserContext() { // @Override // public VirtualFileSystemUser getVirtualFileSystemUser() { // return new VirtualFileSystemUser(vfsUser, vfsUserGroups); // } // }, vfsRegistry); // vfsRegistry.registerProvider(workspace, memoryFileSystemProvider); // projectManager = new DefaultProjectManager(vfsRegistry, eventService, projectTypeRegistry); // projectManager.createProject(workspace, "my_project", new ProjectConfig("", pt.getId())); // // MockitoAnnotations.initMocks(this); // // Bind components // Injector injector = Guice.createInjector(new AbstractModule() { // @Override // protected void configure() { // Multibinder<ProjectTypeResolver> projectTypeResolverMultibinder = // Multibinder.newSetBinder(binder(), ProjectTypeResolver.class); // projectTypeResolverMultibinder.addBinding().to(AntProjectTypeResolver.class); // bind(ProjectManager.class).toInstance(projectManager); // } // }); // antProjectTypeResolver = injector.getInstance(AntProjectTypeResolver.class); // projectManager = injector.getInstance(ProjectManager.class); // } // // @Test // public void withoutBuildXml() throws Exception { // FolderEntry test = projectManager.getProjectsRoot(workspace).createFolder("test"); // boolean resolve = antProjectTypeResolver.resolve(test); // Assert.assertFalse(resolve); // Assert.assertNull(projectManager.getProject(workspace, "test")); // } // // @Test // public void withBuildXml() throws Exception { // FolderEntry test = projectManager.getProjectsRoot(workspace).createFolder("test"); // test.createFile("build.xml", buildXML.getBytes(), "text/xml"); // boolean resolve = antProjectTypeResolver.resolve(test); // Assert.assertTrue(resolve); // Assert.assertNotNull(projectManager.getProject(workspace, "test")); // ; // Assert.assertNotNull(projectManager.getProject(workspace, "test").getConfig()); // Assert.assertNotNull(projectManager.getProject(workspace, "test").getConfig().getTypeId()); // Assert.assertEquals("ant", projectManager.getProject(workspace, "test").getConfig().getTypeId()); // Assert.assertNotNull(projectManager.getProject(workspace, "test").getConfig().getBuilders()); // Assert.assertEquals("ant", projectManager.getProject(workspace, "test").getConfig().getBuilders().getDefault()); // } // // @Test // public void withBuildXmlWithFolders() throws Exception { // FolderEntry test = projectManager.getProjectsRoot(workspace).createFolder("test"); // test.createFile("build.xml", buildXML.getBytes(), "text/xml"); // // FolderEntry folder = test.createFolder("folder1"); // folder.createFile("build.xml", buildXML.getBytes(), "text/xml"); // // FolderEntry folder1 = test.createFolder("folder2"); // folder1.createFile("build.xml", buildXML.getBytes(), "text/xml"); // // // boolean resolve = antProjectTypeResolver.resolve(test); // Assert.assertTrue(resolve); // Assert.assertNotNull(projectManager.getProject(workspace, "test")); // Assert.assertNull(projectManager.getProject(workspace, "test/folder1")); // Assert.assertNull(projectManager.getProject(workspace, "test/folder2")); // } }