public void testFailedGet() throws Exception {
    setupRepositories();

    setupWagonTestingFixtures();

    message("Getting test artifact from test repository " + testRepository);

    Wagon wagon = getWagon();

    wagon.addTransferListener(checksumObserver);

    wagon.connect(testRepository, getAuthInfo());

    destFile = FileTestUtils.createUniqueFile(getName(), getName());

    destFile.deleteOnExit();

    try {
      wagon.get("fubar.txt", destFile);
      fail("File was found when it shouldn't have been");
    } catch (ResourceDoesNotExistException e) {
      // expected
      assertTrue(true);
    } finally {
      wagon.removeTransferListener(checksumObserver);

      wagon.disconnect();

      tearDownWagonTestingFixtures();
    }
  }
  protected void assertResourcesAreInRemoteSide(Wagon wagon, List<String> resourceNames)
      throws IOException, TransferFailedException, ResourceDoesNotExistException,
          AuthorizationException {
    for (String resourceName : resourceNames) {
      File destFile = FileTestUtils.createUniqueFile(getName(), resourceName);

      destFile.deleteOnExit();

      wagon.get(resourceName, destFile);
    }
  }
 /**
  * Assert that a resource does not exist in the remote wagon system
  *
  * @param wagon wagon to get the resource from
  * @param resourceName name of the resource
  * @throws IOException if a temp file can't be created
  * @throws AuthorizationException
  * @throws TransferFailedException
  * @since 1.0-beta-1
  */
 protected void assertNotExists(Wagon wagon, String resourceName)
     throws IOException, TransferFailedException, AuthorizationException {
   File tmpFile = File.createTempFile("wagon", null);
   try {
     wagon.get(resourceName, tmpFile);
     fail("Resource exists: " + resourceName);
   } catch (ResourceDoesNotExistException e) {
     // ok
   } finally {
     tmpFile.delete();
   }
 }
  /**
   * Test for putting a directory with a destination that multiple directories deep, all of which
   * haven't been created.
   *
   * @throws Exception
   * @since 1.0-beta-2
   */
  public void testWagonPutDirectoryDeepDestination() throws Exception {
    setupRepositories();

    setupWagonTestingFixtures();

    Wagon wagon = getWagon();

    if (wagon.supportsDirectoryCopy()) {
      sourceFile = new File(FileTestUtils.getTestOutputDir(), "deep0/deep1/deep2");

      FileUtils.deleteDirectory(sourceFile);

      writeTestFile("test-resource-1.txt");
      writeTestFile("a/test-resource-2.txt");
      writeTestFile("a/b/test-resource-3.txt");
      writeTestFile("c/test-resource-4.txt");
      writeTestFile("d/e/f/test-resource-5.txt");

      wagon.connect(testRepository, getAuthInfo());

      wagon.putDirectory(sourceFile, "deep0/deep1/deep2");

      destFile = FileTestUtils.createUniqueFile(getName(), getName());

      destFile.deleteOnExit();

      wagon.get("deep0/deep1/deep2/test-resource-1.txt", destFile);
      wagon.get("deep0/deep1/deep2/a/test-resource-2.txt", destFile);
      wagon.get("deep0/deep1/deep2/a/b/test-resource-3.txt", destFile);
      wagon.get("deep0/deep1/deep2/c/test-resource-4.txt", destFile);
      wagon.get("deep0/deep1/deep2/d/e/f/test-resource-5.txt", destFile);

      wagon.disconnect();
    }

    tearDownWagonTestingFixtures();
  }
  protected void getFile(int expectedSize) throws Exception {
    destFile = FileTestUtils.createUniqueFile(getName(), getName());
    destFile.deleteOnExit();

    Wagon wagon = getWagon();

    ProgressAnswer progressAnswer = replaceMockForGet(wagon, expectedSize);

    message("Getting test artifact from test repository " + testRepository);

    connectWagon(wagon);

    wagon.get(this.resource, destFile);

    disconnectWagon(wagon);

    verifyMock(progressAnswer, expectedSize);
  }