package io.github.xhanin.jarup.commands; import io.github.xhanin.jarup.WorkingCopyRule; import org.junit.Rule; import org.junit.Test; import static org.assertj.core.api.Assertions.assertThat; /** * Date: 10/1/14 * Time: 17:23 */ public class AddCommandTest { @Rule public WorkingCopyRule wc = WorkingCopyRule.with("example.jar"); @Test public void should_replace() throws Exception { new AddCommand().baseOn(wc.getWorkingCopy()) .from("src/test/resources/example.xml").to("example1.xml") .execute(); assertThat(wc.getWorkingCopy().readFile("example1.xml", "UTF-8")) .isEqualTo("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" + "<myxml>\n" + " <tag>val</tag>\n" + "</myxml>"); } @Test public void should_add() throws Exception { new AddCommand().baseOn(wc.getWorkingCopy()) .from("src/test/resources/example.xml").to("example-new.xml") .execute(); assertThat(wc.getWorkingCopy().readFile("example-new.xml", "UTF-8")) .isEqualTo("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" + "<myxml>\n" + " <tag>val</tag>\n" + "</myxml>"); } @Test public void should_add_in_new_directory() throws Exception { new AddCommand().baseOn(wc.getWorkingCopy()) .from("src/test/resources/example.xml").to("new/example-new.xml") .execute(); assertThat(wc.getWorkingCopy().readFile("new/example-new.xml", "UTF-8")) .isEqualTo("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" + "<myxml>\n" + " <tag>val</tag>\n" + "</myxml>"); } @Test public void should_parse_params() throws Exception { new AddCommand().baseOn(wc.getWorkingCopy()) .parse(new String[] {"--from=src/test/resources/example.xml", "--to=example1.xml"}) .execute(); assertThat(wc.getWorkingCopy().readFile("example1.xml", "UTF-8")) .isEqualTo("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" + "<myxml>\n" + " <tag>val</tag>\n" + "</myxml>"); } }