1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-07-23 17:05:26 +02:00

Bug 562164 - Add JUnit tests for IMemoryImporter and IMemoryExporter

Prepare to extract IMemoryExporter implementations

Change-Id: Ib1c2cfd15979628c45a7685ef490ef565af8eb48
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
This commit is contained in:
Alexander Fedorov 2020-04-25 12:17:24 +03:00
parent a92105a031
commit 5947786365
5 changed files with 17 additions and 17 deletions

View file

@ -41,10 +41,10 @@ public abstract class FileImport<I extends AutoCloseable> implements ICoreRunnab
protected final WriteMemory write;
protected final Consumer<BigInteger> scroll;
private final File inputFile;
private final File file;
protected FileImport(File input, ImportRequest request, Consumer<BigInteger> scroll) {
this.inputFile = input;
this.file = input;
this.base = request.base();
this.start = request.start();
this.write = request.write();
@ -53,8 +53,8 @@ public abstract class FileImport<I extends AutoCloseable> implements ICoreRunnab
@Override
public void run(IProgressMonitor monitor) throws CoreException {
try (I reader = input(inputFile)) {
BigInteger jobs = BigInteger.valueOf(inputFile.length());
try (I reader = input(file)) {
BigInteger jobs = BigInteger.valueOf(file.length());
BigInteger factor = BigInteger.ONE;
if (jobs.compareTo(BigInteger.valueOf(0x7FFFFFFF)) > 0) {
factor = jobs.divide(BigInteger.valueOf(0x7FFFFFFF));

View file

@ -13,30 +13,30 @@
*******************************************************************************/
package org.eclipse.cdt.debug.internal.core.memory.transport;
import org.eclipse.cdt.debug.core.memory.transport.FileImport;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.ICoreRunnable;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status;
import org.eclipse.core.runtime.jobs.Job;
/**
* Runs {@link FileImport} operation as a {@link Job}
* Runs memory transport runnable as a {@link Job}
*
*/
public final class FileImportJob extends Job {
public final class TransportJob extends Job {
private final FileImport<?> fileImport;
private final ICoreRunnable runnable;
public FileImportJob(String name, FileImport<?> fileImport) {
public TransportJob(String name, ICoreRunnable runnable) {
super(name);
this.fileImport = fileImport;
this.runnable = runnable;
}
@Override
protected IStatus run(IProgressMonitor monitor) {
try {
fileImport.run(monitor);
runnable.run(monitor);
} catch (CoreException e) {
return e.getStatus();
}

View file

@ -20,7 +20,7 @@ import java.math.BigInteger;
import java.util.function.Consumer;
import org.eclipse.cdt.debug.core.memory.transport.ImportRequest;
import org.eclipse.cdt.debug.internal.core.memory.transport.FileImportJob;
import org.eclipse.cdt.debug.internal.core.memory.transport.TransportJob;
import org.eclipse.cdt.debug.internal.core.memory.transport.PlainTextImport;
import org.eclipse.cdt.debug.internal.ui.memory.transport.ScrollMemory;
import org.eclipse.cdt.debug.internal.ui.memory.transport.WriteMemoryBlock;
@ -270,7 +270,7 @@ public class PlainTextImporter implements IMemoryImporter {
ImportRequest request = new ImportRequest(block.getBigBaseAddress(), fStartAddress,
new WriteMemoryBlock(block));
PlainTextImport memoryImport = new PlainTextImport(fInputFile, request, scroll);
FileImportJob job = new FileImportJob(//
TransportJob job = new TransportJob(//
"Memory Import from Plain Text File", memoryImport);
job.setUser(true);
job.schedule();

View file

@ -20,7 +20,7 @@ import java.math.BigInteger;
import java.util.function.Consumer;
import org.eclipse.cdt.debug.core.memory.transport.ImportRequest;
import org.eclipse.cdt.debug.internal.core.memory.transport.FileImportJob;
import org.eclipse.cdt.debug.internal.core.memory.transport.TransportJob;
import org.eclipse.cdt.debug.internal.core.memory.transport.RAWBinaryImport;
import org.eclipse.cdt.debug.internal.ui.memory.transport.ScrollMemory;
import org.eclipse.cdt.debug.internal.ui.memory.transport.WriteMemoryBlock;
@ -253,7 +253,7 @@ public class RAWBinaryImporter implements IMemoryImporter {
ImportRequest request = new ImportRequest(block.getBigBaseAddress(), fStartAddress,
new WriteMemoryBlock(block));
RAWBinaryImport memoryImport = new RAWBinaryImport(fInputFile, request, scroll);
FileImportJob job = new FileImportJob(//
TransportJob job = new TransportJob(//
"Memory Import from RAW Binary File", memoryImport);
job.setUser(true);
job.schedule();

View file

@ -20,7 +20,7 @@ import java.math.BigInteger;
import java.util.function.Consumer;
import org.eclipse.cdt.debug.core.memory.transport.ImportRequest;
import org.eclipse.cdt.debug.internal.core.memory.transport.FileImportJob;
import org.eclipse.cdt.debug.internal.core.memory.transport.TransportJob;
import org.eclipse.cdt.debug.internal.core.memory.transport.SRecordImport;
import org.eclipse.cdt.debug.internal.ui.memory.transport.ScrollMemory;
import org.eclipse.cdt.debug.internal.ui.memory.transport.WriteMemoryBlock;
@ -342,7 +342,7 @@ public class SRecordImporter implements IMemoryImporter {
new WriteMemoryBlock(block));
SRecordImport memoryImport = new SRecordImport(fInputFile, request, scroll,
fProperties.getBoolean(TRANSFER_CUSTOM_START_ADDRESS));
FileImportJob job = new FileImportJob(//
TransportJob job = new TransportJob(//
"Memory Import from S-Record File", memoryImport);
job.setUser(true);
job.schedule();