Package org.sonatype.tests.http.server.fluent

Examples of org.sonatype.tests.http.server.fluent.Server


    }
    else {
      throw new IllegalArgumentException("Code " + code + " not supported!");
    }

    final Server result = Server.withPort(0);
    result.serve("/release/").withBehaviours(new S3ResponseHeadersBehaviour(),
        new DeliverBehaviour(404, "application/xml", NO_SUCH_KEY_RESPONSE));
    result.serve("/").withBehaviours(
        new S3ResponseHeadersBehaviour(),
        new S3PagedDeliverBehaviour(new DeliverBehaviour(200, "application/xml", MULTI_PAGE_RESPONSE_PAGE_1),
            pages));
    return result;
  }
View Full Code Here


  @Test
  public void onePageHttp200()
      throws Exception
  {
    final Server server = prepareServer();
    server.start();
    try {
      final HttpClient httpClient = new DefaultHttpClient();
      final String repoRoot = server.getUrl().toString() + "/";
      when(mavenProxyRepository.getRemoteUrl()).thenReturn(repoRoot);
      final ScrapeContext context = new ScrapeContext(mavenProxyRepository, httpClient, 2);
      final Page page = Page.getPageFor(context, repoRoot);
      s3scraper.scrape(context, page);
      assertThat(context.isStopped(), is(true));
      assertThat(context.isSuccessful(), is(true));
      assertThat(context.getPrefixSource(), notNullValue());
      final List<String> entries = context.getPrefixSource().readEntries();
      assertThat(entries, notNullValue());
      assertThat(entries.size(), equalTo(1));
      assertThat(entries, contains("/release/foo"));
    }
    finally {
      server.stop();
    }
  }
View Full Code Here

  public void onePageHttp403()
      throws Exception
  {
    // server recognized as S3 but AccessDenied:
    // context should be stopped and unsuccessful
    final Server server = prepareErrorServer(403);
    server.start();
    try {
      final HttpClient httpClient = new DefaultHttpClient();
      final String repoRoot = server.getUrl().toString() + "/";
      when(mavenProxyRepository.getRemoteUrl()).thenReturn(repoRoot);
      final ScrapeContext context = new ScrapeContext(mavenProxyRepository, httpClient, 2);
      final Page page = Page.getPageFor(context, repoRoot);
      s3scraper.scrape(context, page);
      assertThat(context.isStopped(), is(true));
      assertThat(context.isSuccessful(), is(false));
    }
    finally {
      server.stop();
    }
  }
