summaryrefslogtreecommitdiff
path: root/updater/testSrc/com/intellij/updater/UpdaterTestCase.java
blob: dea5fbdd7c6de1795b6e685dfbff6567af53d122 (plain)
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
package com.intellij.updater;

import com.intellij.openapi.application.ex.PathManagerEx;
import com.intellij.openapi.util.io.FileUtil;
import com.intellij.testFramework.fixtures.IdeaTestFixtureFactory;
import com.intellij.testFramework.fixtures.TempDirTestFixture;
import org.junit.After;
import org.junit.Before;

import java.io.File;

public abstract class UpdaterTestCase {
  protected static final UpdaterUI TEST_UI = new ConsoleUpdaterUI(){
    @Override
    public void startProcess(String title) {
    }

    @Override
    public void setStatus(String status) {
    }
  };

  protected CheckSums CHECKSUMS;
  private TempDirTestFixture myTempDirFixture;

  @Before
  public void setUp() throws Exception {
    Runner.initLogger();
    myTempDirFixture = IdeaTestFixtureFactory.getFixtureFactory().createTempDirTestFixture();
    myTempDirFixture.setUp();

    FileUtil.copyDir(PathManagerEx.findFileUnderCommunityHome("updater/testData"), getDataDir());

    boolean windowsLineEnds = new File(getDataDir(), "Readme.txt").length() == 7132;
    CHECKSUMS = new CheckSums(windowsLineEnds);
  }

  @After
  public void tearDown() throws Exception {
    myTempDirFixture.tearDown();
    Utils.cleanup();
  }

  public File getDataDir() {
    return getTempFile("data");
  }

  public File getTempFile(String fileName) {
    return new File(myTempDirFixture.getTempDirPath(), fileName);
  }

  protected static class CheckSums {
    public final long README_TXT;
    public final long IDEA_BAT;
    public final long ANNOTATIONS_JAR;
    public final long BOOTSTRAP_JAR;
    public final long FOCUSKILLER_DLL;

    public CheckSums(boolean windowsLineEnds) {
      if (windowsLineEnds) {
        README_TXT = 1272723667L;
        IDEA_BAT = 3088608749L;
      }
      else {
        README_TXT = 7256327L;
        IDEA_BAT = 1493936069L;
      }
      ANNOTATIONS_JAR = 2119442657L;
      BOOTSTRAP_JAR = 2082851308L;
      FOCUSKILLER_DLL = 1991212227L;
    }
  }
}