Main test function

This commit is contained in:
YuCheng Hu 2021-11-04 11:01:24 -04:00
parent 7f1303cc0c
commit a5a189d470
3 changed files with 161 additions and 73 deletions

View File

@ -4,11 +4,9 @@
<option name="autoReloadType" value="SELECTIVE" /> <option name="autoReloadType" value="SELECTIVE" />
</component> </component>
<component name="ChangeListManager"> <component name="ChangeListManager">
<list default="true" id="2a855b03-5ee0-4324-b916-110994784a14" name="Changes" comment="Add compiler for JMH https://www.ossez.com/t/intellij-idea/13759"> <list default="true" id="2a855b03-5ee0-4324-b916-110994784a14" name="Changes" comment="Update link for Java Microbenchmark Harness">
<change beforePath="$PROJECT_DIR$/.idea/jarRepositories.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/jarRepositories.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/parent-java/jmh/README.md" beforeDir="false" afterPath="$PROJECT_DIR$/parent-java/jmh/README.md" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/main/java/com/ossez/codebank/algorithm/Main.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/ossez/codebank/algorithm/Main.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/pom.xml" beforeDir="false" afterPath="$PROJECT_DIR$/pom.xml" afterDir="false" />
</list> </list>
<option name="SHOW_DIALOG" value="false" /> <option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" /> <option name="HIGHLIGHT_CONFLICTS" value="true" />
@ -43,7 +41,7 @@
<property name="RunOnceActivity.ShowReadmeOnStart" value="true" /> <property name="RunOnceActivity.ShowReadmeOnStart" value="true" />
<property name="TF_FMT" value="false" /> <property name="TF_FMT" value="false" />
<property name="WebServerToolWindowFactoryState" value="false" /> <property name="WebServerToolWindowFactoryState" value="false" />
<property name="last_opened_file_path" value="$PROJECT_DIR$/parent-java" /> <property name="last_opened_file_path" value="$PROJECT_DIR$/src/test/java/com/ossez/codebank/algorithm/tests" />
<property name="node.js.detected.package.eslint" value="true" /> <property name="node.js.detected.package.eslint" value="true" />
<property name="node.js.detected.package.tslint" value="true" /> <property name="node.js.detected.package.tslint" value="true" />
<property name="node.js.selected.package.eslint" value="(autodetect)" /> <property name="node.js.selected.package.eslint" value="(autodetect)" />
@ -56,12 +54,13 @@
</component> </component>
<component name="RecentsManager"> <component name="RecentsManager">
<key name="CopyFile.RECENT_KEYS"> <key name="CopyFile.RECENT_KEYS">
<recent name="D:\WorkDir\Repository\GitHub\cwiki-us-docs\java-tutorials\src\test\java\com\ossez\codebank\algorithm\tests" />
<recent name="D:\WorkDir\Repository\GitHub\cwiki-us-docs\java-tutorials\parent-java" /> <recent name="D:\WorkDir\Repository\GitHub\cwiki-us-docs\java-tutorials\parent-java" />
<recent name="D:\WorkDir\Repository\GitHub\cwiki-us-docs\java-tutorials\xml\src\test\resources" /> <recent name="D:\WorkDir\Repository\GitHub\cwiki-us-docs\java-tutorials\xml\src\test\resources" />
<recent name="D:\WorkDir\Repository\GitHub\cwiki-us-docs\java-tutorials" /> <recent name="D:\WorkDir\Repository\GitHub\cwiki-us-docs\java-tutorials" />
</key> </key>
</component> </component>
<component name="RunManager" selected="Application.BenchmarkRunner"> <component name="RunManager" selected="Application.Main">
<configuration name="BenchmarkRunner" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true"> <configuration name="BenchmarkRunner" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
<option name="MAIN_CLASS_NAME" value="com.ossez.BenchmarkRunner" /> <option name="MAIN_CLASS_NAME" value="com.ossez.BenchmarkRunner" />
<module name="jmh" /> <module name="jmh" />
@ -75,17 +74,30 @@
<option name="Make" enabled="true" /> <option name="Make" enabled="true" />
</method> </method>
</configuration> </configuration>
<configuration name="Dom4JParserUnitTest.generateNewDocumentTest" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true"> <configuration name="Main" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
<module name="xml" /> <option name="MAIN_CLASS_NAME" value="com.ossez.codebank.algorithm.Main" />
<module name="parent-modules" />
<extension name="coverage"> <extension name="coverage">
<pattern> <pattern>
<option name="PATTERN" value="com.ossez.xml.*" /> <option name="PATTERN" value="com.ossez.codebank.algorithm.*" />
<option name="ENABLED" value="true" /> <option name="ENABLED" value="true" />
</pattern> </pattern>
</extension> </extension>
<option name="PACKAGE_NAME" value="com.ossez.xml" /> <method v="2">
<option name="MAIN_CLASS_NAME" value="com.ossez.xml.Dom4JParserUnitTest" /> <option name="Make" enabled="true" />
<option name="METHOD_NAME" value="generateNewDocumentTest" /> </method>
</configuration>
<configuration name="BlankTemplateTest.testBlank" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
<module name="parent-modules" />
<extension name="coverage">
<pattern>
<option name="PATTERN" value="com.ossez.codebank.algorithm.tests.*" />
<option name="ENABLED" value="true" />
</pattern>
</extension>
<option name="PACKAGE_NAME" value="com.ossez.codebank.algorithm.tests" />
<option name="MAIN_CLASS_NAME" value="com.ossez.codebank.algorithm.tests.BlankTemplateTest" />
<option name="METHOD_NAME" value="testBlank" />
<option name="TEST_OBJECT" value="method" /> <option name="TEST_OBJECT" value="method" />
<method v="2"> <method v="2">
<option name="Make" enabled="true" /> <option name="Make" enabled="true" />
@ -136,16 +148,18 @@
</configuration> </configuration>
<list> <list>
<item itemvalue="Application.BenchmarkRunner" /> <item itemvalue="Application.BenchmarkRunner" />
<item itemvalue="JUnit.Dom4JParserUnitTest.generateNewDocumentTest" />
<item itemvalue="JUnit.Dom4JParserUnitTest.testCreateXML" /> <item itemvalue="JUnit.Dom4JParserUnitTest.testCreateXML" />
<item itemvalue="JUnit.Dom4JParserUnitTest.testCreateXMLFromSystemProperties" /> <item itemvalue="JUnit.Dom4JParserUnitTest.testCreateXMLFromSystemProperties" />
<item itemvalue="JUnit.BlankTemplateTest.testBlank" />
<item itemvalue="Application.Main" />
</list> </list>
<recent_temporary> <recent_temporary>
<list> <list>
<item itemvalue="Application.Main" />
<item itemvalue="JUnit.BlankTemplateTest.testBlank" />
<item itemvalue="Application.BenchmarkRunner" /> <item itemvalue="Application.BenchmarkRunner" />
<item itemvalue="JUnit.Dom4JParserUnitTest.testCreateXMLFromSystemProperties" /> <item itemvalue="JUnit.Dom4JParserUnitTest.testCreateXMLFromSystemProperties" />
<item itemvalue="JUnit.Dom4JParserUnitTest.testCreateXML" /> <item itemvalue="JUnit.Dom4JParserUnitTest.testCreateXML" />
<item itemvalue="JUnit.Dom4JParserUnitTest.generateNewDocumentTest" />
</list> </list>
</recent_temporary> </recent_temporary>
</component> </component>
@ -165,6 +179,10 @@
<workItem from="1632921802745" duration="10467000" /> <workItem from="1632921802745" duration="10467000" />
<workItem from="1633367518405" duration="9878000" /> <workItem from="1633367518405" duration="9878000" />
<workItem from="1633618804068" duration="450000" /> <workItem from="1633618804068" duration="450000" />
<workItem from="1633632654458" duration="752000" />
<workItem from="1635345165318" duration="10334000" />
<workItem from="1635444765485" duration="1914000" />
<workItem from="1636036083756" duration="1603000" />
</task> </task>
<task id="LOCAL-00001" summary="修改项目到不同的路径"> <task id="LOCAL-00001" summary="修改项目到不同的路径">
<created>1632420206392</created> <created>1632420206392</created>
@ -243,7 +261,14 @@
<option name="project" value="LOCAL" /> <option name="project" value="LOCAL" />
<updated>1633461594898</updated> <updated>1633461594898</updated>
</task> </task>
<option name="localTasksCounter" value="12" /> <task id="LOCAL-00012" summary="Update link for Java Microbenchmark Harness">
<created>1633632799545</created>
<option name="number" value="00012" />
<option name="presentableId" value="LOCAL-00012" />
<option name="project" value="LOCAL" />
<updated>1633632799545</updated>
</task>
<option name="localTasksCounter" value="13" />
<servers /> <servers />
</component> </component>
<component name="TypeScriptGeneratedFilesManager"> <component name="TypeScriptGeneratedFilesManager">
@ -271,6 +296,18 @@
<MESSAGE value="更新 JMH 的文档和代码" /> <MESSAGE value="更新 JMH 的文档和代码" />
<MESSAGE value="Add JMH document and source code" /> <MESSAGE value="Add JMH document and source code" />
<MESSAGE value="Add compiler for JMH https://www.ossez.com/t/intellij-idea/13759" /> <MESSAGE value="Add compiler for JMH https://www.ossez.com/t/intellij-idea/13759" />
<option name="LAST_COMMIT_MESSAGE" value="Add compiler for JMH https://www.ossez.com/t/intellij-idea/13759" /> <MESSAGE value="Update link for Java Microbenchmark Harness" />
<option name="LAST_COMMIT_MESSAGE" value="Update link for Java Microbenchmark Harness" />
</component>
<component name="XDebuggerManager">
<breakpoint-manager>
<breakpoints>
<line-breakpoint enabled="true" type="java-line">
<url>jar://C:/Program Files/RedHat/java-11-openjdk-11.0.11-1/lib/src.zip!/java.base/java/lang/Integer.java</url>
<line>1056</line>
<option name="timeStamp" value="1" />
</line-breakpoint>
</breakpoints>
</breakpoint-manager>
</component> </component>
</project> </project>

