Fixed uptime months calculation
This commit is contained in:
parent
a2646ceb9f
commit
b6e1888e70
12 changed files with 32 additions and 24 deletions
2
.idea/kotlinc.xml
generated
2
.idea/kotlinc.xml
generated
|
@ -1,6 +1,6 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<project version="4">
|
<project version="4">
|
||||||
<component name="KotlinJpsPluginSettings">
|
<component name="KotlinJpsPluginSettings">
|
||||||
<option name="version" value="1.7.20" />
|
<option name="version" value="1.7.21" />
|
||||||
</component>
|
</component>
|
||||||
</project>
|
</project>
|
5
.idea/misc.xml
generated
5
.idea/misc.xml
generated
|
@ -4,5 +4,8 @@
|
||||||
<component name="FrameworkDetectionExcludesConfiguration">
|
<component name="FrameworkDetectionExcludesConfiguration">
|
||||||
<file type="web" url="file://$PROJECT_DIR$" />
|
<file type="web" url="file://$PROJECT_DIR$" />
|
||||||
</component>
|
</component>
|
||||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_11" project-jdk-name="18" project-jdk-type="JavaSDK" />
|
<component name="PDMPlugin">
|
||||||
|
<option name="skipTestSources" value="false" />
|
||||||
|
</component>
|
||||||
|
<component name="ProjectRootManager" version="2" languageLevel="JDK_11" project-jdk-name="19" project-jdk-type="JavaSDK" />
|
||||||
</project>
|
</project>
|
18
build.gradle
18
build.gradle
|
@ -1,14 +1,14 @@
|
||||||
plugins {
|
plugins {
|
||||||
id 'application'
|
id 'application'
|
||||||
id 'com.github.ben-manes.versions' version '0.42.0'
|
id 'com.github.ben-manes.versions' version '0.44.0'
|
||||||
id 'idea'
|
id 'idea'
|
||||||
id 'io.gitlab.arturbosch.detekt' version '1.21.0'
|
id 'io.gitlab.arturbosch.detekt' version '1.22.0'
|
||||||
id 'java'
|
id 'java'
|
||||||
id 'net.thauvin.erik.gradle.semver' version '1.0.4'
|
id 'net.thauvin.erik.gradle.semver' version '1.0.4'
|
||||||
id 'org.jetbrains.kotlin.jvm' version '1.7.20'
|
id 'org.jetbrains.kotlin.jvm' version '1.7.21'
|
||||||
id 'org.jetbrains.kotlin.kapt' version '1.7.20'
|
id 'org.jetbrains.kotlin.kapt' version '1.7.21'
|
||||||
id 'org.jetbrains.kotlinx.kover' version '0.6.1'
|
id 'org.jetbrains.kotlinx.kover' version '0.6.1'
|
||||||
id 'org.sonarqube' version '3.4.0.2513'
|
id 'org.sonarqube' version '3.5.0.2730'
|
||||||
id 'pmd'
|
id 'pmd'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -30,7 +30,7 @@ mainClassName = packageName + '.Mobibot'
|
||||||
|
|
||||||
ext.versions = [
|
ext.versions = [
|
||||||
log4j: '2.19.0',
|
log4j: '2.19.0',
|
||||||
pmd : '6.50.0',
|
pmd : '6.51.0',
|
||||||
]
|
]
|
||||||
|
|
||||||
repositories {
|
repositories {
|
||||||
|
@ -55,7 +55,7 @@ dependencies {
|
||||||
implementation 'commons-net:commons-net:3.8.0'
|
implementation 'commons-net:commons-net:3.8.0'
|
||||||
|
|
||||||
// Google
|
// Google
|
||||||
implementation 'com.google.code.gson:gson:2.9.1'
|
implementation 'com.google.code.gson:gson:2.10'
|
||||||
implementation 'com.google.guava:guava:31.1-jre'
|
implementation 'com.google.guava:guava:31.1-jre'
|
||||||
|
|
||||||
// Kotlin
|
// Kotlin
|
||||||
|
@ -65,7 +65,7 @@ dependencies {
|
||||||
implementation 'org.jetbrains.kotlinx:kotlinx-cli:0.3.5'
|
implementation 'org.jetbrains.kotlinx:kotlinx-cli:0.3.5'
|
||||||
|
|
||||||
// Logging
|
// Logging
|
||||||
implementation 'org.slf4j:slf4j-api:2.0.3'
|
implementation 'org.slf4j:slf4j-api:2.0.4'
|
||||||
implementation "org.apache.logging.log4j:log4j-api:$versions.log4j"
|
implementation "org.apache.logging.log4j:log4j-api:$versions.log4j"
|
||||||
implementation "org.apache.logging.log4j:log4j-core:$versions.log4j"
|
implementation "org.apache.logging.log4j:log4j-core:$versions.log4j"
|
||||||
implementation "org.apache.logging.log4j:log4j-slf4j2-impl:$versions.log4j"
|
implementation "org.apache.logging.log4j:log4j-slf4j2-impl:$versions.log4j"
|
||||||
|
@ -76,7 +76,7 @@ dependencies {
|
||||||
implementation 'net.objecthunter:exp4j:0.4.8'
|
implementation 'net.objecthunter:exp4j:0.4.8'
|
||||||
implementation 'org.json:json:20220924'
|
implementation 'org.json:json:20220924'
|
||||||
implementation 'org.jsoup:jsoup:1.15.3'
|
implementation 'org.jsoup:jsoup:1.15.3'
|
||||||
implementation 'org.twitter4j:twitter4j-core:4.1.0'
|
implementation 'org.twitter4j:twitter4j-core:4.1.2'
|
||||||
|
|
||||||
// Thauvin
|
// Thauvin
|
||||||
implementation 'net.thauvin.erik:cryptoprice:1.0.0'
|
implementation 'net.thauvin.erik:cryptoprice:1.0.0'
|
||||||
|
|
|
@ -2,8 +2,8 @@
|
||||||
<SmellBaseline>
|
<SmellBaseline>
|
||||||
<ManuallySuppressedIssues></ManuallySuppressedIssues>
|
<ManuallySuppressedIssues></ManuallySuppressedIssues>
|
||||||
<CurrentIssues>
|
<CurrentIssues>
|
||||||
<ID>ComplexMethod:FeedsMgr.kt$FeedsMgr.Companion$@JvmStatic fun saveFeed(entries: Entries, currentFile: String = currentXml)</ID>
|
<ID>CyclomaticComplexMethod:FeedsMgr.kt$FeedsMgr.Companion$@JvmStatic fun saveFeed(entries: Entries, currentFile: String = currentXml)</ID>
|
||||||
<ID>ComplexMethod:Weather2.kt$Weather2.Companion$@JvmStatic @Throws(ModuleException::class) fun getWeather(query: String, apiKey: String?): List<Message></ID>
|
<ID>CyclomaticComplexMethod:Weather2.kt$Weather2.Companion$@JvmStatic @Throws(ModuleException::class) fun getWeather(query: String, apiKey: String?): List<Message></ID>
|
||||||
<ID>LongMethod:FeedsMgr.kt$FeedsMgr.Companion$@JvmStatic fun saveFeed(entries: Entries, currentFile: String = currentXml)</ID>
|
<ID>LongMethod:FeedsMgr.kt$FeedsMgr.Companion$@JvmStatic fun saveFeed(entries: Entries, currentFile: String = currentXml)</ID>
|
||||||
<ID>LongMethod:Mobibot.kt$Mobibot.Companion$@JvmStatic @Throws(Exception::class) fun main(args: Array<String>)</ID>
|
<ID>LongMethod:Mobibot.kt$Mobibot.Companion$@JvmStatic @Throws(Exception::class) fun main(args: Array<String>)</ID>
|
||||||
<ID>LongMethod:StockQuote.kt$StockQuote.Companion$@JvmStatic @Throws(ModuleException::class) fun getQuote(symbol: String, apiKey: String?): List<Message></ID>
|
<ID>LongMethod:StockQuote.kt$StockQuote.Companion$@JvmStatic @Throws(ModuleException::class) fun getQuote(symbol: String, apiKey: String?): List<Message></ID>
|
||||||
|
|
BIN
gradle/wrapper/gradle-wrapper.jar
vendored
BIN
gradle/wrapper/gradle-wrapper.jar
vendored
Binary file not shown.
3
gradle/wrapper/gradle-wrapper.properties
vendored
3
gradle/wrapper/gradle-wrapper.properties
vendored
|
@ -1,5 +1,6 @@
|
||||||
distributionBase=GRADLE_USER_HOME
|
distributionBase=GRADLE_USER_HOME
|
||||||
distributionPath=wrapper/dists
|
distributionPath=wrapper/dists
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-bin.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-rc-3-bin.zip
|
||||||
|
networkTimeout=10000
|
||||||
zipStoreBase=GRADLE_USER_HOME
|
zipStoreBase=GRADLE_USER_HOME
|
||||||
zipStorePath=wrapper/dists
|
zipStorePath=wrapper/dists
|
||||||
|
|
12
gradlew
vendored
12
gradlew
vendored
|
@ -55,7 +55,7 @@
|
||||||
# Darwin, MinGW, and NonStop.
|
# Darwin, MinGW, and NonStop.
|
||||||
#
|
#
|
||||||
# (3) This script is generated from the Groovy template
|
# (3) This script is generated from the Groovy template
|
||||||
# https://github.com/gradle/gradle/blob/master/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
|
# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
|
||||||
# within the Gradle project.
|
# within the Gradle project.
|
||||||
#
|
#
|
||||||
# You can find Gradle at https://github.com/gradle/gradle/.
|
# You can find Gradle at https://github.com/gradle/gradle/.
|
||||||
|
@ -80,10 +80,10 @@ do
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
|
||||||
APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit
|
# This is normally unused
|
||||||
|
# shellcheck disable=SC2034
|
||||||
APP_NAME="Gradle"
|
|
||||||
APP_BASE_NAME=${0##*/}
|
APP_BASE_NAME=${0##*/}
|
||||||
|
APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit
|
||||||
|
|
||||||
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
||||||
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
|
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
|
||||||
|
@ -143,12 +143,16 @@ fi
|
||||||
if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
|
if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
|
||||||
case $MAX_FD in #(
|
case $MAX_FD in #(
|
||||||
max*)
|
max*)
|
||||||
|
# In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
|
||||||
|
# shellcheck disable=SC3045
|
||||||
MAX_FD=$( ulimit -H -n ) ||
|
MAX_FD=$( ulimit -H -n ) ||
|
||||||
warn "Could not query maximum file descriptor limit"
|
warn "Could not query maximum file descriptor limit"
|
||||||
esac
|
esac
|
||||||
case $MAX_FD in #(
|
case $MAX_FD in #(
|
||||||
'' | soft) :;; #(
|
'' | soft) :;; #(
|
||||||
*)
|
*)
|
||||||
|
# In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
|
||||||
|
# shellcheck disable=SC3045
|
||||||
ulimit -n "$MAX_FD" ||
|
ulimit -n "$MAX_FD" ||
|
||||||
warn "Could not set maximum file descriptor limit to $MAX_FD"
|
warn "Could not set maximum file descriptor limit to $MAX_FD"
|
||||||
esac
|
esac
|
||||||
|
|
1
gradlew.bat
vendored
1
gradlew.bat
vendored
|
@ -26,6 +26,7 @@ if "%OS%"=="Windows_NT" setlocal
|
||||||
|
|
||||||
set DIRNAME=%~dp0
|
set DIRNAME=%~dp0
|
||||||
if "%DIRNAME%"=="" set DIRNAME=.
|
if "%DIRNAME%"=="" set DIRNAME=.
|
||||||
|
@rem This is normally unused
|
||||||
set APP_BASE_NAME=%~n0
|
set APP_BASE_NAME=%~n0
|
||||||
set APP_HOME=%DIRNAME%
|
set APP_HOME=%DIRNAME%
|
||||||
|
|
||||||
|
|
|
@ -77,7 +77,7 @@ class Info(private val tell: Tell, private val seen: Seen) : AbstractCommand() {
|
||||||
append(years).append(" year".plural(years)).append(' ')
|
append(years).append(" year".plural(years)).append(' ')
|
||||||
}
|
}
|
||||||
if (months > 0) {
|
if (months > 0) {
|
||||||
append(weeks).append(" month".plural(months)).append(' ')
|
append(months).append(" month".plural(months)).append(' ')
|
||||||
}
|
}
|
||||||
if (weeks > 0) {
|
if (weeks > 0) {
|
||||||
append(weeks).append(" week".plural(weeks)).append(' ')
|
append(weeks).append(" week".plural(weeks)).append(' ')
|
||||||
|
|
|
@ -49,7 +49,6 @@ class WolframAlpha : ThreadedModule() {
|
||||||
override val name = "WolframAlpha"
|
override val name = "WolframAlpha"
|
||||||
|
|
||||||
private fun getUnits(unit: String?): String {
|
private fun getUnits(unit: String?): String {
|
||||||
println("--> $unit")
|
|
||||||
return if (unit?.lowercase() == METRIC) {
|
return if (unit?.lowercase() == METRIC) {
|
||||||
METRIC
|
METRIC
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -43,7 +43,7 @@ class InfoTest {
|
||||||
assertThat(
|
assertThat(
|
||||||
547800300076L.toUptime(),
|
547800300076L.toUptime(),
|
||||||
"upTime(full)"
|
"upTime(full)"
|
||||||
).isEqualTo("17 years 2 months 2 weeks 1 day 6 hours 45 minutes")
|
).isEqualTo("17 years 4 months 2 weeks 1 day 6 hours 45 minutes")
|
||||||
assertThat(24300000L.toUptime(), "upTime(hours minutes)").isEqualTo("6 hours 45 minutes")
|
assertThat(24300000L.toUptime(), "upTime(hours minutes)").isEqualTo("6 hours 45 minutes")
|
||||||
assertThat(110700000L.toUptime(), "upTime(days hours minutes)").isEqualTo("1 day 6 hours 45 minutes")
|
assertThat(110700000L.toUptime(), "upTime(days hours minutes)").isEqualTo("1 day 6 hours 45 minutes")
|
||||||
assertThat(
|
assertThat(
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
#Generated by the Semver Plugin for Gradle
|
#Generated by the Semver Plugin for Gradle
|
||||||
#Wed Oct 12 20:28:52 PDT 2022
|
#Mon Nov 21 10:09:13 PST 2022
|
||||||
version.buildmeta=751
|
version.buildmeta=764
|
||||||
version.major=0
|
version.major=0
|
||||||
version.minor=8
|
version.minor=8
|
||||||
version.patch=0
|
version.patch=0
|
||||||
version.prerelease=rc
|
version.prerelease=rc
|
||||||
version.project=mobibot
|
version.project=mobibot
|
||||||
version.semver=0.8.0-rc+751
|
version.semver=0.8.0-rc+764
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue