TestBookParser.java
package io.github.giulong.spectrum.utils.testbook.parsers;
import com.fasterxml.jackson.annotation.JsonPropertyDescription;
import com.fasterxml.jackson.annotation.JsonSubTypes;
import com.fasterxml.jackson.annotation.JsonSubTypes.Type;
import com.fasterxml.jackson.annotation.JsonTypeInfo;
import io.github.giulong.spectrum.pojos.testbook.TestBookTest;
import lombok.Getter;
import java.util.List;
import static com.fasterxml.jackson.annotation.JsonTypeInfo.As.WRAPPER_OBJECT;
import static com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME;
@JsonTypeInfo(use = NAME, include = WRAPPER_OBJECT)
@JsonSubTypes({
@Type(value = TxtTestBookParser.class, name = "txt"),
@Type(value = YamlTestBookParser.class, name = "yaml"),
@Type(value = CsvTestBookParser.class, name = "csv"),
})
@Getter
public abstract class TestBookParser {
@JsonPropertyDescription("Path of the testBook")
protected String path;
public abstract List<TestBookTest> parse();
}