<commit_before>/*
 * #%L
 * Wisdom-Framework
 * %%
 * Copyright (C) 2013 - 2014 Wisdom Framework
 * %%
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * 
 *      http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 * #L%
 */
package org.wisdom.asciidoc;

import com.google.common.collect.ImmutableList;
import org.apache.commons.io.FileUtils;
import org.apache.maven.plugin.MojoExecutionException;
import org.junit.Before;
import org.junit.Test;

import java.io.File;
import java.io.IOException;

import static org.assertj.core.api.Assertions.assertThat;

/**
 * Checks the behavior of the Asciidoc Mojo
 */
public class AsciidocMojoTest {

    File basedir = new File("target/workbench/project");

    @Before
    public void setUp() {
        FileUtils.deleteQuietly(basedir);
    }

    @Test
    public void testInitializationWithNoFiles() throws MojoExecutionException {
        AsciidocMojo mojo = new AsciidocMojo();
        mojo.basedir = basedir;
        mojo.buildDirectory = new File(mojo.basedir, "target");
        mojo.execute();

        assertThat(mojo.instance).isNotNull();
        assertThat(mojo.getAsciidoctorInstance()).isNotNull();
        assertThat(mojo.internalSources).isEqualTo(new File(mojo.basedir, "src/main/resources/assets"));
        assertThat(mojo.externalSources).isEqualTo(new File(mojo.basedir, "src/main/assets"));
        assertThat(mojo.destinationForInternals).isEqualTo(new File(mojo.buildDirectory, "classes/assets"));
        assertThat(mojo.destinationForExternals).isEqualTo(new File(mojo.buildDirectory, "wisdom/assets"));
    }

    @Test
    public void testInitializationWithUnfilteredInternalAndExternalFilesUsingRegularExtensions() throws
            MojoExecutionException, IOException {
        AsciidocMojo mojo = new AsciidocMojo();
        mojo.basedir = basedir;
        mojo.buildDirectory = new File(mojo.basedir, "target");
        mojo.doctype = "article";
        mojo.backend = "html5";
        FileUtils.copyFile(new File("src/test/resources/hello.ad"), new File(basedir,
                "src/main/resources/assets/doc/hello.ad"));
        FileUtils.copyFile(new File("src/test/resources/hello.ad"), new File(basedir,
                "src/main/assets/doc/hello.asciidoc"));
        mojo.execute();

        final File internal = new File(mojo.destinationForInternals, "doc/hello.html");
        final File external = new File(mojo.destinationForExternals, "doc/hello.html");
        assertThat(internal).isFile();
        assertThat(external).isFile();

        assertThat(FileUtils.readFileToString(internal)).contains("<h1>Hello, " +
                "Wisdom!</h1>").contains("href=\"http://asciidoc.org\"");
        assertThat(FileUtils.readFileToString(external)).contains("<h1>Hello, " +
                "Wisdom!</h1>").contains("href=\"http://asciidoc.org\"");
    }

    @Test
    public void testInitializationWithFilteredInternalAndExternalFilesUsingRegularExtensions() throws
            MojoExecutionException, IOException {
        AsciidocMojo mojo = new AsciidocMojo();
        mojo.basedir = basedir;
        mojo.buildDirectory = new File(mojo.basedir, "target");
        mojo.doctype = "article";
        mojo.backend = "html5";
        FileUtils.copyFile(new File("src/test/resources/hello.ad"), new File(basedir,
                "src/main/resources/assets/doc/hello.ad"));
        // Filtered version:
        FileUtils.copyFile(new File("src/test/resources/hello.ad"), new File(basedir,
                "target/classes/assets/doc/hello.ad"));
        FileUtils.copyFile(new File("src/test/resources/hello.ad"), new File(basedir,
                "src/main/assets/doc/hello.asciidoc"));
        // Filtered version:
        FileUtils.copyFile(new File("src/test/resources/hello.ad"), new File(basedir,
                "target/wisdom/assets/doc/hello.asciidoc"));

        mojo.execute();

        final File internal = new File(mojo.destinationForInternals, "doc/hello.html");
        final File external = new File(mojo.destinationForExternals, "doc/hello.html");
        assertThat(internal).isFile();
        assertThat(external).isFile();

        assertThat(FileUtils.readFileToString(internal)).contains("<h1>Hello, " +
                "Wisdom!</h1>").contains("href=\"http://asciidoc.org\"");
        assertThat(FileUtils.readFileToString(external)).contains("<h1>Hello, " +
                "Wisdom!</h1>").contains("href=\"http://asciidoc.org\"");
    }

    @Test
    public void testAccept() throws MojoExecutionException {
        AsciidocMojo mojo = new AsciidocMojo();
        mojo.basedir = basedir;
        mojo.buildDirectory = new File(mojo.basedir, "target");
        // Regular extensions.
        mojo.execute();

        assertThat(mojo.accept(new File("hello.ad"))).isTrue();
        assertThat(mojo.accept(new File("hello.adoc"))).isTrue();
        assertThat(mojo.accept(new File("hello.asciidoc"))).isTrue();
        assertThat(mojo.accept(new File("hello.html"))).isFalse();

        mojo.extensions = ImmutableList.of("ascii");
        // Regular extensions.
        mojo.execute();
        assertThat(mojo.accept(new File("hello.ad"))).isFalse();
        assertThat(mojo.accept(new File("hello.ascii"))).isTrue();

    }
}<commit_msg>Missing configuration the the acidic tests.<commit_after>/*
 * #%L
 * Wisdom-Framework
 * %%
 * Copyright (C) 2013 - 2014 Wisdom Framework
 * %%
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * 
 *      http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 * #L%
 */
package org.wisdom.asciidoc;

