Skip to content

Commit

Permalink
Merge pull request #715 from nightscout/prep2.8.2.1
Browse files Browse the repository at this point in the history
2.8.2.1
  • Loading branch information
MilosKozak authored Oct 5, 2021
2 parents 65b0c5c + 783343a commit fb93253
Show file tree
Hide file tree
Showing 4 changed files with 69 additions and 2 deletions.
2 changes: 1 addition & 1 deletion app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ android {
targetSdkVersion 28
multiDexEnabled true
versionCode 1500
version "2.8.2"
version "2.8.2.1"
buildConfigField "String", "VERSION", '"' + version + '"'
buildConfigField "String", "BUILDVERSION", '"' + generateGitBuild() + '-' + generateDate() + '"'
buildConfigField "String", "REMOTE", '"' + generateGitRemote() + '"'
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
package info.nightscout.androidaps.plugins.constraints.versionChecker

import org.junit.Assert.*
import org.junit.Test

class AllowedVersionsTest {

@Test
fun generateSupportedVersionsTest() {
val definition = AllowedVersions().generateSupportedVersions()
assertNull(AllowedVersions().findByApi(definition, 0))
assertFalse(AllowedVersions().findByApi(definition, 1)?.has("supported") ?: true)
assertFalse(AllowedVersions().findByApi(definition, 23)?.has("supported") ?: true)
assertEquals("2.6.2", AllowedVersions().findByApi(definition, 24)?.getString("supported"))
assertEquals("2.6.2", AllowedVersions().findByApi(definition, 25)?.getString("supported"))
assertEquals("2.8.2", AllowedVersions().findByApi(definition, 26)?.getString("supported"))
assertEquals("2.8.2", AllowedVersions().findByApi(definition, 27)?.getString("supported"))
assertEquals("2.8.2", AllowedVersions().findByApi(definition, 28)?.getString("supported"))
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
package info.nightscout.androidaps.plugins.constraints.versionChecker

import org.json.JSONArray
import org.json.JSONException
import org.json.JSONObject

class AllowedVersions {

fun generateSupportedVersions(): String =
JSONArray()
.put(JSONObject().apply {
put("minAndroid", 1) // 1.0
put("maxAndroid", 23) // 6.0.1
})
.put(JSONObject().apply {
put("minAndroid", 24) // 7.0
put("maxAndroid", 25) // 7.1.2
put("supported", "2.6.2")
})
.put(JSONObject().apply {
put("minAndroid", 26) // 8.0
put("maxAndroid", 27) // 8.1
put("supported", "2.8.2")
})
.put(JSONObject().apply {
put("minAndroid", 28) // 9.0
put("maxAndroid", 99)
put("supported", "2.8.2")
})
.toString()

fun findByApi(definition: String?, api: Int): JSONObject? {
if (definition == null) return null
try {
val array = JSONArray(definition)
for (i in 0 until array.length()) {
val record = array[i] as JSONObject
if (api in record.getInt("minAndroid")..record.getInt("maxAndroid")) return record
}
} catch (e: JSONException) {
}
return null
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ package info.nightscout.androidaps.plugins.constraints.versionChecker

import android.content.Context
import android.net.ConnectivityManager
import android.os.Build
import info.nightscout.androidaps.core.R
import info.nightscout.androidaps.interfaces.ConfigInterface
import info.nightscout.androidaps.logging.AAPSLogger
Expand Down Expand Up @@ -49,7 +50,8 @@ class VersionCheckerUtils @Inject constructor(
private fun checkVersion() = if (isConnected()) {
Thread {
try {
val version: String? = findVersion(URL("https://raw.githubusercontent.com/nightscout/AndroidAPS/master/app/build.gradle").readText())
val definition: String = URL("https://raw.githubusercontent.com/nightscout/AndroidAPS/versions/definition.json").readText()
val version: String? = AllowedVersions().findByApi(definition, Build.VERSION.SDK_INT)?.optString("supported")
compareWithCurrentVersion(version, config.VERSION_NAME)
} catch (e: IOException) {
aapsLogger.error(LTag.CORE, "Github master version check error: $e")
Expand Down

0 comments on commit fb93253

Please sign in to comment.