// Path: sft-core/src/test/java/sft/integration/use/sut/HumanizationUsingTextAnnotation.java
// @RunWith(SimpleFunctionalTest.class)
// @Text("Use case name specified in @Text")
// public class HumanizationUsingTextAnnotation {
// 
//     @Test
//     @Text("Scenario name specified in @Text")
//     public void scenario1(){
//         fixture1();
//     }
// 
//     @Text("Fixture name specified in @Text")
//     private void fixture1() {
//         Assert.assertTrue(true);
//     }
// }
// 
// Path: sft-core/src/test/java/sft/integration/use/sut/Humanization_underscore_class_name_humanized.java
// @RunWith(SimpleFunctionalTest.class)
// public class Humanization_underscore_class_name_humanized {
//     @Test
//     public void underscore_scenario_name_humanized(){
//         underscore_fixture_name_humanized();
//     }
// 
//     private void underscore_fixture_name_humanized() {
//         Assert.assertTrue(true);
//     }
// }


import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
import sft.Decorate;
import sft.FixturesHelper;
import sft.SimpleFunctionalTest;
import sft.Text;
import sft.decorators.Breadcrumb;
import sft.integration.fixtures.JUnitHtmlHelper;
import sft.integration.use.sut.HumanizationCamelCaseClassNameHumanized;
import sft.integration.use.sut.HumanizationUsingTextAnnotation;
import sft.integration.use.sut.Humanization_underscore_class_name_humanized;
import java.io.IOException;


    @Test
    public void namingInCamelCase() throws IOException {
        allCaseChangesAreReplacedBySpaces();
    }
    @Test
    public void namingUsingUnderscore() throws IOException {
        underscoreAreReplacedBySpace();
    }
    @Test
    public void usingTextAnnotation() throws IOException {
        textsAreDisplayedUnchanged();
    }

    private void allCaseChangesAreReplacedBySpaces() throws IOException {
        jUnitHtmlHelper.run(this.getClass(), HumanizationCamelCaseClassNameHumanized.class);
        Assert.assertEquals("Humanization camel case class name humanized", jUnitHtmlHelper.html.select("*.useCaseName").text());
        Assert.assertEquals("Camel case scenario name humanized", jUnitHtmlHelper.html.select("*.scenarioName").text());
        Assert.assertEquals("Camel case fixture name humanized", jUnitHtmlHelper.html.select("*.instruction").text());
    }

    private void underscoreAreReplacedBySpace() throws IOException {
        jUnitHtmlHelper.run(this.getClass(), Humanization_underscore_class_name_humanized.class);
        Assert.assertEquals("Humanization underscore class name humanized", jUnitHtmlHelper.html.select("*.useCaseName").text());
        Assert.assertEquals("Underscore scenario name humanized", jUnitHtmlHelper.html.select("*.scenarioName").text());
        Assert.assertEquals("Underscore fixture name humanized", jUnitHtmlHelper.html.select("*.instruction").text());
    }

    private void textsAreDisplayedUnchanged() throws IOException {
// Path: sft-core/src/test/java/sft/integration/use/sut/HumanizationUsingTextAnnotation.java
// @RunWith(SimpleFunctionalTest.class)
// @Text("Use case name specified in @Text")
// public class HumanizationUsingTextAnnotation {
// 
//     @Test
//     @Text("Scenario name specified in @Text")
//     public void scenario1(){
//         fixture1();
//     }
// 
//     @Text("Fixture name specified in @Text")
//     private void fixture1() {
//         Assert.assertTrue(true);
//     }
// }
// 
// Path: sft-core/src/test/java/sft/integration/use/sut/Humanization_underscore_class_name_humanized.java
// @RunWith(SimpleFunctionalTest.class)
// public class Humanization_underscore_class_name_humanized {
//     @Test
//     public void underscore_scenario_name_humanized(){
//         underscore_fixture_name_humanized();
//     }
// 
//     private void underscore_fixture_name_humanized() {
//         Assert.assertTrue(true);
//     }
// }


// Path: sft-core/src/test/java/sft/integration/use/HumanizationCodeUsage.java
import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
import sft.Decorate;
import sft.FixturesHelper;
import sft.SimpleFunctionalTest;
import sft.Text;
import sft.decorators.Breadcrumb;
import sft.integration.fixtures.JUnitHtmlHelper;
import sft.integration.use.sut.HumanizationCamelCaseClassNameHumanized;
import sft.integration.use.sut.HumanizationUsingTextAnnotation;
import sft.integration.use.sut.Humanization_underscore_class_name_humanized;
import java.io.IOException;



    @Test
    public void namingInCamelCase() throws IOException {
        allCaseChangesAreReplacedBySpaces();
    }
    @Test
    public void namingUsingUnderscore() throws IOException {
        underscoreAreReplacedBySpace();
    }
    @Test
    public void usingTextAnnotation() throws IOException {
        textsAreDisplayedUnchanged();
    }

    private void allCaseChangesAreReplacedBySpaces() throws IOException {
        jUnitHtmlHelper.run(this.getClass(), HumanizationCamelCaseClassNameHumanized.class);
        Assert.assertEquals("Humanization camel case class name humanized", jUnitHtmlHelper.html.select("*.useCaseName").text());
        Assert.assertEquals("Camel case scenario name humanized", jUnitHtmlHelper.html.select("*.scenarioName").text());
        Assert.assertEquals("Camel case fixture name humanized", jUnitHtmlHelper.html.select("*.instruction").text());
    }

    private void underscoreAreReplacedBySpace() throws IOException {
        jUnitHtmlHelper.run(this.getClass(), Humanization_underscore_class_name_humanized.class);
        Assert.assertEquals("Humanization underscore class name humanized", jUnitHtmlHelper.html.select("*.useCaseName").text());
        Assert.assertEquals("Underscore scenario name humanized", jUnitHtmlHelper.html.select("*.scenarioName").text());
        Assert.assertEquals("Underscore fixture name humanized", jUnitHtmlHelper.html.select("*.instruction").text());
    }

    private void textsAreDisplayedUnchanged() throws IOException {
        jUnitHtmlHelper.run(this.getClass(),HumanizationUsingTextAnnotation.class);