| OLD | NEW | 
|---|
| 1 /* | 1 /* | 
| 2  * This file is part of Adblock Plus <https://adblockplus.org/>, | 2  * This file is part of Adblock Plus <https://adblockplus.org/>, | 
| 3  * Copyright (C) 2006-2016 Eyeo GmbH | 3  * Copyright (C) 2006-2016 Eyeo GmbH | 
| 4  * | 4  * | 
| 5  * Adblock Plus is free software: you can redistribute it and/or modify | 5  * Adblock Plus is free software: you can redistribute it and/or modify | 
| 6  * it under the terms of the GNU General Public License version 3 as | 6  * it under the terms of the GNU General Public License version 3 as | 
| 7  * published by the Free Software Foundation. | 7  * published by the Free Software Foundation. | 
| 8  * | 8  * | 
| 9  * Adblock Plus is distributed in the hope that it will be useful, | 9  * Adblock Plus is distributed in the hope that it will be useful, | 
| 10  * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10  * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
| 11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
| 12  * GNU General Public License for more details. | 12  * GNU General Public License for more details. | 
| 13  * | 13  * | 
| 14  * You should have received a copy of the GNU General Public License | 14  * You should have received a copy of the GNU General Public License | 
| 15  * along with Adblock Plus.  If not, see <http://www.gnu.org/licenses/>. | 15  * along with Adblock Plus.  If not, see <http://www.gnu.org/licenses/>. | 
| 16  */ | 16  */ | 
| 17 | 17 | 
| 18 package org.adblockplus.libadblockplus.tests; | 18 package org.adblockplus.libadblockplus.tests; | 
| 19 | 19 | 
| 20 import org.adblockplus.libadblockplus.AppInfo; | 20 import org.adblockplus.libadblockplus.AppInfo; | 
|  | 21 import org.adblockplus.libadblockplus.FileSystemUtils; | 
| 21 import org.adblockplus.libadblockplus.JsEngine; | 22 import org.adblockplus.libadblockplus.JsEngine; | 
| 22 import org.adblockplus.libadblockplus.LazyLogSystem; |  | 
| 23 import org.adblockplus.libadblockplus.ThrowingWebRequest; | 23 import org.adblockplus.libadblockplus.ThrowingWebRequest; | 
| 24 | 24 | 
| 25 import android.test.AndroidTestCase; | 25 import android.test.AndroidTestCase; | 
| 26 | 26 | 
|  | 27 import java.io.File; | 
|  | 28 import java.io.IOException; | 
|  | 29 | 
| 27 public abstract class BaseJsTest extends AndroidTestCase | 30 public abstract class BaseJsTest extends AndroidTestCase | 
| 28 { | 31 { | 
| 29     protected JsEngine jsEngine; | 32   protected JsEngine jsEngine; | 
|  | 33   protected File tmpFileSystemPath; | 
|  | 34 | 
|  | 35   protected File buildTmpFileSystemPath() throws IOException | 
|  | 36   { | 
|  | 37     File tmpFileSystemPath = FileSystemUtils | 
|  | 38       .generateUniqueFile(null, ".fs", getContext().getCacheDir()); | 
|  | 39     tmpFileSystemPath.mkdirs(); | 
|  | 40     return tmpFileSystemPath; | 
|  | 41   } | 
| 30 | 42 | 
| 31     @Override | 43   @Override | 
| 32     protected void setUp() throws Exception | 44   protected void setUp() throws Exception | 
|  | 45   { | 
|  | 46     super.setUp(); | 
|  | 47 | 
|  | 48     jsEngine = new JsEngine(AppInfo.builder().build()); | 
|  | 49     jsEngine.setDefaultLogSystem(); | 
|  | 50 | 
|  | 51     // we need to generate new file system path in order | 
|  | 52     // not to have JsEngine state from the previous test | 
|  | 53     tmpFileSystemPath = buildTmpFileSystemPath(); | 
|  | 54     jsEngine.setDefaultFileSystem(tmpFileSystemPath.getAbsolutePath()); | 
|  | 55     jsEngine.setWebRequest(new ThrowingWebRequest()); | 
|  | 56   } | 
|  | 57 | 
|  | 58   protected void cleanupFileSystem() | 
|  | 59   { | 
|  | 60     if (tmpFileSystemPath != null && tmpFileSystemPath.exists()) | 
| 33     { | 61     { | 
| 34         super.setUp(); | 62       FileSystemUtils.delete(tmpFileSystemPath, true); | 
|  | 63       tmpFileSystemPath = null; | 
|  | 64     } | 
|  | 65   } | 
| 35 | 66 | 
| 36         jsEngine = new JsEngine(AppInfo.builder().build()); | 67   @Override | 
| 37         jsEngine.setDefaultLogSystem(); | 68   protected void tearDown() throws Exception | 
| 38         jsEngine.setDefaultFileSystem(getContext().getFilesDir().getAbsolutePath
    ()); | 69   { | 
| 39         jsEngine.setWebRequest(new ThrowingWebRequest()); | 70     cleanupFileSystem(); | 
| 40     } | 71     super.tearDown(); | 
|  | 72   } | 
| 41 } | 73 } | 
| OLD | NEW | 
|---|