File: Speedtest.java

package info (click to toggle)
qt6-webengine 6.10.2%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 4,671,016 kB
  • sloc: cpp: 22,197,192; ansic: 7,781,909; javascript: 3,732,826; asm: 884,326; python: 854,764; xml: 640,231; java: 234,410; sh: 105,601; objc: 99,884; perl: 72,440; cs: 49,062; sql: 44,944; makefile: 25,638; fortran: 24,137; pascal: 23,962; tcl: 9,609; yacc: 8,631; php: 6,473; lisp: 4,674; lex: 1,327; ruby: 914; awk: 339; csh: 120; sed: 36
file content (55 lines) | stat: -rw-r--r-- 1,661 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
// Copyright 2010 Google Inc. All Rights Reserved.

/**
 * Diff Speed Test
 *
 * Compile from diff-match-patch/java with:
 * javac -d classes src/name/fraser/neil/plaintext/diff_match_patch.java tests/name/fraser/neil/plaintext/Speedtest.java
 * Execute with:
 * java -classpath classes name/fraser/neil/plaintext/Speedtest
 *
 * @author fraser@google.com (Neil Fraser)
 */

package name.fraser.neil.plaintext;

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

public class Speedtest {

  public static void main(String args[]) throws IOException {
    String text1 = readFile("tests/name/fraser/neil/plaintext/Speedtest1.txt");
    String text2 = readFile("tests/name/fraser/neil/plaintext/Speedtest2.txt");

    diff_match_patch dmp = new diff_match_patch();
    dmp.Diff_Timeout = 0;

    // Execute one reverse diff as a warmup.
    dmp.diff_main(text2, text1, false);

    long start_time = System.nanoTime();
    dmp.diff_main(text1, text2, false);
    long end_time = System.nanoTime();
    System.out.printf("Elapsed time: %f\n", ((end_time - start_time) / 1000000000.0));
  }

  private static String readFile(String filename) throws IOException {
    // Read a file from disk and return the text contents.
    StringBuilder sb = new StringBuilder();
    FileReader input = new FileReader(filename);
    BufferedReader bufRead = new BufferedReader(input);
    try {
      String line = bufRead.readLine();
      while (line != null) {
        sb.append(line).append('\n');
        line = bufRead.readLine();
      }
    } finally {
      bufRead.close();
      input.close();
    }
    return sb.toString();
  }
}