_ fix test pt.1

pull/1/head
io42630 3 years ago
parent 0da4772388
commit 63b08df477

@ -2,48 +2,54 @@ package com.olexyn.ensync.files;
import com.olexyn.ensync.Execute; import com.olexyn.ensync.Execute;
import com.olexyn.ensync.Flow; import com.olexyn.ensync.Flow;
import com.olexyn.ensync.LogUtil;
import com.olexyn.ensync.Tools; import com.olexyn.ensync.Tools;
import com.olexyn.ensync.artifacts.DataRoot;
import com.olexyn.ensync.artifacts.SyncBundle; import com.olexyn.ensync.artifacts.SyncBundle;
import com.olexyn.ensync.artifacts.SyncDirectory;
import org.json.JSONException; import org.json.JSONException;
import org.json.JSONObject;
import org.junit.Assert; import org.junit.Assert;
import org.junit.Test; import org.junit.Test;
import java.io.File; import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter; import java.time.format.DateTimeFormatter;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.logging.Logger;
public class FileTest { public class FileTest {
private static final Logger LOGGER = LogUtil.get(FileTest.class);
final public static Thread FLOW_THREAD = new Thread(new Flow(), "flow"); final public static Thread FLOW_THREAD = new Thread(new Flow(), "flow");
final private static Tools tools = new Tools(); final private static Tools tools = new Tools();
final private HashMap<String, SyncBundle> mapOfSyncMaps = DataRoot.get();
public long fileOpsPause = 800;
public long assertPause = 4000;
private final static long FILE_OPS_PAUSE = 800;
private final static long WAIT_BEFORE_ASSERT = 4000;
Execute x = new Execute();
private final static Execute x = new Execute();
private static final String TEST_RESOURCES = System.getProperty("user.dir") + "/src/test/resources"; private static final String TEMP_DIR = System.getProperty("user.dir") + "/src/test/temp";
private static final String RESOURCES_DIR = System.getProperty("user.dir") + "/src/test/resources";
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ISO_LOCAL_DATE_TIME; DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ISO_LOCAL_DATE_TIME;
private static final String A_DIR = TEMP_DIR + "/a";
private static final String B_DIR = TEMP_DIR + "/b";
private final TestFile a = new TestFile(TEST_RESOURCES + "/a/testfile.txt"); private final TestFile aTestFile = new TestFile(A_DIR + "/testfile.txt");
private final TestFile b = new TestFile(TEST_RESOURCES + "/b/testfile.txt"); private final TestFile bTestFile = new TestFile(B_DIR + "/testfile.txt");
private List<String> createFile(File file) { private List<String> createFile(File file) {
List<String> stringList = new ArrayList<>(); List<String> stringList = new ArrayList<>();
try { try {
stringList.add(LocalDateTime.now().format(dateTimeFormatter) + " CREATED"); stringList.add(LocalDateTime.now().format(dateTimeFormatter) + " CREATED");
tools.writeStringListToFile(file.getAbsolutePath(), stringList); tools.writeStringListToFile(file.getAbsolutePath(), stringList);
Thread.sleep(fileOpsPause); Thread.sleep(FILE_OPS_PAUSE);
} catch (InterruptedException e) { } catch (InterruptedException e) {
System.out.println(""); System.out.println("");
} }
@ -56,7 +62,7 @@ public class FileTest {
stringList.addAll(tools.fileToLines(file)); stringList.addAll(tools.fileToLines(file));
stringList.add(LocalDateTime.now().format(dateTimeFormatter) + " UPDATED"); stringList.add(LocalDateTime.now().format(dateTimeFormatter) + " UPDATED");
tools.writeStringListToFile(file.getAbsolutePath(), stringList); tools.writeStringListToFile(file.getAbsolutePath(), stringList);
Thread.sleep(fileOpsPause); Thread.sleep(FILE_OPS_PAUSE);
} catch (InterruptedException e) { } catch (InterruptedException e) {
System.out.println(""); System.out.println("");
} }
@ -64,19 +70,24 @@ public class FileTest {
} }
private void deleteFile(File file) { private static void deleteFile(File file) {
try { try {
List<String> cmd = List.of("rm", "-r", file.getAbsolutePath()); Files.delete(file.toPath());
x.execute(cmd); Thread.sleep(FILE_OPS_PAUSE);
Thread.sleep(fileOpsPause); } catch (IOException | InterruptedException e) {
} catch (InterruptedException e) { LOGGER.severe("Could not delete file.");
System.out.println("");
} }
} }
private void cleanDirs() { private void cleanDirs(Path... dirs) {
deleteFile(a); for (var dir : dirs) {
deleteFile(b); try {
Files.delete(dir);
Files.createDirectory(dir);
} catch (IOException e) {
Assert.fail();
}
}
} }
/** /**
@ -85,18 +96,9 @@ public class FileTest {
*/ */
@Test @Test
public void doSimpleFileTests() throws JSONException { public void doSimpleFileTests() throws JSONException {
SyncBundle syncMap = new SyncBundle("testSyncBundle");
String configPath = System.getProperty("user.dir") + "/src/test/resources/test-config.json"; syncMap.addDirectory(A_DIR);
String configString = tools.fileToString(new File(configPath)); syncMap.addDirectory(B_DIR);
JSONObject jsonMapOfSyncMaps = new JSONObject(configString).getJSONObject("jsonMapOfSyncMaps");
// for (String key : jsonMapOfSyncMaps.keySet()) {
// SyncMap syncMap = new SyncMap(key);
// for (Object jsonSyncDirPath : jsonMapOfSyncMaps.getJSONArray(key).toList()) {
// syncMap.addDirectory(jsonSyncDirPath.toString());
// }
// MapOfSyncMaps.get().put(key, syncMap);
//
// }
FLOW_THREAD.start(); FLOW_THREAD.start();
@ -106,137 +108,137 @@ public class FileTest {
cleanDirs(); cleanDirs();
// 1 // 1
createFile(a); createFile(aTestFile);
deleteFile(a); deleteFile(aTestFile);
try { try {
Thread.sleep(assertPause); Thread.sleep(WAIT_BEFORE_ASSERT);
} catch (InterruptedException ignored) {} } catch (InterruptedException ignored) {}
Assert.assertFalse(a.exists()); Assert.assertFalse(aTestFile.exists());
Assert.assertFalse(b.exists()); Assert.assertFalse(bTestFile.exists());
cleanDirs(); cleanDirs();
// 2 // 2
createFile(b); createFile(bTestFile);
createFile(a); createFile(aTestFile);
deleteFile(a); deleteFile(aTestFile);
try { try {
Thread.sleep(assertPause); Thread.sleep(WAIT_BEFORE_ASSERT);
} catch (InterruptedException ignored) {} } catch (InterruptedException ignored) {}
Assert.assertFalse(a.exists()); Assert.assertFalse(aTestFile.exists());
Assert.assertFalse(b.exists()); Assert.assertFalse(bTestFile.exists());
cleanDirs(); cleanDirs();
// 3 // 3
createFile(a); createFile(aTestFile);
createFile(b); createFile(bTestFile);
deleteFile(a); deleteFile(aTestFile);
deleteFile(b); deleteFile(bTestFile);
try { try {
Thread.sleep(assertPause); Thread.sleep(WAIT_BEFORE_ASSERT);
} catch (InterruptedException ignored) {} } catch (InterruptedException ignored) {}
Assert.assertFalse(a.exists()); Assert.assertFalse(aTestFile.exists());
Assert.assertFalse(b.exists()); Assert.assertFalse(bTestFile.exists());
cleanDirs(); cleanDirs();
// 4 // 4
createFile(a); createFile(aTestFile);
deleteFile(a); deleteFile(aTestFile);
sideloadContentB = createFile(b); sideloadContentB = createFile(bTestFile);
try { try {
Thread.sleep(assertPause); Thread.sleep(WAIT_BEFORE_ASSERT);
} catch (InterruptedException ignored) {} } catch (InterruptedException ignored) {}
Assert.assertEquals(sideloadContentB, a.updateContent().getContent()); Assert.assertEquals(sideloadContentB, aTestFile.updateContent().getContent());
cleanDirs(); cleanDirs();
// 5 // 5
createFile(a); createFile(aTestFile);
createFile(b); createFile(bTestFile);
deleteFile(a); deleteFile(aTestFile);
sideloadContentB = updateFile(b); sideloadContentB = updateFile(bTestFile);
try { try {
Thread.sleep(assertPause); Thread.sleep(WAIT_BEFORE_ASSERT);
} catch (InterruptedException ignored) {} } catch (InterruptedException ignored) {}
Assert.assertEquals(sideloadContentB, a.updateContent().getContent()); Assert.assertEquals(sideloadContentB, aTestFile.updateContent().getContent());
cleanDirs(); cleanDirs();
// 6 // 6
sideloadContentA = createFile(a); sideloadContentA = createFile(aTestFile);
try { try {
Thread.sleep(assertPause); Thread.sleep(WAIT_BEFORE_ASSERT);
} catch (InterruptedException ignored) {} } catch (InterruptedException ignored) {}
Assert.assertEquals(sideloadContentA, b.updateContent().getContent()); Assert.assertEquals(sideloadContentA, bTestFile.updateContent().getContent());
// 7 // 7
createFile(b); createFile(bTestFile);
createFile(a); createFile(aTestFile);
try { try {
Thread.sleep(assertPause); Thread.sleep(WAIT_BEFORE_ASSERT);
} catch (InterruptedException ignored) {} } catch (InterruptedException ignored) {}
Assert.assertEquals(sideloadContentA, b.updateContent().getContent()); Assert.assertEquals(sideloadContentA, bTestFile.updateContent().getContent());
// 8 // 8
createFile(a); createFile(aTestFile);
createFile(b); createFile(bTestFile);
deleteFile(b); deleteFile(bTestFile);
try { try {
Thread.sleep(assertPause); Thread.sleep(WAIT_BEFORE_ASSERT);
} catch (InterruptedException ignored) {} } catch (InterruptedException ignored) {}
Assert.assertFalse(a.exists()); Assert.assertFalse(aTestFile.exists());
Assert.assertFalse(b.exists()); Assert.assertFalse(bTestFile.exists());
cleanDirs(); cleanDirs();
//9 //9
createFile(a); createFile(aTestFile);
sideloadContentB = createFile(b); sideloadContentB = createFile(bTestFile);
try { try {
Thread.sleep(assertPause); Thread.sleep(WAIT_BEFORE_ASSERT);
} catch (InterruptedException ignored) {} } catch (InterruptedException ignored) {}
Assert.assertEquals(sideloadContentB, a.updateContent().getContent()); Assert.assertEquals(sideloadContentB, aTestFile.updateContent().getContent());
cleanDirs(); cleanDirs();
// 10 // 10
createFile(b); createFile(bTestFile);
createFile(a); createFile(aTestFile);
sideloadContentB = updateFile(b); sideloadContentB = updateFile(bTestFile);
try { try {
Thread.sleep(assertPause); Thread.sleep(WAIT_BEFORE_ASSERT);
} catch (InterruptedException ignored) {} } catch (InterruptedException ignored) {}
Assert.assertEquals(sideloadContentB, a.updateContent().getContent()); Assert.assertEquals(sideloadContentB, aTestFile.updateContent().getContent());
// 11 // 11
createFile(a); createFile(aTestFile);
sideloadContentA = updateFile(a); sideloadContentA = updateFile(aTestFile);
try { try {
Thread.sleep(assertPause); Thread.sleep(WAIT_BEFORE_ASSERT);
} catch (InterruptedException ignored) {} } catch (InterruptedException ignored) {}
Assert.assertEquals(sideloadContentA, b.updateContent().getContent()); Assert.assertEquals(sideloadContentA, bTestFile.updateContent().getContent());
// 12 // 12
createFile(a); createFile(aTestFile);
createFile(b); createFile(bTestFile);
sideloadContentA = updateFile(a); sideloadContentA = updateFile(aTestFile);
try { try {
Thread.sleep(assertPause); Thread.sleep(WAIT_BEFORE_ASSERT);
} catch (InterruptedException ignored) {} } catch (InterruptedException ignored) {}
Assert.assertEquals(sideloadContentA, b.updateContent().getContent()); Assert.assertEquals(sideloadContentA, bTestFile.updateContent().getContent());
// 13 // 13
createFile(a); createFile(aTestFile);
createFile(b); createFile(bTestFile);
updateFile(a); updateFile(aTestFile);
deleteFile(b); deleteFile(bTestFile);
try { try {
Thread.sleep(assertPause); Thread.sleep(WAIT_BEFORE_ASSERT);
} catch (InterruptedException ignored) {} } catch (InterruptedException ignored) {}
Assert.assertFalse(a.exists()); Assert.assertFalse(aTestFile.exists());
Assert.assertFalse(b.exists()); Assert.assertFalse(bTestFile.exists());
cleanDirs(); cleanDirs();
// 14 // 14
createFile(a); createFile(aTestFile);
updateFile(a); updateFile(aTestFile);
sideloadContentB = createFile(b); sideloadContentB = createFile(bTestFile);
try { try {
Thread.sleep(assertPause); Thread.sleep(WAIT_BEFORE_ASSERT);
} catch (InterruptedException ignored) {} } catch (InterruptedException ignored) {}
Assert.assertEquals(sideloadContentB, a.updateContent().getContent()); Assert.assertEquals(sideloadContentB, aTestFile.updateContent().getContent());
cleanDirs(); cleanDirs();
// 15 // 15
createFile(a); createFile(aTestFile);
createFile(b); createFile(bTestFile);
updateFile(a); updateFile(aTestFile);
sideloadContentB = updateFile(b); sideloadContentB = updateFile(bTestFile);
try { try {
Thread.sleep(assertPause); Thread.sleep(WAIT_BEFORE_ASSERT);
} catch (InterruptedException ignored) {} } catch (InterruptedException ignored) {}
Assert.assertEquals(sideloadContentB, a.updateContent().getContent()); Assert.assertEquals(sideloadContentB, aTestFile.updateContent().getContent());
cleanDirs(); cleanDirs();
} }

@ -1,8 +0,0 @@
{
"jsonMapOfSyncMaps": {
"syncMap1": [
"/home/user/ws/idea/ensync/src/test/resources/a",
"/home/user/ws/idea/ensync/src/test/resources/b"
]
}
}
Loading…
Cancel
Save