// Path: dbpatch-core/src/main/java/org/jsoftware/dbpatch/config/RollbackPatch.java
// public class RollbackPatch extends AbstractPatch {
//     private final Patch patch;
//     private final File originalPatchFile;
//     private boolean missing;
// 
//     public RollbackPatch(Patch patch) {
//         super.setName(patch.getName());
//         this.originalPatchFile = patch.getFile();
//         this.missing = true;
//         this.patch = patch;
//     }
// 
//     public RollbackPatch(Patch patch, File rollbackFile, int rollbackStatementsCount) {
//         this(patch);
//         super.setFile(rollbackFile);
//         super.setStatementCount(rollbackStatementsCount);
//         this.missing = false;
//     }
// 
// 
//     public void setFile(File file) {
//         throw new AssertionError("DO NOT USE IT! It shouldn't be invoked.");
//     }
// 
//     @Override
//     public void setDbDate(Date dbDate) {
//         patch.setDbDate(dbDate);
//     }
// 
//     @Override
//     public void setDbState(DbState dbState) {
//         patch.setDbState(dbState);
//     }
// 
//     @Override
//     public Date getDbDate() {
//         return patch.getDbDate();
//     }
// 
//     @Override
//     public DbState getDbState() {
//         return patch.getDbState();
//     }
// 
//     public File getOriginalPatchFile() {
//         return originalPatchFile;
//     }
// 
//     public boolean isMissing() {
//         return missing;
//     }
// 
// 
//     public boolean canApply() {
//         return !isMissing() && getStatementCount() > 0 && getDbState() == DbState.COMMITTED;
//     }
// }


import org.jsoftware.dbpatch.config.Patch;
import org.jsoftware.dbpatch.config.RollbackPatch;
import org.junit.Assert;
import org.junit.Test;
import java.util.LinkedList;
import java.util.List;
package org.jsoftware.dbpatch.command;



public class RollbackListCommandTest extends AbstractDbCommandTest {

    @Test
    public void testRollbackListCommand() throws Exception {
        RollbackListCommand command = prepareCommand(RollbackListCommand.class);
        List<Patch> patchList = new LinkedList<Patch>();
// Path: dbpatch-core/src/main/java/org/jsoftware/dbpatch/config/RollbackPatch.java
// public class RollbackPatch extends AbstractPatch {
//     private final Patch patch;
//     private final File originalPatchFile;
//     private boolean missing;
// 
//     public RollbackPatch(Patch patch) {
//         super.setName(patch.getName());
//         this.originalPatchFile = patch.getFile();
//         this.missing = true;
//         this.patch = patch;
//     }
// 
//     public RollbackPatch(Patch patch, File rollbackFile, int rollbackStatementsCount) {
//         this(patch);
//         super.setFile(rollbackFile);
//         super.setStatementCount(rollbackStatementsCount);
//         this.missing = false;
//     }
// 
// 
//     public void setFile(File file) {
//         throw new AssertionError("DO NOT USE IT! It shouldn't be invoked.");
//     }
// 
//     @Override
//     public void setDbDate(Date dbDate) {
//         patch.setDbDate(dbDate);
//     }
// 
//     @Override
//     public void setDbState(DbState dbState) {
//         patch.setDbState(dbState);
//     }
// 
//     @Override
//     public Date getDbDate() {
//         return patch.getDbDate();
//     }
// 
//     @Override
//     public DbState getDbState() {
//         return patch.getDbState();
//     }
// 
//     public File getOriginalPatchFile() {
//         return originalPatchFile;
//     }
// 
//     public boolean isMissing() {
//         return missing;
//     }
// 
// 
//     public boolean canApply() {
//         return !isMissing() && getStatementCount() > 0 && getDbState() == DbState.COMMITTED;
//     }
// }


// Path: dbpatch-core/src/test/java/org/jsoftware/dbpatch/command/RollbackListCommandTest.java
import org.jsoftware.dbpatch.config.Patch;
import org.jsoftware.dbpatch.config.RollbackPatch;
import org.junit.Assert;
import org.junit.Test;
import java.util.LinkedList;
import java.util.List;

package org.jsoftware.dbpatch.command;



public class RollbackListCommandTest extends AbstractDbCommandTest {

    @Test
    public void testRollbackListCommand() throws Exception {
        RollbackListCommand command = prepareCommand(RollbackListCommand.class);
        List<Patch> patchList = new LinkedList<Patch>();
        List<RollbackPatch> rollbackPatchList;