Esempio n. 1
0
 @Test
 public void shouldExportFile() throws Exception {
   final File file = File.createTempFile("export", ".csv");
   file.delete();
   Thread thread =
       new Thread() {
         @Override
         public void run() {
           log.info("process download dialog");
           app.getAutoItHelper()
               .winWaitAndActivate("Windows Internet Explorer", "", 5000)
               .click("Button3")
               .winWaitAndActivate("—охранить как", "", 5000)
               .send("Edit1", file.getAbsolutePath())
               .click("Button1");
         }
       };
   thread.start();
   log.info("click export");
   app.getNavigationHelper().clickExport();
   Thread.sleep(2000);
   thread.join();
   // дождатьс¤ сохранени¤ файла
   // проверить содержимое файла
 }
  /**
   * Time a multi-threaded access to a cache.
   *
   * @return the timing stopwatch
   */
  private <V> StopWatch timeMultiThreaded(
      String id, final Map<Integer, V> map, ValueFactory<V> factory) throws InterruptedException {

    StopWatch stopWatch = new StopWatch(id);
    for (int i = 0; i < 500; i++) {
      map.put(i, factory.newValue(i));
    }
    Thread[] threads = new Thread[30];
    stopWatch.start("Running threads");
    for (int threadIndex = 0; threadIndex < threads.length; threadIndex++) {
      threads[threadIndex] =
          new Thread("Cache access thread " + threadIndex) {
            @Override
            public void run() {
              for (int j = 0; j < 1000; j++) {
                for (int i = 0; i < 1000; i++) {
                  map.get(i);
                }
              }
            }
          };
    }
    for (Thread thread : threads) {
      thread.start();
    }

    for (Thread thread : threads) {
      if (thread.isAlive()) {
        thread.join(2000);
      }
    }
    stopWatch.stop();
    return stopWatch;
  }