View File

@ -10,82 +10,88 @@ import org.apache.commons.cli.Options;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
/**
* Main Test Class
*
* @author YuCheng Hu
*/
public class Main { public class Main {
private static final Logger logger = LoggerFactory.getLogger(Main.class); private static final Logger logger = LoggerFactory.getLogger(Main.class);
private static Options options = new Options(); private static Options options = new Options();
private static Properties properties = new Properties(); private static Properties properties = new Properties();
private static CommandLine cl = null; private static CommandLine cl = null;
private static boolean dryRun = false; private static boolean dryRun = false;
private static int limit = 0; private static int limit = 0;
private static boolean force = false; private static boolean force = false;
public static void main(String[] args) {
// get the idx feed properties file public static void main(String[] args) {
Main.parseProperties();
// load console options // get the idx feed properties file
Main.parseCommandLine(args); Main.parseProperties();
logger.debug("Starting feeds..."); // load console options
System.out.println("starting feeds..."); Main.parseCommandLine(args);
// execute the feeds logger.debug("Starting feeds...");
Main.executeFeeds(); System.out.println("starting feeds...");
} // execute the feeds
Main.executeFeeds();
/** }
* Executes the feeds specified in the feeds.properties file.
*/
private static void executeFeeds() {
} /**
* Executes the feeds specified in the feeds.properties file.
*/
private static void executeFeeds() {
/** }
* Parses the properties file to get a list of all feeds.
*/
private static void parseProperties() {
try {
// load the properties file
logger.debug("Parsing properties");
Main.properties.load(Main.class.getClassLoader().getResourceAsStream("rets.properties"));
// load the feeds /**
* Parses the properties file to get a list of all feeds.
*/
private static void parseProperties() {
try {
// load the properties file
logger.debug("Parsing properties");
Main.properties.load(Main.class.getClassLoader().getResourceAsStream("rets.properties"));
} catch (Exception ex) { // load the feeds
ex.printStackTrace();
logger.error("Could not parse feed properties", ex);
}
}
/** } catch (Exception ex) {
* Handles creation of console options. ex.printStackTrace();
*/ logger.error("Could not parse feed properties", ex);
private static void parseCommandLine(String[] args) { }
}
// parse command line options /**
CommandLineParser parser = new GnuParser(); * Handles creation of console options.
*/
private static void parseCommandLine(String[] args) {
try { // parse command line options
Main.cl = parser.parse(Main.options, args); CommandLineParser parser = new GnuParser();
// get the dry run option try {
Main.dryRun = Main.cl.hasOption("d"); Main.cl = parser.parse(Main.options, args);
logger.trace("Value of dryRun: " + dryRun);
// get the limit option // get the dry run option
// Main.limit = Utility.parseInt(Main.cl.getOptionValue("l", "0")); Main.dryRun = Main.cl.hasOption("d");
logger.trace("Value of limit: " + Main.limit); logger.trace("Value of dryRun: " + dryRun);
// get the force option // get the limit option
Main.force = Main.cl.hasOption("u"); // Main.limit = Utility.parseInt(Main.cl.getOptionValue("l", "0"));
logger.trace("Value of force: " + Main.force); logger.trace("Value of limit: " + Main.limit);
} catch (Exception ex) {
logger.error("An error ocurred parsing command line arguments", ex); // get the force option
} Main.force = Main.cl.hasOption("u");
} logger.trace("Value of force: " + Main.force);
} catch (Exception ex) {
logger.error("An error ocurred parsing command line arguments", ex);
}
}
} }

View File

@ -0,0 +1,45 @@
package com.ossez.codebank.algorithm.tests;
import junit.framework.TestCase;
import org.junit.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.lang.reflect.Array;
import java.util.*;
import java.util.stream.Collectors;
/**
* @author YuCheng
*/
public class BlankTemplateTest extends TestCase {
private final static Logger logger = LoggerFactory.getLogger(BlankTemplateTest.class);
/**
* Blank Template Test
*/
@Test
public void testBlank() {
Integer[] inputArrayB = {3, 7, 1, 2, 8, 4, 5};
List<Integer> inListA = Arrays.asList(inputArrayB);
int[] inputArrayA = {3, 7, 1, 2, 8, 4, 5};
List<Integer> inList = Arrays.stream(inputArrayA).sorted().boxed().collect(Collectors.toList());
for (int i = 0; i < 8; i++) {
if (!inListA.contains(i)) {
System.out.println(i);
}
}
System.out.println((int)'E');
System.out.println((byte)0xFF);
}
}