Search in sources :

Example 1 with RemoteContentStore

use of org.eclipse.ceylon.cmr.impl.RemoteContentStore in project ceylon by eclipse.

the class CallbackTestCase method doTest.

protected void doTest(ArtifactContext context, TestArtifactCallback callback) throws Exception {
    String repoURL = "http://jboss-as7-modules-repository.googlecode.com/svn/trunk/ceylon";
    try {
        new URL(repoURL).openStream();
    } catch (Exception e) {
        log.error(String.format("Cannot connect to repo %s - %s", repoURL, e));
        // probably not on the internet?
        return;
    }
    RepositoryManagerBuilder builder = getRepositoryManagerBuilder(false, 60000, java.net.Proxy.NO_PROXY);
    RemoteContentStore rcs = new RemoteContentStore(repoURL, log, false, 60000, java.net.Proxy.NO_PROXY);
    CmrRepository repo = new DefaultRepository(rcs.createRoot());
    RepositoryManager manager = builder.addRepository(repo).buildRepository();
    try {
        File file = manager.getArtifact(context);
        Assert.assertNotNull(file);
        Assert.assertTrue(callback.size > 0);
        Assert.assertEquals(callback.size, callback.current);
    } catch (Exception re) {
        Assert.assertNotNull(callback.ts);
        Assert.assertNotNull(callback.err);
        Assert.assertEquals(callback.ts, callback.err.getMessage());
    } finally {
        manager.removeArtifact(null, name, version);
        // test if remove really works
        testSearchResults("org.eclipse.fizbiz", ModuleQuery.Type.JVM, new ModuleSearchResult.ModuleDetails[0]);
    }
}
Also used : RepositoryManagerBuilder(org.eclipse.ceylon.cmr.api.RepositoryManagerBuilder) DefaultRepository(org.eclipse.ceylon.cmr.impl.DefaultRepository) RepositoryManager(org.eclipse.ceylon.cmr.api.RepositoryManager) RemoteContentStore(org.eclipse.ceylon.cmr.impl.RemoteContentStore) CmrRepository(org.eclipse.ceylon.cmr.api.CmrRepository) File(java.io.File) ModuleSearchResult(org.eclipse.ceylon.cmr.api.ModuleSearchResult) URL(java.net.URL)

Example 2 with RemoteContentStore

use of org.eclipse.ceylon.cmr.impl.RemoteContentStore in project ceylon by eclipse.

the class SmokeTestCase method testRemoteContent.

@Test
public void testRemoteContent() throws Exception {
    String repoURL = "http://jboss-as7-modules-repository.googlecode.com/svn/trunk/ceylon";
    try {
        new URL(repoURL).openStream();
    } catch (Exception e) {
        log.error(String.format("Cannot connect to repo %s - %s", repoURL, e));
        // probably not on the internet?
        return;
    }
    RepositoryManagerBuilder builder = getRepositoryManagerBuilder(false, 60000, java.net.Proxy.NO_PROXY);
    RemoteContentStore rcs = new RemoteContentStore(repoURL, log, false, 60000, java.net.Proxy.NO_PROXY);
    CmrRepository repo = new DefaultRepository(rcs.createRoot());
    RepositoryManager manager = builder.addRepository(repo).buildRepository();
    String name = "org.eclipse.fizbiz";
    String version = "1.0.0.Beta1";
    File file = null;
    File originFile = null;
    try {
        file = manager.getArtifact(null, name, version);
        Assert.assertNotNull(file);
        originFile = new File(file.getAbsolutePath() + ".origin");
        Assert.assertNotNull(originFile);
        try {
            String line;
            try (BufferedReader reader = new BufferedReader(new FileReader(originFile))) {
                line = reader.readLine();
            }
            assertEquals(repoURL, line);
        } catch (IOException ignored) {
        }
    } finally {
        manager.removeArtifact(null, name, version);
        // test if remove really works
        if (file != null)
            assertFalse(file.exists());
        if (originFile != null)
            assertFalse(originFile.exists());
        testSearchResults("org.eclipse.fizbiz", Type.JVM, new ModuleDetails[0]);
    }
}
Also used : RepositoryManagerBuilder(org.eclipse.ceylon.cmr.api.RepositoryManagerBuilder) DefaultRepository(org.eclipse.ceylon.cmr.impl.DefaultRepository) BufferedReader(java.io.BufferedReader) RepositoryManager(org.eclipse.ceylon.cmr.api.RepositoryManager) SimpleRepositoryManager(org.eclipse.ceylon.cmr.impl.SimpleRepositoryManager) FileReader(java.io.FileReader) RemoteContentStore(org.eclipse.ceylon.cmr.impl.RemoteContentStore) IOException(java.io.IOException) CmrRepository(org.eclipse.ceylon.cmr.api.CmrRepository) File(java.io.File) URL(java.net.URL) IOException(java.io.IOException) Test(org.junit.Test)

Aggregations

File (java.io.File)2 URL (java.net.URL)2 CmrRepository (org.eclipse.ceylon.cmr.api.CmrRepository)2 RepositoryManager (org.eclipse.ceylon.cmr.api.RepositoryManager)2 RepositoryManagerBuilder (org.eclipse.ceylon.cmr.api.RepositoryManagerBuilder)2 DefaultRepository (org.eclipse.ceylon.cmr.impl.DefaultRepository)2 RemoteContentStore (org.eclipse.ceylon.cmr.impl.RemoteContentStore)2 BufferedReader (java.io.BufferedReader)1 FileReader (java.io.FileReader)1 IOException (java.io.IOException)1 ModuleSearchResult (org.eclipse.ceylon.cmr.api.ModuleSearchResult)1 SimpleRepositoryManager (org.eclipse.ceylon.cmr.impl.SimpleRepositoryManager)1 Test (org.junit.Test)1