import com.google.common.collect.ImmutableList;
import org.apache.commons.io.FileUtils;
import org.apache.maven.plugin.MojoExecutionException;
import org.junit.Before;
import org.junit.Test;

import java.io.File;
import java.io.IOException;

import static org.assertj.core.api.Assertions.assertThat;

/**
 * Checks the behavior of the Asciidoc Mojo
 */
public class AsciidocMojoTest {

    File basedir = new File("target/workbench/project");

    @Before
    public void setUp() {
        FileUtils.deleteQuietly(basedir);
    }

    @Test
    public void testInitializationWithNoFiles() throws MojoExecutionException {
        AsciidocMojo mojo = new AsciidocMojo();
        mojo.basedir = basedir;
        mojo.buildDirectory = new File(mojo.basedir, "target");
        mojo.doctype = "article";
        mojo.backend = "html5";
        mojo.execute();

        assertThat(mojo.instance).isNotNull();
        assertThat(mojo.getAsciidoctorInstance()).isNotNull();
        assertThat(mojo.internalSources).isEqualTo(new File(mojo.basedir, "src/main/resources/assets"));
        assertThat(mojo.externalSources).isEqualTo(new File(mojo.basedir, "src/main/assets"));
        assertThat(mojo.destinationForInternals).isEqualTo(new File(mojo.buildDirectory, "classes/assets"));
        assertThat(mojo.destinationForExternals).isEqualTo(new File(mojo.buildDirectory, "wisdom/assets"));
    }

    @Test
    public void testInitializationWithUnfilteredInternalAndExternalFilesUsingRegularExtensions() throws
            MojoExecutionException, IOException {
        AsciidocMojo mojo = new AsciidocMojo();
        mojo.basedir = basedir;
        mojo.buildDirectory = new File(mojo.basedir, "target");
        mojo.doctype = "article";
        mojo.backend = "html5";
        FileUtils.copyFile(new File("src/test/resources/hello.ad"), new File(basedir,
                "src/main/resources/assets/doc/hello.ad"));
        FileUtils.copyFile(new File("src/test/resources/hello.ad"), new File(basedir,
                "src/main/assets/doc/hello.asciidoc"));
        mojo.execute();

        final File internal = new File(mojo.destinationForInternals, "doc/hello.html");
        final File external = new File(mojo.destinationForExternals, "doc/hello.html");
        assertThat(internal).isFile();
        assertThat(external).isFile();

        assertThat(FileUtils.readFileToString(internal)).contains("<h1>Hello, " +
                "Wisdom!</h1>").contains("href=\"http://asciidoc.org\"");
        assertThat(FileUtils.readFileToString(external)).contains("<h1>Hello, " +
                "Wisdom!</h1>").contains("href=\"http://asciidoc.org\"");
    }

    @Test
    public void testInitializationWithFilteredInternalAndExternalFilesUsingRegularExtensions() throws
            MojoExecutionException, IOException {
        AsciidocMojo mojo = new AsciidocMojo();
        mojo.basedir = basedir;
        mojo.buildDirectory = new File(mojo.basedir, "target");
        mojo.doctype = "article";
        mojo.backend = "html5";
        FileUtils.copyFile(new File("src/test/resources/hello.ad"), new File(basedir,
                "src/main/resources/assets/doc/hello.ad"));
        // Filtered version:
        FileUtils.copyFile(new File("src/test/resources/hello.ad"), new File(basedir,
                "target/classes/assets/doc/hello.ad"));
        FileUtils.copyFile(new File("src/test/resources/hello.ad"), new File(basedir,
                "src/main/assets/doc/hello.asciidoc"));
        // Filtered version:
        FileUtils.copyFile(new File("src/test/resources/hello.ad"), new File(basedir,
                "target/wisdom/assets/doc/hello.asciidoc"));

        mojo.execute();

        final File internal = new File(mojo.destinationForInternals, "doc/hello.html");
        final File external = new File(mojo.destinationForExternals, "doc/hello.html");
        assertThat(internal).isFile();
        assertThat(external).isFile();

        assertThat(FileUtils.readFileToString(internal)).contains("<h1>Hello, " +
                "Wisdom!</h1>").contains("href=\"http://asciidoc.org\"");
        assertThat(FileUtils.readFileToString(external)).contains("<h1>Hello, " +
                "Wisdom!</h1>").contains("href=\"http://asciidoc.org\"");
    }

    @Test
    public void testAccept() throws MojoExecutionException {
        AsciidocMojo mojo = new AsciidocMojo();
        mojo.basedir = basedir;
        mojo.buildDirectory = new File(mojo.basedir, "target");
        mojo.doctype = "article";
        mojo.backend = "html5";
        // Regular extensions.
        mojo.execute();

        assertThat(mojo.accept(new File("hello.ad"))).isTrue();
        assertThat(mojo.accept(new File("hello.adoc"))).isTrue();
        assertThat(mojo.accept(new File("hello.asciidoc"))).isTrue();
        assertThat(mojo.accept(new File("hello.html"))).isFalse();

        mojo.extensions = ImmutableList.of("ascii");
        // Regular extensions.
        mojo.execute();
        assertThat(mojo.accept(new File("hello.ad"))).isFalse();
        assertThat(mojo.accept(new File("hello.ascii"))).isTrue();

    }
}
{'fraction_non_alphanumeric': 0.13517492206442674, 'fraction_numerical': 0.00398337374437132, 'mean_word_length': 3.155811442965095, 'pattern_counts': {'":': 0, '<': 19, '<?xml version=': 0, '>': 19, 'https://': 0, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4049805', 'n_tokens_mistral': 3449, 'n_tokens_neox': 3404, 'n_words': 627}