diff --git a/android/gradle.properties b/android/gradle.properties index f5b9c95aa..87da1ae2b 100644 --- a/android/gradle.properties +++ b/android/gradle.properties @@ -10,7 +10,7 @@ KOTLIN_VERSION = 1.4.10 KX_COROUTINES_VERSION = 1.4.2 SUPPORT_LIBRARY_VERSION = 28.0.0 AUTO_FACTORY_VERSION = 1.0-beta6 -BUILD_TOOLS_VERSION = 4.1.0 +BUILD_TOOLS_VERSION = 4.0.0 KTOR_VERSION=1.4.2 ESPRESSO_VERSION=3.3.0 diff --git a/android/settings.gradle b/android/settings.gradle index fce649473..c32440e2f 100644 --- a/android/settings.gradle +++ b/android/settings.gradle @@ -1 +1 @@ -include ':uhabits-android', ':uhabits-core-legacy', ':android-pickers', ':uhabits-core' +include ':uhabits-android', ':android-pickers' diff --git a/android/uhabits-android/build.gradle b/android/uhabits-android/build.gradle index 00f663580..320b4ace4 100644 --- a/android/uhabits-android/build.gradle +++ b/android/uhabits-android/build.gradle @@ -90,8 +90,6 @@ dependencies { androidTestImplementation 'androidx.test.ext:junit:1.1.2' androidTestImplementation 'androidx.test.uiautomator:uiautomator:2.2.0' androidTestImplementation 'androidx.test:rules:1.3.0' - androidTestImplementation project(':uhabits-core-legacy') - androidTestImplementation project(':uhabits-core') compileOnly "javax.annotation:jsr250-api:1.0" coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.1.1' implementation "com.github.paolorotolo:appintro:3.4.0" @@ -111,9 +109,8 @@ dependencies { implementation 'com.google.android.material:material:1.2.1' implementation 'com.google.zxing:core:3.4.1' implementation 'com.opencsv:opencsv:3.10' - implementation project(':uhabits-core-legacy') - implementation project(':uhabits-core') implementation project(":android-pickers") + implementation files("../../uhabits-core/build/libs/uhabits-core-jvm.jar") kapt "com.google.dagger:dagger-compiler:$DAGGER_VERSION" kaptAndroidTest "com.google.dagger:dagger-compiler:$DAGGER_VERSION" testImplementation "com.google.dagger:dagger:$DAGGER_VERSION" diff --git a/android/uhabits-core-legacy/.gitignore b/android/uhabits-core-legacy/.gitignore deleted file mode 100644 index 796b96d1c..000000000 --- a/android/uhabits-core-legacy/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/build diff --git a/android/uhabits-core-legacy/build.gradle b/android/uhabits-core-legacy/build.gradle deleted file mode 100644 index f8c6dc82c..000000000 --- a/android/uhabits-core-legacy/build.gradle +++ /dev/null @@ -1,32 +0,0 @@ -apply plugin: 'idea' -apply plugin: 'java' -apply plugin: 'kotlin' - -dependencies { - annotationProcessor "com.google.auto.factory:auto-factory:$AUTO_FACTORY_VERSION" - annotationProcessor "com.google.dagger:dagger:$DAGGER_VERSION" - compileOnly "com.google.auto.factory:auto-factory:$AUTO_FACTORY_VERSION" - compileOnly "com.google.dagger:dagger:$DAGGER_VERSION" - compileOnly 'javax.annotation:jsr250-api:1.0' - compileOnly 'org.jetbrains:annotations:18.0.0' - implementation "com.google.guava:guava:30.0-jre" - implementation "org.jetbrains.kotlin:kotlin-stdlib:$KOTLIN_VERSION" - implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:$KX_COROUTINES_VERSION" - implementation 'androidx.annotation:annotation:1.1.0' - implementation 'com.google.code.findbugs:jsr305:3.0.2' - implementation 'commons-codec:commons-codec:1.15' - implementation 'org.apache.commons:commons-lang3:3.5' - implementation 'com.opencsv:opencsv:3.10' - implementation project(':uhabits-core') - testImplementation "org.jetbrains.kotlin:kotlin-reflect:$KOTLIN_VERSION" - testImplementation "org.jetbrains.kotlin:kotlin-test:$KOTLIN_VERSION" - testImplementation 'junit:junit:4.12' - testImplementation 'nl.jqno.equalsverifier:equalsverifier:2.4.8' - testImplementation 'org.apache.commons:commons-io:1.3.2' - testImplementation 'org.hamcrest:hamcrest-library:1.4-atlassian-1' - testImplementation 'org.mockito:mockito-core:2.28.2' - testImplementation 'org.xerial:sqlite-jdbc:3.18.0' -} - -sourceCompatibility = "1.8" -targetCompatibility = "1.8" diff --git a/android/uhabits-core/build.gradle b/android/uhabits-core/build.gradle deleted file mode 100644 index f6f16dafb..000000000 --- a/android/uhabits-core/build.gradle +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Copyright (C) 2016-2019 Álinson Santos Xavier - * - * This file is part of Loop Habit Tracker. - * - * Loop Habit Tracker is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by the - * Free Software Foundation, either version 3 of the License, or (at your - * option) any later version. - * - * Loop Habit Tracker is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY - * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - * more details. - * - * You should have received a copy of the GNU General Public License along - * with this program. If not, see . - */ - -plugins { - id 'kotlin-multiplatform' -} - -repositories { - mavenCentral() -} - -kotlin { - jvm() - - sourceSets { - commonMain { - dependencies { - implementation kotlin('stdlib-common') - implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core-common:1.3.8" - } - } - - commonTest { - dependencies { - implementation kotlin('test-common') - implementation kotlin('test-annotations-common') - } - } - - jvmMain { - dependencies { - implementation kotlin('stdlib-jdk8') - implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:$KX_COROUTINES_VERSION" - } - } - - jvmTest { - dependencies { - implementation kotlin('test') - implementation kotlin('test-junit') - implementation 'org.xerial:sqlite-jdbc:3.25.2' - } - } - } -} diff --git a/android/uhabits-core-legacy/assets/main/fonts/FontAwesome.ttf b/uhabits-core/assets/main/fonts/FontAwesome.ttf similarity index 100% rename from android/uhabits-core-legacy/assets/main/fonts/FontAwesome.ttf rename to uhabits-core/assets/main/fonts/FontAwesome.ttf diff --git a/android/uhabits-core-legacy/assets/main/fonts/NotoSans-Bold.ttf b/uhabits-core/assets/main/fonts/NotoSans-Bold.ttf similarity index 100% rename from android/uhabits-core-legacy/assets/main/fonts/NotoSans-Bold.ttf rename to uhabits-core/assets/main/fonts/NotoSans-Bold.ttf diff --git a/android/uhabits-core-legacy/assets/main/fonts/NotoSans-Regular.ttf b/uhabits-core/assets/main/fonts/NotoSans-Regular.ttf similarity index 100% rename from android/uhabits-core-legacy/assets/main/fonts/NotoSans-Regular.ttf rename to uhabits-core/assets/main/fonts/NotoSans-Regular.ttf diff --git a/android/uhabits-core-legacy/src/test/resources/databases/021.db b/uhabits-core/assets/test/databases/021.db similarity index 100% rename from android/uhabits-core-legacy/src/test/resources/databases/021.db rename to uhabits-core/assets/test/databases/021.db diff --git a/android/uhabits-core-legacy/src/test/resources/databases/022.db b/uhabits-core/assets/test/databases/022.db similarity index 100% rename from android/uhabits-core-legacy/src/test/resources/databases/022.db rename to uhabits-core/assets/test/databases/022.db diff --git a/android/uhabits-core-legacy/src/test/resources/habitbull.csv b/uhabits-core/assets/test/habitbull.csv similarity index 100% rename from android/uhabits-core-legacy/src/test/resources/habitbull.csv rename to uhabits-core/assets/test/habitbull.csv diff --git a/android/uhabits-core-legacy/assets/test/hello.txt b/uhabits-core/assets/test/hello.txt similarity index 100% rename from android/uhabits-core-legacy/assets/test/hello.txt rename to uhabits-core/assets/test/hello.txt diff --git a/android/uhabits-core-legacy/src/test/resources/loop.db b/uhabits-core/assets/test/loop.db similarity index 100% rename from android/uhabits-core-legacy/src/test/resources/loop.db rename to uhabits-core/assets/test/loop.db diff --git a/android/uhabits-core-legacy/src/test/resources/rewire.db b/uhabits-core/assets/test/rewire.db similarity index 100% rename from android/uhabits-core-legacy/src/test/resources/rewire.db rename to uhabits-core/assets/test/rewire.db diff --git a/android/uhabits-core-legacy/src/test/resources/tickmate.db b/uhabits-core/assets/test/tickmate.db similarity index 100% rename from android/uhabits-core-legacy/src/test/resources/tickmate.db rename to uhabits-core/assets/test/tickmate.db diff --git a/android/uhabits-core-legacy/assets/test/views/BarChart/base.png b/uhabits-core/assets/test/views/BarChart/base.png similarity index 100% rename from android/uhabits-core-legacy/assets/test/views/BarChart/base.png rename to uhabits-core/assets/test/views/BarChart/base.png diff --git a/android/uhabits-core-legacy/assets/test/views/BarChart/offset.png b/uhabits-core/assets/test/views/BarChart/offset.png similarity index 100% rename from android/uhabits-core-legacy/assets/test/views/BarChart/offset.png rename to uhabits-core/assets/test/views/BarChart/offset.png diff --git a/android/uhabits-core-legacy/assets/test/views/BarChart/themeDark.png b/uhabits-core/assets/test/views/BarChart/themeDark.png similarity index 100% rename from android/uhabits-core-legacy/assets/test/views/BarChart/themeDark.png rename to uhabits-core/assets/test/views/BarChart/themeDark.png diff --git a/android/uhabits-core-legacy/assets/test/views/BarChart/themeWidget.png b/uhabits-core/assets/test/views/BarChart/themeWidget.png similarity index 100% rename from android/uhabits-core-legacy/assets/test/views/BarChart/themeWidget.png rename to uhabits-core/assets/test/views/BarChart/themeWidget.png diff --git a/android/uhabits-core-legacy/assets/test/views/CanvasTest.png b/uhabits-core/assets/test/views/CanvasTest.png similarity index 100% rename from android/uhabits-core-legacy/assets/test/views/CanvasTest.png rename to uhabits-core/assets/test/views/CanvasTest.png diff --git a/android/uhabits-core-legacy/assets/test/views/CheckmarkButton/explicit.png b/uhabits-core/assets/test/views/CheckmarkButton/explicit.png similarity index 100% rename from android/uhabits-core-legacy/assets/test/views/CheckmarkButton/explicit.png rename to uhabits-core/assets/test/views/CheckmarkButton/explicit.png diff --git a/android/uhabits-core-legacy/assets/test/views/CheckmarkButton/implicit.png b/uhabits-core/assets/test/views/CheckmarkButton/implicit.png similarity index 100% rename from android/uhabits-core-legacy/assets/test/views/CheckmarkButton/implicit.png rename to uhabits-core/assets/test/views/CheckmarkButton/implicit.png diff --git a/android/uhabits-core-legacy/assets/test/views/CheckmarkButton/unchecked.png b/uhabits-core/assets/test/views/CheckmarkButton/unchecked.png similarity index 100% rename from android/uhabits-core-legacy/assets/test/views/CheckmarkButton/unchecked.png rename to uhabits-core/assets/test/views/CheckmarkButton/unchecked.png diff --git a/android/uhabits-core-legacy/assets/test/views/HabitListHeader/light.png b/uhabits-core/assets/test/views/HabitListHeader/light.png similarity index 100% rename from android/uhabits-core-legacy/assets/test/views/HabitListHeader/light.png rename to uhabits-core/assets/test/views/HabitListHeader/light.png diff --git a/android/uhabits-core-legacy/assets/test/views/HistoryChart/base.png b/uhabits-core/assets/test/views/HistoryChart/base.png similarity index 100% rename from android/uhabits-core-legacy/assets/test/views/HistoryChart/base.png rename to uhabits-core/assets/test/views/HistoryChart/base.png diff --git a/android/uhabits-core-legacy/assets/test/views/HistoryChart/scroll.png b/uhabits-core/assets/test/views/HistoryChart/scroll.png similarity index 100% rename from android/uhabits-core-legacy/assets/test/views/HistoryChart/scroll.png rename to uhabits-core/assets/test/views/HistoryChart/scroll.png diff --git a/android/uhabits-core-legacy/assets/test/views/HistoryChart/small.png b/uhabits-core/assets/test/views/HistoryChart/small.png similarity index 100% rename from android/uhabits-core-legacy/assets/test/views/HistoryChart/small.png rename to uhabits-core/assets/test/views/HistoryChart/small.png diff --git a/android/uhabits-core-legacy/assets/test/views/HistoryChart/themeDark.png b/uhabits-core/assets/test/views/HistoryChart/themeDark.png similarity index 100% rename from android/uhabits-core-legacy/assets/test/views/HistoryChart/themeDark.png rename to uhabits-core/assets/test/views/HistoryChart/themeDark.png diff --git a/android/uhabits-core-legacy/assets/test/views/HistoryChart/themeWidget.png b/uhabits-core/assets/test/views/HistoryChart/themeWidget.png similarity index 100% rename from android/uhabits-core-legacy/assets/test/views/HistoryChart/themeWidget.png rename to uhabits-core/assets/test/views/HistoryChart/themeWidget.png diff --git a/android/uhabits-core-legacy/assets/test/views/HistoryChart/weekday.png b/uhabits-core/assets/test/views/HistoryChart/weekday.png similarity index 100% rename from android/uhabits-core-legacy/assets/test/views/HistoryChart/weekday.png rename to uhabits-core/assets/test/views/HistoryChart/weekday.png diff --git a/android/uhabits-core-legacy/assets/test/views/NumberButton/render_above.png b/uhabits-core/assets/test/views/NumberButton/render_above.png similarity index 100% rename from android/uhabits-core-legacy/assets/test/views/NumberButton/render_above.png rename to uhabits-core/assets/test/views/NumberButton/render_above.png diff --git a/android/uhabits-core-legacy/assets/test/views/NumberButton/render_below.png b/uhabits-core/assets/test/views/NumberButton/render_below.png similarity index 100% rename from android/uhabits-core-legacy/assets/test/views/NumberButton/render_below.png rename to uhabits-core/assets/test/views/NumberButton/render_below.png diff --git a/android/uhabits-core-legacy/assets/test/views/NumberButton/render_zero.png b/uhabits-core/assets/test/views/NumberButton/render_zero.png similarity index 100% rename from android/uhabits-core-legacy/assets/test/views/NumberButton/render_zero.png rename to uhabits-core/assets/test/views/NumberButton/render_zero.png diff --git a/android/uhabits-core-legacy/assets/test/views/Ring/draw1.png b/uhabits-core/assets/test/views/Ring/draw1.png similarity index 100% rename from android/uhabits-core-legacy/assets/test/views/Ring/draw1.png rename to uhabits-core/assets/test/views/Ring/draw1.png diff --git a/uhabits-core/build.gradle b/uhabits-core/build.gradle new file mode 100644 index 000000000..01a543383 --- /dev/null +++ b/uhabits-core/build.gradle @@ -0,0 +1,97 @@ +/* + * Copyright (C) 2016-2019 Álinson Santos Xavier + * + * This file is part of Loop Habit Tracker. + * + * Loop Habit Tracker is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by the + * Free Software Foundation, either version 3 of the License, or (at your + * option) any later version. + * + * Loop Habit Tracker is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along + * with this program. If not, see . + */ + +//buildscript { +// repositories { +// google() +// jcenter() +// maven { url "https://plugins.gradle.org/m2/" } +// maven { url "https://oss.sonatype.org/content/repositories/snapshots/" } +// } +// +// dependencies { +// classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.21" +// classpath "org.jlleitschuh.gradle:ktlint-gradle:9.4.1" +// } +//} + +plugins { + id "org.jetbrains.kotlin.multiplatform" version "1.4.21" +} + +repositories { + google() + jcenter() + mavenCentral() + maven { url "https://plugins.gradle.org/m2/" } + maven { url "https://oss.sonatype.org/content/repositories/snapshots/" } +} + +kotlin { + jvm { + withJava() + } + + sourceSets { + commonMain { + dependencies { + implementation kotlin('stdlib-common') + implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core-common:1.3.8" + } + } + + commonTest { + dependencies { + implementation kotlin('test-common') + implementation kotlin('test-annotations-common') + } + } + + jvmMain { + dependencies { + implementation kotlin('stdlib-jdk8') +// annotationProcessor "com.google.dagger:dagger:$DAGGER_VERSION" + compileOnly "com.google.dagger:dagger:$DAGGER_VERSION" +// compileOnly 'javax.annotation:jsr250-api:1.0' +// compileOnly 'org.jetbrains:annotations:18.0.0' + implementation "com.google.guava:guava:30.0-jre" + implementation "org.jetbrains.kotlin:kotlin-stdlib:$KOTLIN_VERSION" + implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:$KX_COROUTINES_VERSION" + implementation 'androidx.annotation:annotation:1.1.0' + implementation 'com.google.code.findbugs:jsr305:3.0.2' + implementation 'com.opencsv:opencsv:3.10' + implementation 'commons-codec:commons-codec:1.15' + implementation 'org.apache.commons:commons-lang3:3.5' + + } + } + + jvmTest { + dependencies { + implementation kotlin('test') + implementation kotlin('test-junit') + implementation 'org.xerial:sqlite-jdbc:3.25.2' + implementation 'org.hamcrest:hamcrest:2.1' + implementation 'nl.jqno.equalsverifier:equalsverifier:2.4.8' + implementation 'org.apache.commons:commons-io:1.3.2' + implementation 'org.mockito:mockito-core:2.28.2' + } + } + } +} diff --git a/uhabits-core/gradle.properties b/uhabits-core/gradle.properties new file mode 100644 index 000000000..87da1ae2b --- /dev/null +++ b/uhabits-core/gradle.properties @@ -0,0 +1,21 @@ +VERSION_CODE = 20001 +VERSION_NAME = 2.0.1-alpha + +MIN_SDK_VERSION = 23 +TARGET_SDK_VERSION = 29 +COMPILE_SDK_VERSION = 29 + +DAGGER_VERSION = 2.25.4 +KOTLIN_VERSION = 1.4.10 +KX_COROUTINES_VERSION = 1.4.2 +SUPPORT_LIBRARY_VERSION = 28.0.0 +AUTO_FACTORY_VERSION = 1.0-beta6 +BUILD_TOOLS_VERSION = 4.0.0 +KTOR_VERSION=1.4.2 +ESPRESSO_VERSION=3.3.0 + +org.gradle.parallel=false +org.gradle.daemon=true +org.gradle.jvmargs=-Xms2048m -Xmx2048m -XX:MaxPermSize=2048m +android.useAndroidX=true +android.enableJetifier=true diff --git a/uhabits-core/gradle/wrapper/gradle-wrapper.jar b/uhabits-core/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 000000000..cc4fdc293 Binary files /dev/null and b/uhabits-core/gradle/wrapper/gradle-wrapper.jar differ diff --git a/uhabits-core/gradle/wrapper/gradle-wrapper.properties b/uhabits-core/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 000000000..2aa714b7c --- /dev/null +++ b/uhabits-core/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,6 @@ +#Sat Nov 28 09:55:24 CST 2020 +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-all.zip diff --git a/uhabits-core/gradlew b/uhabits-core/gradlew new file mode 100755 index 000000000..2fe81a7d9 --- /dev/null +++ b/uhabits-core/gradlew @@ -0,0 +1,183 @@ +#!/usr/bin/env sh + +# +# Copyright 2015 the original author or authors. +# +# 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 +# +# https://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. +# + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# 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"' + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn () { + echo "$*" +} + +die () { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; + NONSTOP* ) + nonstop=true + ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin or MSYS, switch paths to Windows format before running java +if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=`expr $i + 1` + done + case $i in + 0) set -- ;; + 1) set -- "$args0" ;; + 2) set -- "$args0" "$args1" ;; + 3) set -- "$args0" "$args1" "$args2" ;; + 4) set -- "$args0" "$args1" "$args2" "$args3" ;; + 5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + 6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + 7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + 8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + 9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Escape application args +save () { + for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done + echo " " +} +APP_ARGS=`save "$@"` + +# Collect all arguments for the java command, following the shell quoting and substitution rules +eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" + +exec "$JAVACMD" "$@" diff --git a/uhabits-core/gradlew.bat b/uhabits-core/gradlew.bat new file mode 100644 index 000000000..9618d8d96 --- /dev/null +++ b/uhabits-core/gradlew.bat @@ -0,0 +1,100 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windows variants + +if not "%OS%" == "Windows_NT" goto win9xME_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/android/uhabits-core/src/commonMain/kotlin/org/isoron/platform/gui/Canvas.kt b/uhabits-core/src/commonMain/kotlin/org/isoron/platform/gui/Canvas.kt similarity index 100% rename from android/uhabits-core/src/commonMain/kotlin/org/isoron/platform/gui/Canvas.kt rename to uhabits-core/src/commonMain/kotlin/org/isoron/platform/gui/Canvas.kt diff --git a/android/uhabits-core/src/commonMain/kotlin/org/isoron/platform/gui/Color.kt b/uhabits-core/src/commonMain/kotlin/org/isoron/platform/gui/Color.kt similarity index 100% rename from android/uhabits-core/src/commonMain/kotlin/org/isoron/platform/gui/Color.kt rename to uhabits-core/src/commonMain/kotlin/org/isoron/platform/gui/Color.kt diff --git a/android/uhabits-core/src/commonMain/kotlin/org/isoron/platform/gui/FontAwesome.kt b/uhabits-core/src/commonMain/kotlin/org/isoron/platform/gui/FontAwesome.kt similarity index 100% rename from android/uhabits-core/src/commonMain/kotlin/org/isoron/platform/gui/FontAwesome.kt rename to uhabits-core/src/commonMain/kotlin/org/isoron/platform/gui/FontAwesome.kt diff --git a/android/uhabits-core/src/commonMain/kotlin/org/isoron/platform/gui/Image.kt b/uhabits-core/src/commonMain/kotlin/org/isoron/platform/gui/Image.kt similarity index 100% rename from android/uhabits-core/src/commonMain/kotlin/org/isoron/platform/gui/Image.kt rename to uhabits-core/src/commonMain/kotlin/org/isoron/platform/gui/Image.kt diff --git a/android/uhabits-core/src/commonMain/kotlin/org/isoron/platform/gui/View.kt b/uhabits-core/src/commonMain/kotlin/org/isoron/platform/gui/View.kt similarity index 100% rename from android/uhabits-core/src/commonMain/kotlin/org/isoron/platform/gui/View.kt rename to uhabits-core/src/commonMain/kotlin/org/isoron/platform/gui/View.kt diff --git a/android/uhabits-core/src/commonMain/kotlin/org/isoron/platform/io/Files.kt b/uhabits-core/src/commonMain/kotlin/org/isoron/platform/io/Files.kt similarity index 100% rename from android/uhabits-core/src/commonMain/kotlin/org/isoron/platform/io/Files.kt rename to uhabits-core/src/commonMain/kotlin/org/isoron/platform/io/Files.kt diff --git a/android/uhabits-core/src/commonMain/kotlin/org/isoron/platform/time/Dates.kt b/uhabits-core/src/commonMain/kotlin/org/isoron/platform/time/Dates.kt similarity index 100% rename from android/uhabits-core/src/commonMain/kotlin/org/isoron/platform/time/Dates.kt rename to uhabits-core/src/commonMain/kotlin/org/isoron/platform/time/Dates.kt diff --git a/android/uhabits-core/src/jvmMain/kotlin/org/isoron/platform/gui/JavaCanvas.kt b/uhabits-core/src/jvmMain/java/org/isoron/platform/gui/JavaCanvas.kt similarity index 100% rename from android/uhabits-core/src/jvmMain/kotlin/org/isoron/platform/gui/JavaCanvas.kt rename to uhabits-core/src/jvmMain/java/org/isoron/platform/gui/JavaCanvas.kt diff --git a/android/uhabits-core/src/jvmMain/kotlin/org/isoron/platform/gui/JavaImage.kt b/uhabits-core/src/jvmMain/java/org/isoron/platform/gui/JavaImage.kt similarity index 100% rename from android/uhabits-core/src/jvmMain/kotlin/org/isoron/platform/gui/JavaImage.kt rename to uhabits-core/src/jvmMain/java/org/isoron/platform/gui/JavaImage.kt diff --git a/android/uhabits-core/src/jvmMain/kotlin/org/isoron/platform/io/JavaFiles.kt b/uhabits-core/src/jvmMain/java/org/isoron/platform/io/JavaFiles.kt similarity index 100% rename from android/uhabits-core/src/jvmMain/kotlin/org/isoron/platform/io/JavaFiles.kt rename to uhabits-core/src/jvmMain/java/org/isoron/platform/io/JavaFiles.kt diff --git a/android/uhabits-core/src/jvmMain/kotlin/org/isoron/time/JavaDates.kt b/uhabits-core/src/jvmMain/java/org/isoron/time/JavaDates.kt similarity index 100% rename from android/uhabits-core/src/jvmMain/kotlin/org/isoron/time/JavaDates.kt rename to uhabits-core/src/jvmMain/java/org/isoron/time/JavaDates.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/AppScope.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/AppScope.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/AppScope.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/AppScope.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/Constants.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/Constants.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/Constants.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/Constants.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/commands/ArchiveHabitsCommand.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/commands/ArchiveHabitsCommand.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/commands/ArchiveHabitsCommand.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/commands/ArchiveHabitsCommand.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/commands/ChangeHabitColorCommand.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/commands/ChangeHabitColorCommand.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/commands/ChangeHabitColorCommand.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/commands/ChangeHabitColorCommand.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/commands/Command.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/commands/Command.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/commands/Command.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/commands/Command.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/commands/CommandRunner.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/commands/CommandRunner.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/commands/CommandRunner.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/commands/CommandRunner.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/commands/CreateHabitCommand.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/commands/CreateHabitCommand.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/commands/CreateHabitCommand.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/commands/CreateHabitCommand.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/commands/CreateRepetitionCommand.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/commands/CreateRepetitionCommand.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/commands/CreateRepetitionCommand.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/commands/CreateRepetitionCommand.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/commands/DeleteHabitsCommand.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/commands/DeleteHabitsCommand.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/commands/DeleteHabitsCommand.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/commands/DeleteHabitsCommand.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/commands/EditHabitCommand.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/commands/EditHabitCommand.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/commands/EditHabitCommand.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/commands/EditHabitCommand.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/commands/UnarchiveHabitsCommand.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/commands/UnarchiveHabitsCommand.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/commands/UnarchiveHabitsCommand.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/commands/UnarchiveHabitsCommand.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/database/Column.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/database/Column.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/database/Column.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/database/Column.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/database/Cursor.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/database/Cursor.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/database/Cursor.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/database/Cursor.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/database/Database.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/database/Database.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/database/Database.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/database/Database.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/database/DatabaseOpener.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/database/DatabaseOpener.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/database/DatabaseOpener.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/database/DatabaseOpener.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/database/JdbcCursor.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/database/JdbcCursor.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/database/JdbcCursor.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/database/JdbcCursor.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/database/JdbcDatabase.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/database/JdbcDatabase.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/database/JdbcDatabase.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/database/JdbcDatabase.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/database/MigrationHelper.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/database/MigrationHelper.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/database/MigrationHelper.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/database/MigrationHelper.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/database/Repository.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/database/Repository.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/database/Repository.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/database/Repository.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/database/SQLParser.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/database/SQLParser.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/database/SQLParser.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/database/SQLParser.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/database/Table.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/database/Table.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/database/Table.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/database/Table.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/database/UnsupportedDatabaseVersionException.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/database/UnsupportedDatabaseVersionException.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/database/UnsupportedDatabaseVersionException.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/database/UnsupportedDatabaseVersionException.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/io/AbstractImporter.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/io/AbstractImporter.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/io/AbstractImporter.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/io/AbstractImporter.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/io/GenericImporter.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/io/GenericImporter.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/io/GenericImporter.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/io/GenericImporter.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/io/HabitBullCSVImporter.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/io/HabitBullCSVImporter.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/io/HabitBullCSVImporter.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/io/HabitBullCSVImporter.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/io/HabitsCSVExporter.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/io/HabitsCSVExporter.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/io/HabitsCSVExporter.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/io/HabitsCSVExporter.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/io/Logging.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/io/Logging.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/io/Logging.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/io/Logging.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/io/LoopDBImporter.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/io/LoopDBImporter.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/io/LoopDBImporter.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/io/LoopDBImporter.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/io/RewireDBImporter.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/io/RewireDBImporter.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/io/RewireDBImporter.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/io/RewireDBImporter.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/io/TickmateDBImporter.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/io/TickmateDBImporter.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/io/TickmateDBImporter.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/io/TickmateDBImporter.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/Entry.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/Entry.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/Entry.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/Entry.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/EntryList.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/EntryList.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/EntryList.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/EntryList.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/Frequency.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/Frequency.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/Frequency.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/Frequency.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/Habit.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/Habit.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/Habit.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/Habit.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/HabitList.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/HabitList.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/HabitList.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/HabitList.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/HabitMatcher.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/HabitMatcher.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/HabitMatcher.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/HabitMatcher.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/HabitMatcherBuilder.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/HabitMatcherBuilder.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/HabitMatcherBuilder.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/HabitMatcherBuilder.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/HabitNotFoundException.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/HabitNotFoundException.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/HabitNotFoundException.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/HabitNotFoundException.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/ModelFactory.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/ModelFactory.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/ModelFactory.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/ModelFactory.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/ModelObservable.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/ModelObservable.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/ModelObservable.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/ModelObservable.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/PaletteColor.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/PaletteColor.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/PaletteColor.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/PaletteColor.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/Reminder.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/Reminder.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/Reminder.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/Reminder.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/Score.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/Score.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/Score.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/Score.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/ScoreList.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/ScoreList.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/ScoreList.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/ScoreList.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/Streak.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/Streak.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/Streak.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/Streak.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/StreakList.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/StreakList.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/StreakList.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/StreakList.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/Timestamp.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/Timestamp.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/Timestamp.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/Timestamp.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/WeekdayList.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/WeekdayList.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/WeekdayList.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/WeekdayList.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/memory/MemoryHabitList.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/memory/MemoryHabitList.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/memory/MemoryHabitList.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/memory/MemoryHabitList.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/memory/MemoryModelFactory.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/memory/MemoryModelFactory.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/memory/MemoryModelFactory.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/memory/MemoryModelFactory.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/memory/package-info.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/memory/package-info.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/memory/package-info.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/memory/package-info.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/sqlite/SQLModelFactory.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/sqlite/SQLModelFactory.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/sqlite/SQLModelFactory.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/sqlite/SQLModelFactory.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/sqlite/SQLiteEntryList.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/sqlite/SQLiteEntryList.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/sqlite/SQLiteEntryList.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/sqlite/SQLiteEntryList.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/sqlite/SQLiteHabitList.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/sqlite/SQLiteHabitList.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/sqlite/SQLiteHabitList.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/sqlite/SQLiteHabitList.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/sqlite/package-info.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/sqlite/package-info.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/sqlite/package-info.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/sqlite/package-info.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/sqlite/records/EntryRecord.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/sqlite/records/EntryRecord.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/sqlite/records/EntryRecord.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/sqlite/records/EntryRecord.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/sqlite/records/HabitRecord.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/sqlite/records/HabitRecord.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/models/sqlite/records/HabitRecord.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/models/sqlite/records/HabitRecord.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/preferences/Preferences.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/preferences/Preferences.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/preferences/Preferences.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/preferences/Preferences.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/preferences/PropertiesStorage.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/preferences/PropertiesStorage.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/preferences/PropertiesStorage.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/preferences/PropertiesStorage.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/preferences/WidgetPreferences.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/preferences/WidgetPreferences.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/preferences/WidgetPreferences.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/preferences/WidgetPreferences.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/reminders/ReminderScheduler.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/reminders/ReminderScheduler.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/reminders/ReminderScheduler.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/reminders/ReminderScheduler.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/sync/AbstractSyncServer.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/sync/AbstractSyncServer.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/sync/AbstractSyncServer.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/sync/AbstractSyncServer.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/sync/EncryptionExt.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/sync/EncryptionExt.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/sync/EncryptionExt.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/sync/EncryptionExt.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/sync/NetworkManager.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/sync/NetworkManager.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/sync/NetworkManager.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/sync/NetworkManager.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/sync/SyncData.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/sync/SyncData.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/sync/SyncData.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/sync/SyncData.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/sync/SyncException.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/sync/SyncException.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/sync/SyncException.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/sync/SyncException.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/sync/SyncManager.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/sync/SyncManager.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/sync/SyncManager.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/sync/SyncManager.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/tasks/ExportCSVTask.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/tasks/ExportCSVTask.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/tasks/ExportCSVTask.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/tasks/ExportCSVTask.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/tasks/ExportCSVTaskFactory.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/tasks/ExportCSVTaskFactory.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/tasks/ExportCSVTaskFactory.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/tasks/ExportCSVTaskFactory.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/tasks/SingleThreadTaskRunner.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/tasks/SingleThreadTaskRunner.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/tasks/SingleThreadTaskRunner.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/tasks/SingleThreadTaskRunner.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/tasks/Task.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/tasks/Task.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/tasks/Task.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/tasks/Task.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/tasks/TaskRunner.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/tasks/TaskRunner.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/tasks/TaskRunner.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/tasks/TaskRunner.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/test/HabitFixtures.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/test/HabitFixtures.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/test/HabitFixtures.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/test/HabitFixtures.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/NotificationTray.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/NotificationTray.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/NotificationTray.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/NotificationTray.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/ThemeSwitcher.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/ThemeSwitcher.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/ThemeSwitcher.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/ThemeSwitcher.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/callbacks/OnColorPickedCallback.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/callbacks/OnColorPickedCallback.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/callbacks/OnColorPickedCallback.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/callbacks/OnColorPickedCallback.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/callbacks/OnConfirmedCallback.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/callbacks/OnConfirmedCallback.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/callbacks/OnConfirmedCallback.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/callbacks/OnConfirmedCallback.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/callbacks/OnFinishedCallback.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/callbacks/OnFinishedCallback.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/callbacks/OnFinishedCallback.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/callbacks/OnFinishedCallback.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/callbacks/OnToggleCheckmarkListener.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/callbacks/OnToggleCheckmarkListener.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/callbacks/OnToggleCheckmarkListener.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/callbacks/OnToggleCheckmarkListener.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/list/HabitCardListCache.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/list/HabitCardListCache.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/list/HabitCardListCache.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/list/HabitCardListCache.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/list/HintList.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/list/HintList.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/list/HintList.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/list/HintList.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/list/HintListFactory.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/list/HintListFactory.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/list/HintListFactory.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/list/HintListFactory.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/list/ListHabitsBehavior.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/list/ListHabitsBehavior.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/list/ListHabitsBehavior.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/list/ListHabitsBehavior.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/list/ListHabitsMenuBehavior.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/list/ListHabitsMenuBehavior.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/list/ListHabitsMenuBehavior.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/list/ListHabitsMenuBehavior.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/list/ListHabitsSelectionMenuBehavior.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/list/ListHabitsSelectionMenuBehavior.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/list/ListHabitsSelectionMenuBehavior.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/list/ListHabitsSelectionMenuBehavior.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/show/ShowHabit.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/show/ShowHabit.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/show/ShowHabit.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/show/ShowHabit.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/show/ShowHabitMenuPresenter.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/show/ShowHabitMenuPresenter.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/show/ShowHabitMenuPresenter.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/show/ShowHabitMenuPresenter.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/show/views/BarCard.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/show/views/BarCard.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/show/views/BarCard.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/show/views/BarCard.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/show/views/FrequencyCard.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/show/views/FrequencyCard.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/show/views/FrequencyCard.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/show/views/FrequencyCard.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/show/views/HistoryCard.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/show/views/HistoryCard.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/show/views/HistoryCard.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/show/views/HistoryCard.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/show/views/NotesCard.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/show/views/NotesCard.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/show/views/NotesCard.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/show/views/NotesCard.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/show/views/OverviewCard.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/show/views/OverviewCard.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/show/views/OverviewCard.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/show/views/OverviewCard.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/show/views/ScoreCard.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/show/views/ScoreCard.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/show/views/ScoreCard.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/show/views/ScoreCard.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/show/views/StreakCart.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/show/views/StreakCart.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/show/views/StreakCart.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/show/views/StreakCart.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/show/views/SubtitleCard.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/show/views/SubtitleCard.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/show/views/SubtitleCard.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/show/views/SubtitleCard.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/show/views/TargetCard.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/show/views/TargetCard.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/habits/show/views/TargetCard.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/habits/show/views/TargetCard.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/sync/SyncBehavior.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/sync/SyncBehavior.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/screens/sync/SyncBehavior.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/screens/sync/SyncBehavior.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/views/BarChart.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/views/BarChart.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/views/BarChart.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/views/BarChart.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/views/CheckmarkButton.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/views/CheckmarkButton.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/views/CheckmarkButton.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/views/CheckmarkButton.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/views/HabitListHeader.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/views/HabitListHeader.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/views/HabitListHeader.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/views/HabitListHeader.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/views/HistoryChart.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/views/HistoryChart.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/views/HistoryChart.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/views/HistoryChart.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/views/NumberButton.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/views/NumberButton.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/views/NumberButton.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/views/NumberButton.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/views/Ring.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/views/Ring.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/views/Ring.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/views/Ring.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/views/Themes.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/views/Themes.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/views/Themes.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/views/Themes.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/widgets/WidgetBehavior.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/widgets/WidgetBehavior.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/ui/widgets/WidgetBehavior.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/ui/widgets/WidgetBehavior.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/utils/DateFormats.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/utils/DateFormats.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/utils/DateFormats.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/utils/DateFormats.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/utils/DateUtils.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/utils/DateUtils.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/utils/DateUtils.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/utils/DateUtils.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/utils/FileExtensions.kt b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/utils/FileExtensions.kt similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/utils/FileExtensions.kt rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/utils/FileExtensions.kt diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/utils/MidnightTimer.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/utils/MidnightTimer.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/utils/MidnightTimer.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/utils/MidnightTimer.java diff --git a/android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/utils/StringUtils.java b/uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/utils/StringUtils.java similarity index 100% rename from android/uhabits-core-legacy/src/main/java/org/isoron/uhabits/core/utils/StringUtils.java rename to uhabits-core/src/jvmMain/java/org/isoron/uhabits/core/utils/StringUtils.java diff --git a/android/uhabits-core-legacy/src/main/resources/migrations/09.sql b/uhabits-core/src/jvmMain/resources/migrations/09.sql similarity index 100% rename from android/uhabits-core-legacy/src/main/resources/migrations/09.sql rename to uhabits-core/src/jvmMain/resources/migrations/09.sql diff --git a/android/uhabits-core-legacy/src/main/resources/migrations/10.sql b/uhabits-core/src/jvmMain/resources/migrations/10.sql similarity index 100% rename from android/uhabits-core-legacy/src/main/resources/migrations/10.sql rename to uhabits-core/src/jvmMain/resources/migrations/10.sql diff --git a/android/uhabits-core-legacy/src/main/resources/migrations/11.sql b/uhabits-core/src/jvmMain/resources/migrations/11.sql similarity index 100% rename from android/uhabits-core-legacy/src/main/resources/migrations/11.sql rename to uhabits-core/src/jvmMain/resources/migrations/11.sql diff --git a/android/uhabits-core-legacy/src/main/resources/migrations/12.sql b/uhabits-core/src/jvmMain/resources/migrations/12.sql similarity index 100% rename from android/uhabits-core-legacy/src/main/resources/migrations/12.sql rename to uhabits-core/src/jvmMain/resources/migrations/12.sql diff --git a/android/uhabits-core-legacy/src/main/resources/migrations/13.sql b/uhabits-core/src/jvmMain/resources/migrations/13.sql similarity index 100% rename from android/uhabits-core-legacy/src/main/resources/migrations/13.sql rename to uhabits-core/src/jvmMain/resources/migrations/13.sql diff --git a/android/uhabits-core-legacy/src/main/resources/migrations/14.sql b/uhabits-core/src/jvmMain/resources/migrations/14.sql similarity index 100% rename from android/uhabits-core-legacy/src/main/resources/migrations/14.sql rename to uhabits-core/src/jvmMain/resources/migrations/14.sql diff --git a/android/uhabits-core-legacy/src/main/resources/migrations/15.sql b/uhabits-core/src/jvmMain/resources/migrations/15.sql similarity index 100% rename from android/uhabits-core-legacy/src/main/resources/migrations/15.sql rename to uhabits-core/src/jvmMain/resources/migrations/15.sql diff --git a/android/uhabits-core-legacy/src/main/resources/migrations/16.sql b/uhabits-core/src/jvmMain/resources/migrations/16.sql similarity index 100% rename from android/uhabits-core-legacy/src/main/resources/migrations/16.sql rename to uhabits-core/src/jvmMain/resources/migrations/16.sql diff --git a/android/uhabits-core-legacy/src/main/resources/migrations/17.sql b/uhabits-core/src/jvmMain/resources/migrations/17.sql similarity index 100% rename from android/uhabits-core-legacy/src/main/resources/migrations/17.sql rename to uhabits-core/src/jvmMain/resources/migrations/17.sql diff --git a/android/uhabits-core-legacy/src/main/resources/migrations/18.sql b/uhabits-core/src/jvmMain/resources/migrations/18.sql similarity index 100% rename from android/uhabits-core-legacy/src/main/resources/migrations/18.sql rename to uhabits-core/src/jvmMain/resources/migrations/18.sql diff --git a/android/uhabits-core-legacy/src/main/resources/migrations/19.sql b/uhabits-core/src/jvmMain/resources/migrations/19.sql similarity index 100% rename from android/uhabits-core-legacy/src/main/resources/migrations/19.sql rename to uhabits-core/src/jvmMain/resources/migrations/19.sql diff --git a/android/uhabits-core-legacy/src/main/resources/migrations/20.sql b/uhabits-core/src/jvmMain/resources/migrations/20.sql similarity index 100% rename from android/uhabits-core-legacy/src/main/resources/migrations/20.sql rename to uhabits-core/src/jvmMain/resources/migrations/20.sql diff --git a/android/uhabits-core-legacy/src/main/resources/migrations/21.sql b/uhabits-core/src/jvmMain/resources/migrations/21.sql similarity index 100% rename from android/uhabits-core-legacy/src/main/resources/migrations/21.sql rename to uhabits-core/src/jvmMain/resources/migrations/21.sql diff --git a/android/uhabits-core-legacy/src/main/resources/migrations/22.sql b/uhabits-core/src/jvmMain/resources/migrations/22.sql similarity index 100% rename from android/uhabits-core-legacy/src/main/resources/migrations/22.sql rename to uhabits-core/src/jvmMain/resources/migrations/22.sql diff --git a/android/uhabits-core-legacy/src/main/resources/migrations/23.sql b/uhabits-core/src/jvmMain/resources/migrations/23.sql similarity index 100% rename from android/uhabits-core-legacy/src/main/resources/migrations/23.sql rename to uhabits-core/src/jvmMain/resources/migrations/23.sql diff --git a/android/uhabits-core-legacy/src/main/resources/migrations/24.sql b/uhabits-core/src/jvmMain/resources/migrations/24.sql similarity index 100% rename from android/uhabits-core-legacy/src/main/resources/migrations/24.sql rename to uhabits-core/src/jvmMain/resources/migrations/24.sql diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/platform/gui/JavaCanvasTest.kt b/uhabits-core/src/jvmTest/java/org/isoron/platform/gui/JavaCanvasTest.kt similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/platform/gui/JavaCanvasTest.kt rename to uhabits-core/src/jvmTest/java/org/isoron/platform/gui/JavaCanvasTest.kt diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/BaseUnitTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/BaseUnitTest.java similarity index 92% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/BaseUnitTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/BaseUnitTest.java index bf34936aa..3bd132e53 100644 --- a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/BaseUnitTest.java +++ b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/BaseUnitTest.java @@ -35,6 +35,7 @@ import org.junit.runner.*; import org.mockito.junit.*; import java.io.*; +import java.nio.file.Paths; import java.sql.*; import java.util.*; @@ -149,17 +150,13 @@ public class BaseUnitTest InputStream in = getClass().getResourceAsStream(assetPath); if (in != null) return in; - String basePath = "uhabits-core/src/test/resources/"; - File file = new File(basePath + assetPath); + String pwd = Paths.get(".").toAbsolutePath().normalize().toString(); + String fullPath = pwd + "/assets/test/" + assetPath; + File file = new File(fullPath); if (file.exists() && file.canRead()) in = new FileInputStream(file); if (in != null) return in; - basePath = "src/test/resources/"; - file = new File(basePath + assetPath); - if (file.exists() && file.canRead()) in = new FileInputStream(file); - if (in != null) return in; - - throw new IllegalStateException("asset not found: " + assetPath); + throw new IllegalStateException("asset not found: " + fullPath); } protected Database openDatabaseResource(String path) throws IOException diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/commands/ArchiveHabitsCommandTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/commands/ArchiveHabitsCommandTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/commands/ArchiveHabitsCommandTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/commands/ArchiveHabitsCommandTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/commands/ChangeHabitColorCommandTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/commands/ChangeHabitColorCommandTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/commands/ChangeHabitColorCommandTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/commands/ChangeHabitColorCommandTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/commands/CreateHabitCommandTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/commands/CreateHabitCommandTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/commands/CreateHabitCommandTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/commands/CreateHabitCommandTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/commands/CreateRepetitionCommandTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/commands/CreateRepetitionCommandTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/commands/CreateRepetitionCommandTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/commands/CreateRepetitionCommandTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/commands/DeleteHabitsCommandTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/commands/DeleteHabitsCommandTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/commands/DeleteHabitsCommandTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/commands/DeleteHabitsCommandTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/commands/EditHabitCommandTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/commands/EditHabitCommandTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/commands/EditHabitCommandTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/commands/EditHabitCommandTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/commands/UnarchiveHabitsCommandTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/commands/UnarchiveHabitsCommandTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/commands/UnarchiveHabitsCommandTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/commands/UnarchiveHabitsCommandTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/database/RepositoryTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/database/RepositoryTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/database/RepositoryTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/database/RepositoryTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/database/migrations/Version22Test.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/database/migrations/Version22Test.java similarity index 98% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/database/migrations/Version22Test.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/database/migrations/Version22Test.java index ff7e0969c..42629775d 100644 --- a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/database/migrations/Version22Test.java +++ b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/database/migrations/Version22Test.java @@ -81,7 +81,7 @@ public class Version22Test extends BaseUnitTest public void testDisallowNewRepsWithInvalidRef() throws Exception { helper.migrateTo(22); - exception.expectMessage(containsString("FOREIGNKEY")); + exception.expectMessage(containsString("SQLITE_CONSTRAINT")); db.execute("insert into Repetitions(habit, timestamp, value) " + "values (99999, 100, 2)"); } @@ -103,7 +103,7 @@ public class Version22Test extends BaseUnitTest public void testDisallowNullTimestamp() throws Exception { helper.migrateTo(22); - exception.expectMessage(containsString("SQLITE_CONSTRAINT_NOTNULL")); + exception.expectMessage(containsString("SQLITE_CONSTRAINT")); db.execute("insert into Repetitions(habit, value) " + "values (0, 2)"); } @@ -124,7 +124,7 @@ public class Version22Test extends BaseUnitTest public void testDisallowNullHabit() throws Exception { helper.migrateTo(22); - exception.expectMessage(containsString("SQLITE_CONSTRAINT_NOTNULL")); + exception.expectMessage(containsString("SQLITE_CONSTRAINT")); db.execute( "insert into Repetitions(timestamp, value) " + "values (5, 2)"); } @@ -155,7 +155,7 @@ public class Version22Test extends BaseUnitTest helper.migrateTo(22); db.execute("insert into repetitions(habit, timestamp, value)" + "values (0, 100, 2)"); - exception.expectMessage(containsString("SQLITE_CONSTRAINT_UNIQUE")); + exception.expectMessage(containsString("SQLITE_CONSTRAINT")); db.execute("insert into repetitions(habit, timestamp, value)" + "values (0, 100, 5)"); } diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/database/migrations/Version23Test.kt b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/database/migrations/Version23Test.kt similarity index 89% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/database/migrations/Version23Test.kt rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/database/migrations/Version23Test.kt index 3ecc5c8d6..72e9b5bb8 100644 --- a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/database/migrations/Version23Test.kt +++ b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/database/migrations/Version23Test.kt @@ -1,7 +1,7 @@ package org.isoron.uhabits.core.database.migrations +import org.hamcrest.CoreMatchers.equalTo import org.hamcrest.MatcherAssert -import org.hamcrest.Matchers import org.isoron.uhabits.core.BaseUnitTest import org.isoron.uhabits.core.database.Database import org.isoron.uhabits.core.database.MigrationHelper @@ -47,7 +47,7 @@ class Version23Test : BaseUnitTest() { for (i in 0 until descriptions.size) { cursor.moveToNext() - MatcherAssert.assertThat(cursor.getString(0), Matchers.equalTo(descriptions[i])) + MatcherAssert.assertThat(cursor.getString(0), equalTo(descriptions[i])) } } @@ -57,7 +57,7 @@ class Version23Test : BaseUnitTest() { val cursor = db.query("select description from Habits") while (cursor.moveToNext()) { - MatcherAssert.assertThat(cursor.getString(0), Matchers.equalTo("")) + MatcherAssert.assertThat(cursor.getString(0), equalTo("")) } } } diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/io/HabitsCSVExporterTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/io/HabitsCSVExporterTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/io/HabitsCSVExporterTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/io/HabitsCSVExporterTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/io/ImportTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/io/ImportTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/io/ImportTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/io/ImportTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/models/EntryListTest.kt b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/models/EntryListTest.kt similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/models/EntryListTest.kt rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/models/EntryListTest.kt diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/models/HabitListTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/models/HabitListTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/models/HabitListTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/models/HabitListTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/models/HabitTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/models/HabitTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/models/HabitTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/models/HabitTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/models/ScoreListTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/models/ScoreListTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/models/ScoreListTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/models/ScoreListTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/models/ScoreTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/models/ScoreTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/models/ScoreTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/models/ScoreTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/models/StreakListTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/models/StreakListTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/models/StreakListTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/models/StreakListTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/models/TimestampTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/models/TimestampTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/models/TimestampTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/models/TimestampTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/models/WeekdayListTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/models/WeekdayListTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/models/WeekdayListTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/models/WeekdayListTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/models/sqlite/SQLiteEntryListTest.kt b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/models/sqlite/SQLiteEntryListTest.kt similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/models/sqlite/SQLiteEntryListTest.kt rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/models/sqlite/SQLiteEntryListTest.kt diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/models/sqlite/SQLiteHabitListTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/models/sqlite/SQLiteHabitListTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/models/sqlite/SQLiteHabitListTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/models/sqlite/SQLiteHabitListTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/models/sqlite/records/EntryRecordTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/models/sqlite/records/EntryRecordTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/models/sqlite/records/EntryRecordTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/models/sqlite/records/EntryRecordTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/models/sqlite/records/HabitRecordTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/models/sqlite/records/HabitRecordTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/models/sqlite/records/HabitRecordTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/models/sqlite/records/HabitRecordTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/preferences/PreferencesTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/preferences/PreferencesTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/preferences/PreferencesTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/preferences/PreferencesTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/preferences/PropertiesStorageTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/preferences/PropertiesStorageTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/preferences/PropertiesStorageTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/preferences/PropertiesStorageTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/reminders/ReminderSchedulerTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/reminders/ReminderSchedulerTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/reminders/ReminderSchedulerTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/reminders/ReminderSchedulerTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/sync/EncryptionExtTest.kt b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/sync/EncryptionExtTest.kt similarity index 95% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/sync/EncryptionExtTest.kt rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/sync/EncryptionExtTest.kt index 02cbe19bb..ac501cd78 100644 --- a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/sync/EncryptionExtTest.kt +++ b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/sync/EncryptionExtTest.kt @@ -19,7 +19,9 @@ package org.isoron.uhabits.core.sync import kotlinx.coroutines.runBlocking -import org.hamcrest.Matchers.equalTo +import org.hamcrest.CoreMatchers +import org.hamcrest.CoreMatchers.equalTo +import org.hamcrest.Matchers import org.hamcrest.Matchers.greaterThan import org.junit.Assert.assertEquals import org.junit.Assert.assertThat diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/tasks/SingleThreadTaskRunnerTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/tasks/SingleThreadTaskRunnerTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/tasks/SingleThreadTaskRunnerTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/tasks/SingleThreadTaskRunnerTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/ui/screens/habits/list/HabitCardListCacheTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/ui/screens/habits/list/HabitCardListCacheTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/ui/screens/habits/list/HabitCardListCacheTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/ui/screens/habits/list/HabitCardListCacheTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/ui/screens/habits/list/HintListTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/ui/screens/habits/list/HintListTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/ui/screens/habits/list/HintListTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/ui/screens/habits/list/HintListTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/ui/screens/habits/list/ListHabitsBehaviorTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/ui/screens/habits/list/ListHabitsBehaviorTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/ui/screens/habits/list/ListHabitsBehaviorTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/ui/screens/habits/list/ListHabitsBehaviorTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/ui/screens/habits/list/ListHabitsMenuBehaviorTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/ui/screens/habits/list/ListHabitsMenuBehaviorTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/ui/screens/habits/list/ListHabitsMenuBehaviorTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/ui/screens/habits/list/ListHabitsMenuBehaviorTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/ui/screens/habits/list/ListHabitsSelectionMenuBehaviorTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/ui/screens/habits/list/ListHabitsSelectionMenuBehaviorTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/ui/screens/habits/list/ListHabitsSelectionMenuBehaviorTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/ui/screens/habits/list/ListHabitsSelectionMenuBehaviorTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/ui/screens/habits/show/ShowHabitMenuPresenterTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/ui/screens/habits/show/ShowHabitMenuPresenterTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/ui/screens/habits/show/ShowHabitMenuPresenterTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/ui/screens/habits/show/ShowHabitMenuPresenterTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/ui/views/BarChartTest.kt b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/ui/views/BarChartTest.kt similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/ui/views/BarChartTest.kt rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/ui/views/BarChartTest.kt diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/ui/views/HistoryChartTest.kt b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/ui/views/HistoryChartTest.kt similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/ui/views/HistoryChartTest.kt rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/ui/views/HistoryChartTest.kt diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/ui/widgets/WidgetBehaviorTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/ui/widgets/WidgetBehaviorTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/ui/widgets/WidgetBehaviorTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/ui/widgets/WidgetBehaviorTest.java diff --git a/android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/utils/DateUtilsTest.java b/uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/utils/DateUtilsTest.java similarity index 100% rename from android/uhabits-core-legacy/src/test/java/org/isoron/uhabits/core/utils/DateUtilsTest.java rename to uhabits-core/src/jvmTest/java/org/isoron/uhabits/core/utils/DateUtilsTest.java diff --git a/uhabits-core/src/jvmTest/resources/databases/021.db b/uhabits-core/src/jvmTest/resources/databases/021.db new file mode 100644 index 000000000..850479ca0 Binary files /dev/null and b/uhabits-core/src/jvmTest/resources/databases/021.db differ diff --git a/uhabits-core/src/jvmTest/resources/databases/022.db b/uhabits-core/src/jvmTest/resources/databases/022.db new file mode 100644 index 000000000..01237dfc8 Binary files /dev/null and b/uhabits-core/src/jvmTest/resources/databases/022.db differ diff --git a/uhabits-core/src/jvmTest/resources/habitbull.csv b/uhabits-core/src/jvmTest/resources/habitbull.csv new file mode 100644 index 000000000..977a8e8df --- /dev/null +++ b/uhabits-core/src/jvmTest/resources/habitbull.csv @@ -0,0 +1,19 @@ +HabitName,HabitDescription,HabitCategory,CalendarDate,Value,CommentText +Breed dragons,with love and fire,Diet & Food,2016-03-18,1, +Breed dragons,with love and fire,Diet & Food,2016-03-19,1, +Breed dragons,with love and fire,Diet & Food,2016-03-21,1, +Reduce sleep,only 2 hours per day,Time Management,2016-03-15,1, +Reduce sleep,only 2 hours per day,Time Management,2016-03-16,1, +Reduce sleep,only 2 hours per day,Time Management,2016-03-17,1, +Reduce sleep,only 2 hours per day,Time Management,2016-03-21,1, +No-arms pushup,Become like water my friend!,Fitness,2016-03-15,1, +No-arms pushup,Become like water my friend!,Fitness,2016-03-16,1, +No-arms pushup,Become like water my friend!,Fitness,2016-03-18,1, +No-arms pushup,Become like water my friend!,Fitness,2016-03-21,1, +No-arms pushup,Become like water my friend!,Fitness,2016-03-15,1, +No-arms pushup,Become like water my friend!,Fitness,2016-03-16,1, +No-arms pushup,Become like water my friend!,Fitness,2016-03-18,1, +No-arms pushup,Become like water my friend!,Fitness,2016-03-21,1, +Grow spiritually,"transcend ego, practice compassion, smile and breath",Meditation,2016-03-15,1, +Grow spiritually,"transcend ego, practice compassion, smile and breath",Meditation,2016-03-17,1, +Grow spiritually,"transcend ego, practice compassion, smile and breath",Meditation,2016-03-21,1, diff --git a/uhabits-core/src/jvmTest/resources/loop.db b/uhabits-core/src/jvmTest/resources/loop.db new file mode 100644 index 000000000..25f0f32cd Binary files /dev/null and b/uhabits-core/src/jvmTest/resources/loop.db differ diff --git a/uhabits-core/src/jvmTest/resources/rewire.db b/uhabits-core/src/jvmTest/resources/rewire.db new file mode 100644 index 000000000..21f55032f Binary files /dev/null and b/uhabits-core/src/jvmTest/resources/rewire.db differ diff --git a/uhabits-core/src/jvmTest/resources/tickmate.db b/uhabits-core/src/jvmTest/resources/tickmate.db new file mode 100644 index 000000000..a4bec769c Binary files /dev/null and b/uhabits-core/src/jvmTest/resources/tickmate.db differ