mirror of
https://github.com/InsanusMokrassar/SDI.git
synced 2024-11-27 12:38:55 +00:00
update tests and scripts
This commit is contained in:
parent
e2d10ac152
commit
154617f9a2
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
buildscript {
|
buildscript {
|
||||||
repositories {
|
repositories {
|
||||||
mavenLocal()
|
mavenLocal()
|
||||||
@ -21,6 +20,8 @@ plugins {
|
|||||||
project.version = "$project_public_version"
|
project.version = "$project_public_version"
|
||||||
project.group = "$project_public_group"
|
project.group = "$project_public_group"
|
||||||
|
|
||||||
|
apply from: "publish.gradle"
|
||||||
|
|
||||||
repositories {
|
repositories {
|
||||||
mavenLocal()
|
mavenLocal()
|
||||||
jcenter()
|
jcenter()
|
||||||
@ -35,8 +36,7 @@ kotlin {
|
|||||||
commonMain {
|
commonMain {
|
||||||
dependencies {
|
dependencies {
|
||||||
implementation kotlin('stdlib')
|
implementation kotlin('stdlib')
|
||||||
implementation "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version"
|
api "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version"
|
||||||
api "org.jetbrains.kotlinx:kotlinx-coroutines-core-common:$kotlin_coroutines_version"
|
|
||||||
api "org.jetbrains.kotlinx:kotlinx-serialization-runtime-common:$kotlin_serialisation_runtime_version"
|
api "org.jetbrains.kotlinx:kotlinx-serialization-runtime-common:$kotlin_serialisation_runtime_version"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -49,7 +49,6 @@ kotlin {
|
|||||||
jvmMain {
|
jvmMain {
|
||||||
dependencies {
|
dependencies {
|
||||||
implementation kotlin('stdlib-jdk8')
|
implementation kotlin('stdlib-jdk8')
|
||||||
api "org.jetbrains.kotlinx:kotlinx-coroutines-core:$kotlin_coroutines_version"
|
|
||||||
api "org.jetbrains.kotlinx:kotlinx-serialization-runtime:$kotlin_serialisation_runtime_version"
|
api "org.jetbrains.kotlinx:kotlinx-serialization-runtime:$kotlin_serialisation_runtime_version"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -60,4 +59,3 @@ kotlin {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,13 +1,22 @@
|
|||||||
kotlin.code.style=official
|
kotlin.code.style=official
|
||||||
kotlin_version=1.3.60
|
kotlin_version=1.3.60
|
||||||
kotlin_coroutines_version=1.3.2
|
|
||||||
kotlin_serialisation_runtime_version=0.14.0
|
kotlin_serialisation_runtime_version=0.14.0
|
||||||
|
|
||||||
gradle_bintray_plugin_version=1.8.4
|
gradle_bintray_plugin_version=1.8.4
|
||||||
|
|
||||||
test_sqlite_version=3.28.0
|
|
||||||
test_junit_version=5.5.2
|
|
||||||
|
|
||||||
project_public_version=0.1.0
|
project_public_version=0.1.0
|
||||||
project_public_group=com.insanusmokrassar
|
project_public_group=com.insanusmokrassar
|
||||||
project_public_description=Simple DI library
|
project_public_description=Simple DI library
|
||||||
|
|
||||||
|
project_public_name=PostsSystemCore
|
||||||
|
|
||||||
|
project_public_license_name=Apache-2.0
|
||||||
|
project_public_license_fullname=The Apache Software License, Version 2.0
|
||||||
|
project_public_license_url=https://git.insanusmokrassar.com/InsanusMokrassar/SDI/src/master/LICENSE
|
||||||
|
|
||||||
|
project_bintray_repo=InsanusMokrassar
|
||||||
|
|
||||||
|
project_url=https://git.insanusmokrassar.com/InsanusMokrassar/SDI
|
||||||
|
project_vcs=https://git.insanusmokrassar.com/InsanusMokrassar/SDI.git
|
||||||
|
|
||||||
|
kotlin.incremental.multiplatform=true
|
||||||
|
65
maven.publish.gradle
Normal file
65
maven.publish.gradle
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
apply plugin: 'maven-publish'
|
||||||
|
apply plugin: 'signing'
|
||||||
|
|
||||||
|
task javadocsJar(type: Jar) {
|
||||||
|
classifier = 'javadoc'
|
||||||
|
}
|
||||||
|
|
||||||
|
afterEvaluate {
|
||||||
|
project.publishing.publications.all {
|
||||||
|
// rename artifacts
|
||||||
|
groupId "${project.group}"
|
||||||
|
if (it.name.contains('kotlinMultiplatform')) {
|
||||||
|
artifactId = "${project.name}"
|
||||||
|
} else {
|
||||||
|
artifactId = "${project.name}-$name"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
publishing {
|
||||||
|
publications.all {
|
||||||
|
artifact javadocsJar
|
||||||
|
|
||||||
|
pom.withXml {
|
||||||
|
asNode().children().last() + {
|
||||||
|
resolveStrategy = Closure.DELEGATE_FIRST
|
||||||
|
|
||||||
|
description "${project_public_description}"
|
||||||
|
name "${project_public_name}"
|
||||||
|
url "${project_url}"
|
||||||
|
|
||||||
|
scm {
|
||||||
|
developerConnection "scm:git:[fetch=]${project_vcs}[push=]${project_vcs}"
|
||||||
|
url "${project_vcs}"
|
||||||
|
}
|
||||||
|
|
||||||
|
developers {
|
||||||
|
developer {
|
||||||
|
id "InsanusMokrassar"
|
||||||
|
name "Ovsyannikov Alexey"
|
||||||
|
email "ovsyannikov.alexey95@gmail.com"
|
||||||
|
}
|
||||||
|
developer {
|
||||||
|
id "mi-ast"
|
||||||
|
name "Michail Astafiev"
|
||||||
|
email "astaf65@gmail.com"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
licenses {
|
||||||
|
license {
|
||||||
|
name "${project_public_license_fullname}"
|
||||||
|
url "${project_public_license_url}"
|
||||||
|
distribution "repo"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
signing {
|
||||||
|
useGpgCmd()
|
||||||
|
sign(publishing.publications)
|
||||||
|
}
|
27
publish.gradle
Normal file
27
publish.gradle
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
apply plugin: 'com.jfrog.bintray'
|
||||||
|
|
||||||
|
apply from: "maven.publish.gradle"
|
||||||
|
|
||||||
|
bintray {
|
||||||
|
user = project.hasProperty('BINTRAY_USER') ? project.property('BINTRAY_USER') : System.getenv('BINTRAY_USER')
|
||||||
|
key = project.hasProperty('BINTRAY_KEY') ? project.property('BINTRAY_KEY') : System.getenv('BINTRAY_KEY')
|
||||||
|
pkg {
|
||||||
|
repo = "$project_bintray_repo"
|
||||||
|
name = "${project.name}"
|
||||||
|
vcsUrl = "${project_url}"
|
||||||
|
licenses = ["${project_public_license_name}"]
|
||||||
|
version {
|
||||||
|
name = "${project.version}"
|
||||||
|
released = new Date()
|
||||||
|
vcsTag = "${project.version}"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bintrayUpload.doFirst {
|
||||||
|
publications = publishing.publications.collect {
|
||||||
|
it.name
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
bintrayUpload.dependsOn publishToMavenLocal
|
@ -1,18 +1,3 @@
|
|||||||
/*
|
|
||||||
* This settings file was generated by the Gradle 'init' task.
|
|
||||||
*
|
|
||||||
* The settings file is used to specify which projects to include in your build.
|
|
||||||
* In a single project build this file can be empty or even removed.
|
|
||||||
*
|
|
||||||
* Detailed information about configuring a multi-project build in Gradle can be found
|
|
||||||
* in the user guide at https://docs.gradle.org/4.4.1/userguide/multi_project_builds.html
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
// To declare projects as part of a multi-project build use the 'include' method
|
|
||||||
include 'shared'
|
|
||||||
include 'api'
|
|
||||||
include 'services:webservice'
|
|
||||||
*/
|
|
||||||
|
|
||||||
rootProject.name = 'sdi'
|
rootProject.name = 'sdi'
|
||||||
|
|
||||||
|
enableFeaturePreview("GRADLE_METADATA")
|
||||||
|
@ -3,6 +3,7 @@ package com.insanusmokrassar.sdi
|
|||||||
import kotlinx.serialization.*
|
import kotlinx.serialization.*
|
||||||
import kotlinx.serialization.json.Json
|
import kotlinx.serialization.json.Json
|
||||||
import kotlin.test.Test
|
import kotlin.test.Test
|
||||||
|
import kotlin.test.assertTrue
|
||||||
|
|
||||||
interface ControllerAPI {
|
interface ControllerAPI {
|
||||||
fun showUp()
|
fun showUp()
|
||||||
@ -12,8 +13,7 @@ interface ServiceAPI {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Serializable
|
@Serializable
|
||||||
class Controller(@ContextualSerialization private val service : ServiceAPI) :
|
class Controller(@ContextualSerialization private val service : ServiceAPI) : ControllerAPI {
|
||||||
ControllerAPI {
|
|
||||||
override fun showUp() {
|
override fun showUp() {
|
||||||
println("Inited with name \"${service.name}\"")
|
println("Inited with name \"${service.name}\"")
|
||||||
}
|
}
|
||||||
@ -27,7 +27,7 @@ class BusinessService : ServiceAPI {
|
|||||||
@ImplicitReflectionSerializer
|
@ImplicitReflectionSerializer
|
||||||
class DeserializationTest {
|
class DeserializationTest {
|
||||||
@Test
|
@Test
|
||||||
fun `Test_that_simple_config_correctly_work`() {
|
fun test_that_simple_config_correctly_work() {
|
||||||
val input = """
|
val input = """
|
||||||
{
|
{
|
||||||
"service": [
|
"service": [
|
||||||
|
Loading…
Reference in New Issue
Block a user