From d41f9a7d1395ebed2bef2e5f12878a779305cfc9 Mon Sep 17 00:00:00 2001 From: Sad Ellie Date: Fri, 30 Dec 2022 20:50:06 +0400 Subject: [PATCH] Added magnetic flux conversion --- app/build.gradle.kts | 3 +++ .../unitto/data/units/AllUnitsRepository.kt | 14 +++++++++++++- .../com/sadellie/unitto/data/units/MyUnitIDS.kt | 11 ++++++++++- .../com/sadellie/unitto/data/units/UnitGroup.kt | 3 ++- app/src/main/res/values-ru/strings.xml | 15 +++++++++++++++ app/src/main/res/values/strings.xml | 17 +++++++++++++++++ .../sadellie/unitto/data/units/AllUnitsTest.kt | 11 +++++++++++ 7 files changed, 71 insertions(+), 3 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index e948a4c3..cb7bfcd9 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -128,6 +128,9 @@ android { renderScript = false shaders = false } + lint { + this.warning.add("MissingTranslation") + } composeOptions { kotlinCompilerExtensionVersion = "1.4.0-alpha02" } diff --git a/app/src/main/java/com/sadellie/unitto/data/units/AllUnitsRepository.kt b/app/src/main/java/com/sadellie/unitto/data/units/AllUnitsRepository.kt index 007d1e1a..063252cf 100644 --- a/app/src/main/java/com/sadellie/unitto/data/units/AllUnitsRepository.kt +++ b/app/src/main/java/com/sadellie/unitto/data/units/AllUnitsRepository.kt @@ -61,7 +61,8 @@ class AllUnitsRepository @Inject constructor() { UnitGroup.ENERGY to energyCollection, UnitGroup.POWER to powerCollection, UnitGroup.ANGLE to angleCollection, - UnitGroup.DATA_TRANSFER to dataTransferCollection + UnitGroup.DATA_TRANSFER to dataTransferCollection, + UnitGroup.FLUX to fluxCollection, ) } @@ -750,4 +751,15 @@ class AllUnitsRepository @Inject constructor() { MyUnit(MyUnitIDS.exabyte_per_second, BigDecimal.valueOf(8_000_000_000_000_000_000), UnitGroup.DATA_TRANSFER, R.string.exabyte_per_second, R.string.exabyte_per_second_short), ) } + private val fluxCollection: List by lazy { + listOf( + MyUnit(MyUnitIDS.maxwell, BigDecimal.valueOf(1), UnitGroup.FLUX, R.string.maxwell, R.string.maxwell_short), + MyUnit(MyUnitIDS.microweber, BigDecimal.valueOf(100), UnitGroup.FLUX, R.string.microweber, R.string.microweber_short), + MyUnit(MyUnitIDS.milliweber, BigDecimal.valueOf(100000), UnitGroup.FLUX, R.string.milliweber, R.string.milliweber_short), + MyUnit(MyUnitIDS.weber, BigDecimal.valueOf(100000000), UnitGroup.FLUX, R.string.weber, R.string.weber_short), + MyUnit(MyUnitIDS.kiloweber, BigDecimal.valueOf(100000000000), UnitGroup.FLUX, R.string.kiloweber, R.string.kiloweber_short), + MyUnit(MyUnitIDS.megaweber, BigDecimal.valueOf(100000000000000), UnitGroup.FLUX, R.string.megaweber, R.string.megaweber_short), + MyUnit(MyUnitIDS.gigaweber, BigDecimal.valueOf(100000000000000000), UnitGroup.FLUX, R.string.gigaweber, R.string.gigaweber_short), + ) + } } diff --git a/app/src/main/java/com/sadellie/unitto/data/units/MyUnitIDS.kt b/app/src/main/java/com/sadellie/unitto/data/units/MyUnitIDS.kt index d8606701..77f66661 100644 --- a/app/src/main/java/com/sadellie/unitto/data/units/MyUnitIDS.kt +++ b/app/src/main/java/com/sadellie/unitto/data/units/MyUnitIDS.kt @@ -78,7 +78,7 @@ object MyUnitIDS { const val kelvin = "kelvin" // SPEED - const val millimeter_per_hour = "millimeter_per_hour" // BASIC UNIT + const val millimeter_per_hour = "millimeter_per_hour" const val millimeter_per_minute = "millimeter_per_minute" const val millimeter_per_second = "millimeter_per_second" const val centimeter_per_hour = "centimeter_per_hour" @@ -485,4 +485,13 @@ object MyUnitIDS { const val currency_zmk = "zmk" const val currency_zmw = "zmw" const val currency_zwl = "zwl" + + // FLUX + const val maxwell = "maxwell" + const val weber = "weber" + const val milliweber = "milliweber" + const val microweber = "microweber" + const val kiloweber = "kiloweber" + const val megaweber = "megaweber" + const val gigaweber = "gigaweber" } diff --git a/app/src/main/java/com/sadellie/unitto/data/units/UnitGroup.kt b/app/src/main/java/com/sadellie/unitto/data/units/UnitGroup.kt index 5833098c..69677836 100644 --- a/app/src/main/java/com/sadellie/unitto/data/units/UnitGroup.kt +++ b/app/src/main/java/com/sadellie/unitto/data/units/UnitGroup.kt @@ -47,5 +47,6 @@ enum class UnitGroup( ENERGY(res = R.string.energy), POWER(res = R.string.power), ANGLE(res = R.string.angle), - DATA_TRANSFER(res = R.string.data_transfer) + DATA_TRANSFER(res = R.string.data_transfer), + FLUX(res = R.string.flux), } diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index 345da763..24040989 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -686,5 +686,20 @@ О Unitto Узнайте больше о приложении Отключите или отсортируйте единицы измерений + Максвелл + Мкс + Вебер + Вб + Милливебер + мВб + Микровебер + мкВб + Киловебер + кВб + Мегавебер + МВб + Гигавебер + ГВб + Поток \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 716190fd..39f07d4f 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -913,6 +913,22 @@ Zimbabwean Dollar ZWL + + Maxwell + Mx + Weber + Wb + Milliweber + mWb + Microweber + μWb + Kiloweber + kWb + Megaweber + MWb + Gigaweber + GWb + Length Time @@ -929,6 +945,7 @@ Pressure Acceleration Currency + Flux Convert from diff --git a/app/src/test/java/com/sadellie/unitto/data/units/AllUnitsTest.kt b/app/src/test/java/com/sadellie/unitto/data/units/AllUnitsTest.kt index 8d1785df..222b500a 100644 --- a/app/src/test/java/com/sadellie/unitto/data/units/AllUnitsTest.kt +++ b/app/src/test/java/com/sadellie/unitto/data/units/AllUnitsTest.kt @@ -339,6 +339,17 @@ class AllUnitsTest { MyUnitIDS.cubic_kilometer.checkWith(MyUnitIDS.us_liquid_gallon, "0.0000001507", "39810.72829") } + @Test + fun testFlux() { + MyUnitIDS.maxwell.checkWith(MyUnitIDS.milliweber, "68.2", "0.00068") + MyUnitIDS.weber.checkWith(MyUnitIDS.milliweber, "68.2", "68200") + MyUnitIDS.milliweber.checkWith(MyUnitIDS.weber, "68.2", "0.0682") + MyUnitIDS.microweber.checkWith(MyUnitIDS.milliweber, "68.2", "0.0682") + MyUnitIDS.kiloweber.checkWith(MyUnitIDS.weber, "68.2", "68200") + MyUnitIDS.megaweber.checkWith(MyUnitIDS.weber, "68.2", "68200000") + MyUnitIDS.gigaweber.checkWith(MyUnitIDS.weber, "68.2", "68200000000") + } + private fun String.checkWith(checkingId: String, value: String, expected: String) { val unit = allUnitsRepository.getById(this) val actual = unit