View Full Code Here

  protected Server prepareServer(int code, final RemoteType remoteType)
      throws Exception
  {
    if (code == 200) {
      final Server result = Server.withPort(0);
      result.serve("/nexus/content/repositories/central/.meta/repository-metadata.xml").withBehaviours(
          new DeliverTemplateBehaviour(200, "text/html", template(getRepositoryMetadataXml(remoteType),
              result)));
      result.serve("/nexus/content/repositories/central/").withBehaviours(
          new DeliverTemplateBehaviour(200, "text/html", template(ROOT_BODY, result)));
      result.serve("/nexus/content/repositories/central/org/").withBehaviours(
          new DeliverTemplateBehaviour(200, "text/html", template(ORG_BODY, result)));
      result.serve("/nexus/content/repositories/central/org/sonatype/").withBehaviours(
          new DeliverTemplateBehaviour(200, "text/html", template(ORG_SONATYPE_BODY, result)));
      return result;
    }
    else if (code == 403) {
      final Server result = Server.withPort(0);
      result.serve("/*").withBehaviours(new DeliverBehaviour(403, "text/html", "<h1>Access denied</h1>"));
      return result;
    }
    else if (code == 404) {
      final Server result = Server.withPort(0);
      result.serve("/*").withBehaviours(new DeliverBehaviour(404, "text/html", "<h1>Not found</h1>"));
      return result;
    }
    else if (code == 500) {
      final Server result = Server.withPort(0);
      result.serve("/*").withBehaviours(new DeliverBehaviour(500, "text/html", "<h1>Ooops!</h1>"));
      return result;
    }
    else {
      throw new IllegalArgumentException("Code " + code + " not supported!");
    }
View Full Code Here

  protected Server prepareServerWithCatch(int code, final RemoteType remoteType)
      throws Exception
  {
    if (code == 200) {
      final Server result = Server.withPort(0);
      result.serve("/nexus/content/repositories/central/.meta/repository-metadata.xml").withBehaviours(
          new DeliverTemplateBehaviour(200, "text/html", template(getRepositoryMetadataXml(remoteType),
              result)));
      result.serve("/nexus/content/repositories/central/").withBehaviours(
          new DeliverTemplateBehaviour(200, "text/html", template(ROOT_BODY, result)));
      result.serve("/nexus/content/repositories/central/org/").withBehaviours(
          new DeliverTemplateBehaviour(200, "text/html", template(ORG_BODY, result)));
      result.serve("/nexus/content/repositories/central/org/sonatype/").withBehaviours(
          new DeliverTemplateBehaviour(200, "text/html", template(ORG_SONATYPE_BODY, result)));
      return result;
    }
    else if (code == 403) {
      final Server result = Server.withPort(0);
      result.serve("/nexus/content/repositories/central/.meta/repository-metadata.xml").withBehaviours(
          new DeliverTemplateBehaviour(200, "text/html", template(getRepositoryMetadataXml(remoteType),
              result)));
      result.serve("/nexus/content/repositories/central/").withBehaviours(
          new DeliverTemplateBehaviour(200, "text/html", template(ROOT_BODY, result)));
      result.serve("/nexus/content/repositories/central/org/").withBehaviours(
          new DeliverBehaviour(403, "text/html", "<h1>Access denied</h1>"));
      return result;
    }
    else if (code == 404) {
      final Server result = Server.withPort(0);
      result.serve("/nexus/content/repositories/central/.meta/repository-metadata.xml").withBehaviours(
          new DeliverTemplateBehaviour(200, "text/html", template(getRepositoryMetadataXml(remoteType),
              result)));
      result.serve("/nexus/content/repositories/central/").withBehaviours(
          new DeliverTemplateBehaviour(200, "text/html", template(ROOT_BODY, result)));
      result.serve("/nexus/content/repositories/central/org/").withBehaviours(
          new DeliverBehaviour(404, "text/html", "<h1>Access denied</h1>"));
      return result;
    }
    else if (code == 500) {
      final Server result = Server.withPort(0);
      result.serve("/nexus/content/repositories/central/.meta/repository-metadata.xml").withBehaviours(
          new DeliverTemplateBehaviour(200, "text/html", template(getRepositoryMetadataXml(remoteType),
              result)));
      result.serve("/nexus/content/repositories/central/").withBehaviours(
          new DeliverTemplateBehaviour(200, "text/html", template(ROOT_BODY, result)));
      result.serve("/nexus/content/repositories/central/org/").withBehaviours(
          new DeliverBehaviour(500, "text/html", "<h1>Access denied</h1>"));
      return result;
    }
    else {
      throw new IllegalArgumentException("Code " + code + " not supported!");
View Full Code Here

  @Test
  public void simple200()
      throws Exception
  {
    final Server server = prepareServer(200, RemoteType.HOSTED);
    server.start();
    try {
      final HttpClient httpClient = new DefaultHttpClient();
      final String repoRoot = server.getUrl().toString() + "/nexus/content/repositories/central/";
      when(mavenProxyRepository.getRemoteUrl()).thenReturn(repoRoot);
      final ScrapeContext context = new ScrapeContext(mavenProxyRepository, httpClient, 2);
      final Page page = Page.getPageFor(context, repoRoot);
      getScraper().scrape(context, page);
      assertThat(context.isStopped(), is(true));
      assertThat(context.isSuccessful(), is(true));
      assertThat(context.getPrefixSource(), notNullValue());
      final List<String> entries = context.getPrefixSource().readEntries();
      assertThat(entries, notNullValue());
      assertThat(entries.size(), equalTo(2));
      assertThat(entries, contains("/archetype-catalog.xml", "/org/sonatype"));
    }
    finally {
      server.stop();
    }
  }
View Full Code Here

  @Test
  public void simple200Proxy()
      throws Exception
  {
    final Server server = prepareServer(200, RemoteType.PROXY);
    server.start();
    try {
      final HttpClient httpClient = new DefaultHttpClient();
      final String repoRoot = server.getUrl().toString() + "/nexus/content/repositories/central/";
      when(mavenProxyRepository.getRemoteUrl()).thenReturn(repoRoot);
      final ScrapeContext context = new ScrapeContext(mavenProxyRepository, httpClient, 2);
      final Page page = Page.getPageFor(context, repoRoot);
      getScraper().scrape(context, page);
      assertThat(context.isStopped(), is(true));
      assertThat(context.isSuccessful(), is(false));
      assertThat(context.getMessage(), containsString("is a proxy"));
    }
    finally {
      server.stop();
    }
  }
View Full Code Here

  @Test
  public void simple200Group()
      throws Exception
  {
    final Server server = prepareServer(200, RemoteType.GROUP);
    server.start();
    try {
      final HttpClient httpClient = new DefaultHttpClient();
      final String repoRoot = server.getUrl().toString() + "/nexus/content/repositories/central/";
      when(mavenProxyRepository.getRemoteUrl()).thenReturn(repoRoot);
      final ScrapeContext context = new ScrapeContext(mavenProxyRepository, httpClient, 2);
      final Page page = Page.getPageFor(context, repoRoot);
      getScraper().scrape(context, page);
      assertThat(context.isStopped(), is(true));
      assertThat(context.isSuccessful(), is(false));
      assertThat(context.getMessage(), containsString("is a group"));
    }
    finally {
      server.stop();
    }
  }
View Full Code Here

  @Test
  public void simple200Shadow()
      throws Exception
  {
    final Server server = prepareServer(200, RemoteType.SHADOW);
    server.start();
    try {
      final HttpClient httpClient = new DefaultHttpClient();
      final String repoRoot = server.getUrl().toString() + "/nexus/content/repositories/central/";
      when(mavenProxyRepository.getRemoteUrl()).thenReturn(repoRoot);
      final ScrapeContext context = new ScrapeContext(mavenProxyRepository, httpClient, 2);
      final Page page = Page.getPageFor(context, repoRoot);
      getScraper().scrape(context, page);
      assertThat(context.isStopped(), is(true));
      assertThat(context.isSuccessful(), is(false));
      assertThat(context.getMessage(), containsString("is not a Maven2"));
    }
    finally {
      server.stop();
    }
  }
View Full Code Here

  @Test
  public void simple403()
      throws Exception
  {
    final Server server = prepareServer(403, RemoteType.HOSTED);
    server.start();
    try {
      final HttpClient httpClient = new DefaultHttpClient();
      final String repoRoot = server.getUrl().toString() + "/nexus/content/repositories/central/";
      when(mavenProxyRepository.getRemoteUrl()).thenReturn(repoRoot);
      final ScrapeContext context = new ScrapeContext(mavenProxyRepository, httpClient, 2);
      final Page page = Page.getPageFor(context, repoRoot);
      getScraper().scrape(context, page);
      assertThat(context.isStopped(), is(false));
      assertThat(context.isSuccessful(), is(false));
    }
    finally {
      server.stop();
    }
  }
View Full Code Here

TOP

Related Classes of org.sonatype.tests.http.server.fluent.Server

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.