New units and tests

All units (except for currencies) are now tested
Changed some basic units and fixed errors
Added new unit groups
This commit is contained in:
Sad Ellie 2022-05-27 21:57:51 +03:00
parent 95ba5d20fd
commit a73624b726
14 changed files with 810 additions and 39 deletions

View File

@ -15,6 +15,8 @@ val ALL_UNITS: List<AbstractUnit> by lazy {
AREA_COLLECTION +
VOLUME_COLLECTION +
DATA_COLLECTION +
PRESSURE_COLLECTION +
ACCELERATION_COLLECTION +
ENERGY_COLLECTION +
POWER_COLLECTION +
ANGLE_COLLECTION +

View File

@ -21,6 +21,18 @@ object MyUnitIDS {
const val foot = "foot"
const val inch = "inch"
const val light_year = "light_year"
const val parsec = "parsec"
const val kiloparsec = "kiloparsec"
const val megaparsec = "megaparsec"
const val mercury_equatorial_radius = "mercury_equatorial_radius"
const val venus_equatorial_radius = "venus_equatorial_radius"
const val earth_equatorial_radius = "earth_equatorial_radius"
const val mars_equatorial_radius = "mars_equatorial_radius"
const val jupiter_equatorial_radius = "jupiter_equatorial_radius"
const val saturn_equatorial_radius = "saturn_equatorial_radius"
const val uranus_equatorial_radius = "uranus_equatorial_radius"
const val neptune_equatorial_radius = "neptune_equatorial_radius"
const val sun_equatorial_radius = "sun_equatorial_radius"
// MASS
const val electron_mass_rest = "electron_mass_rest"
@ -33,6 +45,15 @@ object MyUnitIDS {
const val pound = "pound"
const val ounce = "ounce"
const val carat = "carat"
const val mercury_mass = "mercury_mass"
const val venus_mass = "venus_mass"
const val earth_mass = "earth_mass"
const val mars_mass = "mars_mass"
const val jupiter_mass = "jupiter_mass"
const val saturn_mass = "saturn_mass"
const val uranus_mass = "uranus_mass"
const val neptune_mass = "neptune_mass"
const val sun_mass = "sun_mass"
// TEMPERATURE
const val celsius = "celsius"
@ -190,6 +211,54 @@ object MyUnitIDS {
const val petabyte_per_second = "petabyte_per_second"
const val exabyte_per_second = "exabyte_per_second"
// PRESSURE
const val attopascal = "attopascal"
const val femtopascal = "femtopascal"
const val picopascal = "picopascal"
const val nanopascal = "nanopascal"
const val micropascal = "micropascal"
const val millipascal = "millipascal"
const val centipascal = "centipascal"
const val decipascal = "decipascal"
const val pascal = "pascal"
const val dekapascal = "dekapascal"
const val hectopascal = "hectopascal"
const val bar = "bar"
const val megapascal = "megapascal"
const val gigapascal = "gigapascal"
const val terapascal = "terapascal"
const val petapascal = "petapascal"
const val exapascal = "exapascal"
const val psi = "psi"
const val ksi = "ksi"
const val standard_atmosphere = "standard_atmosphere"
const val torr = "torr"
const val millimeter_of_mercury = "millimeter_of_mercury"
// ACCELERATION
const val attometer_per_square_second = "attometer_per_square_second"
const val femtometer_per_square_second = "femtometer_per_square_second"
const val picometer_per_square_second = "picometer_per_square_second"
const val nanometer_per_square_second = "nanometer_per_square_second"
const val micrometer_per_square_second = "micrometer_per_square_second"
const val millimeter_per_square_second = "millimeter_per_square_second"
const val centimeter_per_square_second = "centimeter_per_square_second"
const val decimeter_per_square_second = "decimeter_per_square_second"
const val meter_per_square_second = "meter_per_square_second"
const val kilometer_per_square_second = "kilometer_per_square_second"
const val dekameter_per_square_second = "dekameter_per_square_second"
const val hectometer_per_square_second = "hectometer_per_square_second"
const val gal = "gal"
const val mercury_surface_gravity = "mercury_surface_gravity"
const val venus_surface_gravity = "venus_surface_gravity"
const val earth_surface_gravity = "earth_surface_gravity"
const val mars_surface_gravity = "mars_surface_gravity"
const val jupiter_surface_gravity = "jupiter_surface_gravity"
const val saturn_surface_gravity = "saturn_surface_gravity"
const val uranus_surface_gravity = "uranus_surface_gravity"
const val neptune_surface_gravity = "neptune_surface_gravity"
const val sun_surface_gravity = "sun_surface_gravity"
// CURRENCY
const val currency_1inch = "1inch"
const val currency_ada = "ada"

View File

@ -20,6 +20,8 @@ enum class UnitGroup(val res: Int, val canNegate: Boolean = false) {
AREA(res = R.string.area),
VOLUME(res = R.string.volume),
DATA(res = R.string.data),
PRESSURE(res = R.string.pressure),
ACCELERATION(res = R.string.acceleration),
ENERGY(res = R.string.energy),
POWER(res = R.string.power),
ANGLE(res = R.string.angle),

View File

@ -0,0 +1,35 @@
package com.sadellie.unitto.data.units.collections
import com.sadellie.unitto.R
import com.sadellie.unitto.data.units.AbstractUnit
import com.sadellie.unitto.data.units.MyUnit
import com.sadellie.unitto.data.units.MyUnitIDS
import com.sadellie.unitto.data.units.UnitGroup
import java.math.BigDecimal
val ACCELERATION_COLLECTION: List<AbstractUnit> by lazy {
listOf(
MyUnit(MyUnitIDS.attometer_per_square_second, BigDecimal.valueOf(1), UnitGroup.ACCELERATION, R.string.attometer_per_square_second, R.string.attometer_per_square_second_short),
MyUnit(MyUnitIDS.femtometer_per_square_second, BigDecimal.valueOf(1E+3), UnitGroup.ACCELERATION, R.string.femtometer_per_square_second, R.string.femtometer_per_square_second_short),
MyUnit(MyUnitIDS.picometer_per_square_second, BigDecimal.valueOf(1E+6), UnitGroup.ACCELERATION, R.string.picometer_per_square_second, R.string.picometer_per_square_second_short),
MyUnit(MyUnitIDS.nanometer_per_square_second, BigDecimal.valueOf(1E+9), UnitGroup.ACCELERATION, R.string.nanometer_per_square_second, R.string.nanometer_per_square_second_short),
MyUnit(MyUnitIDS.micrometer_per_square_second, BigDecimal.valueOf(1E+12), UnitGroup.ACCELERATION, R.string.micrometer_per_square_second, R.string.micrometer_per_square_second_short),
MyUnit(MyUnitIDS.millimeter_per_square_second, BigDecimal.valueOf(1E+15), UnitGroup.ACCELERATION, R.string.millimeter_per_square_second, R.string.millimeter_per_square_second_short),
MyUnit(MyUnitIDS.centimeter_per_square_second, BigDecimal.valueOf(1E+16), UnitGroup.ACCELERATION, R.string.centimeter_per_square_second, R.string.centimeter_per_square_second_short),
MyUnit(MyUnitIDS.decimeter_per_square_second, BigDecimal.valueOf(1E+17), UnitGroup.ACCELERATION, R.string.decimeter_per_square_second, R.string.decimeter_per_square_second_short),
MyUnit(MyUnitIDS.meter_per_square_second, BigDecimal.valueOf(1E+18), UnitGroup.ACCELERATION, R.string.meter_per_square_second, R.string.meter_per_square_second_short),
MyUnit(MyUnitIDS.kilometer_per_square_second, BigDecimal.valueOf(1E+21), UnitGroup.ACCELERATION, R.string.kilometer_per_square_second, R.string.kilometer_per_square_second_short),
MyUnit(MyUnitIDS.dekameter_per_square_second, BigDecimal.valueOf(1E+19), UnitGroup.ACCELERATION, R.string.dekameter_per_square_second, R.string.dekameter_per_square_second_short),
MyUnit(MyUnitIDS.hectometer_per_square_second, BigDecimal.valueOf(1E+20), UnitGroup.ACCELERATION, R.string.hectometer_per_square_second, R.string.hectometer_per_square_second_short),
MyUnit(MyUnitIDS.gal, BigDecimal.valueOf(1E+16), UnitGroup.ACCELERATION, R.string.gal, R.string.gal_short),
MyUnit(MyUnitIDS.mercury_surface_gravity, BigDecimal.valueOf(3.7E+18), UnitGroup.ACCELERATION, R.string.mercury_surface_gravity, R.string.mercury_surface_gravity_short),
MyUnit(MyUnitIDS.venus_surface_gravity, BigDecimal.valueOf(8.87E+18), UnitGroup.ACCELERATION, R.string.venus_surface_gravity, R.string.venus_surface_gravity_short),
MyUnit(MyUnitIDS.earth_surface_gravity, BigDecimal.valueOf(9.80655E+18), UnitGroup.ACCELERATION, R.string.earth_surface_gravity, R.string.earth_surface_gravity_short),
MyUnit(MyUnitIDS.mars_surface_gravity, BigDecimal.valueOf(3.71E+18), UnitGroup.ACCELERATION, R.string.mars_surface_gravity, R.string.mars_surface_gravity_short),
MyUnit(MyUnitIDS.jupiter_surface_gravity, BigDecimal.valueOf(2.479E+19), UnitGroup.ACCELERATION, R.string.jupiter_surface_gravity, R.string.jupiter_surface_gravity_short),
MyUnit(MyUnitIDS.saturn_surface_gravity, BigDecimal.valueOf(1.044E+19), UnitGroup.ACCELERATION, R.string.saturn_surface_gravity, R.string.saturn_surface_gravity_short),
MyUnit(MyUnitIDS.uranus_surface_gravity, BigDecimal.valueOf(8.87E+18), UnitGroup.ACCELERATION, R.string.uranus_surface_gravity, R.string.uranus_surface_gravity_short),
MyUnit(MyUnitIDS.neptune_surface_gravity, BigDecimal.valueOf(1.115E+19), UnitGroup.ACCELERATION, R.string.neptune_surface_gravity, R.string.neptune_surface_gravity_short),
MyUnit(MyUnitIDS.sun_surface_gravity, BigDecimal.valueOf(2.74E+20), UnitGroup.ACCELERATION, R.string.sun_surface_gravity, R.string.sun_surface_gravity_short),
)
}

View File

@ -15,7 +15,7 @@ val AREA_COLLECTION: List<AbstractUnit> by lazy {
MyUnit(MyUnitIDS.square_mile, BigDecimal.valueOf(3.893277806E+34), UnitGroup.AREA, R.string.square_mile, R.string.square_mile_short),
MyUnit(MyUnitIDS.square_yard, BigDecimal.valueOf(1.256869126E+28), UnitGroup.AREA, R.string.square_yard, R.string.square_yard_short),
MyUnit(MyUnitIDS.square_inch, BigDecimal.valueOf(9.698064247E+24), UnitGroup.AREA, R.string.square_inch, R.string.square_inch_short),
MyUnit(MyUnitIDS.square_micrometer, BigDecimal.valueOf(15032029647492000.0), UnitGroup.AREA, R.string.square_micrometer, R.string.square_micrometer_short),
MyUnit(MyUnitIDS.square_micrometer, BigDecimal.valueOf(1.503202964E+16), UnitGroup.AREA, R.string.square_micrometer, R.string.square_micrometer_short),
MyUnit(MyUnitIDS.square_millimeter, BigDecimal.valueOf(1.503202964E+22), UnitGroup.AREA, R.string.square_millimeter, R.string.square_millimeter_short),
MyUnit(MyUnitIDS.square_centimeter, BigDecimal.valueOf(1.503202964E+24), UnitGroup.AREA, R.string.square_centimeter, R.string.square_centimeter_short),
MyUnit(MyUnitIDS.square_decimeter, BigDecimal.valueOf(1.503202964E+26), UnitGroup.AREA, R.string.square_decimeter, R.string.square_decimeter_short),

View File

@ -9,18 +9,18 @@ import java.math.BigDecimal
val ENERGY_COLLECTION: List<AbstractUnit> by lazy {
listOf(
MyUnit(MyUnitIDS.electron_volt, BigDecimal.valueOf(1), UnitGroup.ENERGY, R.string.electron_volt, R.string.electron_volt_short),
MyUnit(MyUnitIDS.attojoule, BigDecimal.valueOf(6.241506363094), UnitGroup.ENERGY, R.string.attojoule, R.string.attojoule_short),
MyUnit(MyUnitIDS.joule, BigDecimal.valueOf(6_241_506_363_094_000_000), UnitGroup.ENERGY, R.string.joule, R.string.joule_short),
MyUnit(MyUnitIDS.kilojoule, BigDecimal.valueOf(6.241506358E+21), UnitGroup.ENERGY, R.string.kilojoule, R.string.kilojoule_short),
MyUnit(MyUnitIDS.megajoule, BigDecimal.valueOf(6.241506358E+24), UnitGroup.ENERGY, R.string.megajoule, R.string.megajoule_short),
MyUnit(MyUnitIDS.gigajoule, BigDecimal.valueOf(6.241506358E+27), UnitGroup.ENERGY, R.string.gigajoule, R.string.gigajoule_short),
MyUnit(MyUnitIDS.energy_ton, BigDecimal.valueOf(2.611446262E+28), UnitGroup.ENERGY, R.string.energy_ton, R.string.energy_ton_short),
MyUnit(MyUnitIDS.kiloton, BigDecimal.valueOf(2.611446262E+31), UnitGroup.ENERGY, R.string.kiloton, R.string.kiloton_short),
MyUnit(MyUnitIDS.megaton, BigDecimal.valueOf(2.611446262E+34), UnitGroup.ENERGY, R.string.megaton, R.string.megaton_short),
MyUnit(MyUnitIDS.gigaton, BigDecimal.valueOf(2.611446262E+37), UnitGroup.ENERGY, R.string.gigaton, R.string.gigaton_short),
MyUnit(MyUnitIDS.energy_horse_power_metric, BigDecimal.valueOf(1.652623245E+25), UnitGroup.ENERGY, R.string.energy_horse_power_metric, R.string.energy_horse_power_metric_short),
MyUnit(MyUnitIDS.calorie_th, BigDecimal.valueOf(26_114_462_623_185_002_000.0), UnitGroup.ENERGY, R.string.calorie_th, R.string.calorie_th_short),
MyUnit(MyUnitIDS.kilocalorie_th, BigDecimal.valueOf(2.611446262E+22), UnitGroup.ENERGY, R.string.kilocalorie_th, R.string.kilocalorie_th_short),
MyUnit(MyUnitIDS.electron_volt, BigDecimal.valueOf(0.160217733), UnitGroup.ENERGY, R.string.electron_volt, R.string.electron_volt_short),
MyUnit(MyUnitIDS.attojoule, BigDecimal.valueOf(1), UnitGroup.ENERGY, R.string.attojoule, R.string.attojoule_short),
MyUnit(MyUnitIDS.joule, BigDecimal.valueOf(1E+18), UnitGroup.ENERGY, R.string.joule, R.string.joule_short),
MyUnit(MyUnitIDS.kilojoule, BigDecimal.valueOf(1E+21), UnitGroup.ENERGY, R.string.kilojoule, R.string.kilojoule_short),
MyUnit(MyUnitIDS.megajoule, BigDecimal.valueOf(1E+24), UnitGroup.ENERGY, R.string.megajoule, R.string.megajoule_short),
MyUnit(MyUnitIDS.gigajoule, BigDecimal.valueOf(1E+27), UnitGroup.ENERGY, R.string.gigajoule, R.string.gigajoule_short),
MyUnit(MyUnitIDS.energy_ton, BigDecimal.valueOf(4.184E+27), UnitGroup.ENERGY, R.string.energy_ton, R.string.energy_ton_short),
MyUnit(MyUnitIDS.kiloton, BigDecimal.valueOf(4.184E+30), UnitGroup.ENERGY, R.string.kiloton, R.string.kiloton_short),
MyUnit(MyUnitIDS.megaton, BigDecimal.valueOf(4.184E+33), UnitGroup.ENERGY, R.string.megaton, R.string.megaton_short),
MyUnit(MyUnitIDS.gigaton, BigDecimal.valueOf(4.184E+36), UnitGroup.ENERGY, R.string.gigaton, R.string.gigaton_short),
MyUnit(MyUnitIDS.energy_horse_power_metric, BigDecimal.valueOf(2.6477955E+24), UnitGroup.ENERGY, R.string.energy_horse_power_metric, R.string.energy_horse_power_metric_short),
MyUnit(MyUnitIDS.calorie_th, BigDecimal.valueOf(4184E+15), UnitGroup.ENERGY, R.string.calorie_th, R.string.calorie_th_short),
MyUnit(MyUnitIDS.kilocalorie_th, BigDecimal.valueOf(4184E+18), UnitGroup.ENERGY, R.string.kilocalorie_th, R.string.kilocalorie_th_short),
)
}

View File

@ -17,10 +17,22 @@ val LENGTH_COLLECTION: List<AbstractUnit> by lazy {
MyUnit(MyUnitIDS.decimeter, BigDecimal.valueOf(1.0E+17), UnitGroup.LENGTH, R.string.decimeter, R.string.decimeter_short),
MyUnit(MyUnitIDS.meter, BigDecimal.valueOf(1.0E+18), UnitGroup.LENGTH, R.string.meter, R.string.meter_short),
MyUnit(MyUnitIDS.kilometer, BigDecimal.valueOf(1.0E+21), UnitGroup.LENGTH, R.string.kilometer, R.string.kilometer_short),
MyUnit(MyUnitIDS.inch, BigDecimal.valueOf(25_400_000_000_000_308), UnitGroup.LENGTH, R.string.inch, R.string.inch_short),
MyUnit(MyUnitIDS.inch, BigDecimal.valueOf(25_400_000_000_000_000), UnitGroup.LENGTH, R.string.inch, R.string.inch_short),
MyUnit(MyUnitIDS.foot, BigDecimal.valueOf(304_800_000_000_002_200), UnitGroup.LENGTH, R.string.foot, R.string.foot_short),
MyUnit(MyUnitIDS.yard, BigDecimal.valueOf(914_400_000_000_006_400), UnitGroup.LENGTH, R.string.yard, R.string.yard_short),
MyUnit(MyUnitIDS.mile, BigDecimal.valueOf(1_609_344_000_000_010_500_000.0), UnitGroup.LENGTH, R.string.mile, R.string.mile_short),
MyUnit(MyUnitIDS.light_year, BigDecimal.valueOf(9.460730472E+33), UnitGroup.LENGTH, R.string.light_year, R.string.light_year_short),
MyUnit(MyUnitIDS.parsec, BigDecimal.valueOf(3.08567758149136E+34), UnitGroup.LENGTH, R.string.parsec, R.string.parsec_short),
MyUnit(MyUnitIDS.kiloparsec, BigDecimal.valueOf(3.08567758149136E+37), UnitGroup.LENGTH, R.string.kiloparsec, R.string.kiloparsec_short),
MyUnit(MyUnitIDS.megaparsec, BigDecimal.valueOf(3.08567758149136E+40), UnitGroup.LENGTH, R.string.megaparsec, R.string.megaparsec_short),
MyUnit(MyUnitIDS.mercury_equatorial_radius, BigDecimal.valueOf(2.4397E+24), UnitGroup.LENGTH, R.string.mercury_equatorial_radius, R.string.mercury_equatorial_radius_short),
MyUnit(MyUnitIDS.venus_equatorial_radius, BigDecimal.valueOf(6.0518E+24), UnitGroup.LENGTH, R.string.venus_equatorial_radius, R.string.venus_equatorial_radius_short),
MyUnit(MyUnitIDS.earth_equatorial_radius, BigDecimal.valueOf(6.371E+24), UnitGroup.LENGTH, R.string.earth_equatorial_radius, R.string.earth_equatorial_radius_short),
MyUnit(MyUnitIDS.mars_equatorial_radius, BigDecimal.valueOf(3.3895E+24), UnitGroup.LENGTH, R.string.mars_equatorial_radius, R.string.mars_equatorial_radius_short),
MyUnit(MyUnitIDS.jupiter_equatorial_radius, BigDecimal.valueOf(6.9911E+25), UnitGroup.LENGTH, R.string.jupiter_equatorial_radius, R.string.jupiter_equatorial_radius_short),
MyUnit(MyUnitIDS.saturn_equatorial_radius, BigDecimal.valueOf(5.8232E+25), UnitGroup.LENGTH, R.string.saturn_equatorial_radius, R.string.saturn_equatorial_radius_short),
MyUnit(MyUnitIDS.uranus_equatorial_radius, BigDecimal.valueOf(2.5362E+25), UnitGroup.LENGTH, R.string.uranus_equatorial_radius, R.string.uranus_equatorial_radius_short),
MyUnit(MyUnitIDS.neptune_equatorial_radius, BigDecimal.valueOf(2.4622E+25), UnitGroup.LENGTH, R.string.neptune_equatorial_radius, R.string.neptune_equatorial_radius_short),
MyUnit(MyUnitIDS.sun_equatorial_radius, BigDecimal.valueOf(6.95508E+26), UnitGroup.LENGTH, R.string.sun_equatorial_radius, R.string.sun_equatorial_radius_short),
)
}

View File

@ -9,15 +9,24 @@ import java.math.BigDecimal
val MASS_COLLECTION: List<AbstractUnit> by lazy {
listOf(
MyUnit(MyUnitIDS.electron_mass_rest, BigDecimal.valueOf(1), UnitGroup.MASS, R.string.electron_mass_rest, R.string.electron_mass_rest_short),
MyUnit(MyUnitIDS.atomic_mass_unit, BigDecimal.valueOf(1_822.888530062548), UnitGroup.MASS, R.string.atomic_mass_unit, R.string.atomic_mass_unit_short),
MyUnit(MyUnitIDS.milligram, BigDecimal.valueOf(1.0977683828808E+24), UnitGroup.MASS, R.string.milligram, R.string.milligram_short),
MyUnit(MyUnitIDS.gram, BigDecimal.valueOf(1.0977683828808E+27), UnitGroup.MASS, R.string.gram, R.string.gram_short),
MyUnit(MyUnitIDS.kilogram, BigDecimal.valueOf(1.0977683828808E+30), UnitGroup.MASS, R.string.kilogram, R.string.kilogram_short),
MyUnit(MyUnitIDS.metric_ton, BigDecimal.valueOf(1.0977683828808E+33), UnitGroup.MASS, R.string.metric_ton, R.string.metric_ton_short),
MyUnit(MyUnitIDS.imperial_ton, BigDecimal.valueOf(1.1153841720044124E+33), UnitGroup.MASS, R.string.imperial_ton, R.string.imperial_ton_short),
MyUnit(MyUnitIDS.ounce, BigDecimal.valueOf(3.1121210156373456E+28), UnitGroup.MASS, R.string.ounce, R.string.ounce_short),
MyUnit(MyUnitIDS.carat, BigDecimal.valueOf(2.1955367657615996E+26), UnitGroup.MASS, R.string.carat, R.string.carat_short),
MyUnit(MyUnitIDS.pound, BigDecimal.valueOf(4.979393625019642E+29), UnitGroup.MASS, R.string.pound, R.string.pound_short),
MyUnit(MyUnitIDS.electron_mass_rest, BigDecimal.valueOf(9.1093897E-28), UnitGroup.MASS, R.string.electron_mass_rest, R.string.electron_mass_rest_short),
MyUnit(MyUnitIDS.atomic_mass_unit, BigDecimal.valueOf(1.6605402E-24), UnitGroup.MASS, R.string.atomic_mass_unit, R.string.atomic_mass_unit_short),
MyUnit(MyUnitIDS.milligram, BigDecimal.valueOf(1E-3), UnitGroup.MASS, R.string.milligram, R.string.milligram_short),
MyUnit(MyUnitIDS.gram, BigDecimal.valueOf(1), UnitGroup.MASS, R.string.gram, R.string.gram_short),
MyUnit(MyUnitIDS.kilogram, BigDecimal.valueOf(1E+3), UnitGroup.MASS, R.string.kilogram, R.string.kilogram_short),
MyUnit(MyUnitIDS.metric_ton, BigDecimal.valueOf(1E+6), UnitGroup.MASS, R.string.metric_ton, R.string.metric_ton_short),
MyUnit(MyUnitIDS.imperial_ton, BigDecimal.valueOf(1016046.9088), UnitGroup.MASS, R.string.imperial_ton, R.string.imperial_ton_short),
MyUnit(MyUnitIDS.ounce, BigDecimal.valueOf(28.349523125), UnitGroup.MASS, R.string.ounce, R.string.ounce_short),
MyUnit(MyUnitIDS.carat, BigDecimal.valueOf(0.2), UnitGroup.MASS, R.string.carat, R.string.carat_short),
MyUnit(MyUnitIDS.pound, BigDecimal.valueOf(453.59237), UnitGroup.MASS, R.string.pound, R.string.pound_short),
MyUnit(MyUnitIDS.mercury_mass, BigDecimal.valueOf(3.30104E+26), UnitGroup.MASS, R.string.mercury_mass, R.string.mercury_mass_short),
MyUnit(MyUnitIDS.venus_mass, BigDecimal.valueOf(4.86732E+27), UnitGroup.MASS, R.string.venus_mass, R.string.venus_mass_short),
MyUnit(MyUnitIDS.earth_mass, BigDecimal.valueOf(5.97219E+27), UnitGroup.MASS, R.string.earth_mass, R.string.earth_mass_short),
MyUnit(MyUnitIDS.mars_mass, BigDecimal.valueOf(6.41693E+26), UnitGroup.MASS, R.string.mars_mass, R.string.mars_mass_short),
MyUnit(MyUnitIDS.jupiter_mass, BigDecimal.valueOf(1.89813E+30), UnitGroup.MASS, R.string.jupiter_mass, R.string.jupiter_mass_short),
MyUnit(MyUnitIDS.saturn_mass, BigDecimal.valueOf(5.68319E+29), UnitGroup.MASS, R.string.saturn_mass, R.string.saturn_mass_short),
MyUnit(MyUnitIDS.uranus_mass, BigDecimal.valueOf(8.68103E+28), UnitGroup.MASS, R.string.uranus_mass, R.string.uranus_mass_short),
MyUnit(MyUnitIDS.neptune_mass, BigDecimal.valueOf(1.0241E+29), UnitGroup.MASS, R.string.neptune_mass, R.string.neptune_mass_short),
MyUnit(MyUnitIDS.sun_mass, BigDecimal.valueOf(1.9891E+33), UnitGroup.MASS, R.string.sun_mass, R.string.sun_mass_short),
)
}

View File

@ -0,0 +1,35 @@
package com.sadellie.unitto.data.units.collections
import com.sadellie.unitto.R
import com.sadellie.unitto.data.units.AbstractUnit
import com.sadellie.unitto.data.units.MyUnit
import com.sadellie.unitto.data.units.MyUnitIDS
import com.sadellie.unitto.data.units.UnitGroup
import java.math.BigDecimal
val PRESSURE_COLLECTION: List<AbstractUnit> by lazy {
listOf(
MyUnit(MyUnitIDS.attopascal, BigDecimal.valueOf(1), UnitGroup.PRESSURE, R.string.attopascal, R.string.attopascal_short),
MyUnit(MyUnitIDS.femtopascal, BigDecimal.valueOf(1E+3), UnitGroup.PRESSURE, R.string.femtopascal, R.string.femtopascal_short),
MyUnit(MyUnitIDS.picopascal, BigDecimal.valueOf(1E+6), UnitGroup.PRESSURE, R.string.picopascal, R.string.picopascal_short),
MyUnit(MyUnitIDS.nanopascal, BigDecimal.valueOf(1E+9), UnitGroup.PRESSURE, R.string.nanopascal, R.string.nanopascal_short),
MyUnit(MyUnitIDS.micropascal, BigDecimal.valueOf(1E+12), UnitGroup.PRESSURE, R.string.micropascal, R.string.micropascal_short),
MyUnit(MyUnitIDS.millipascal, BigDecimal.valueOf(1E+15), UnitGroup.PRESSURE, R.string.millipascal, R.string.millipascal_short),
MyUnit(MyUnitIDS.centipascal, BigDecimal.valueOf(1E+16), UnitGroup.PRESSURE, R.string.centipascal, R.string.centipascal_short),
MyUnit(MyUnitIDS.decipascal, BigDecimal.valueOf(1E+17), UnitGroup.PRESSURE, R.string.decipascal, R.string.decipascal_short),
MyUnit(MyUnitIDS.pascal, BigDecimal.valueOf(1E+18), UnitGroup.PRESSURE, R.string.pascal, R.string.pascal_short),
MyUnit(MyUnitIDS.dekapascal, BigDecimal.valueOf(1E+19), UnitGroup.PRESSURE, R.string.dekapascal, R.string.dekapascal_short),
MyUnit(MyUnitIDS.hectopascal, BigDecimal.valueOf(1E+20), UnitGroup.PRESSURE, R.string.hectopascal, R.string.hectopascal_short),
MyUnit(MyUnitIDS.bar, BigDecimal.valueOf(1E+23), UnitGroup.PRESSURE, R.string.bar, R.string.bar_short),
MyUnit(MyUnitIDS.megapascal, BigDecimal.valueOf(1E+24), UnitGroup.PRESSURE, R.string.megapascal, R.string.megapascal_short),
MyUnit(MyUnitIDS.gigapascal, BigDecimal.valueOf(1E+27), UnitGroup.PRESSURE, R.string.gigapascal, R.string.gigapascal_short),
MyUnit(MyUnitIDS.terapascal, BigDecimal.valueOf(1E+30), UnitGroup.PRESSURE, R.string.terapascal, R.string.terapascal_short),
MyUnit(MyUnitIDS.petapascal, BigDecimal.valueOf(1E+33), UnitGroup.PRESSURE, R.string.petapascal, R.string.petapascal_short),
MyUnit(MyUnitIDS.exapascal, BigDecimal.valueOf(1E+36), UnitGroup.PRESSURE, R.string.exapascal, R.string.exapascal_short),
MyUnit(MyUnitIDS.psi, BigDecimal.valueOf(6.8947572931783E+21), UnitGroup.PRESSURE, R.string.psi, R.string.psi_short),
MyUnit(MyUnitIDS.ksi, BigDecimal.valueOf(6.8947572931783E+24), UnitGroup.PRESSURE, R.string.ksi, R.string.ksi_short),
MyUnit(MyUnitIDS.standard_atmosphere, BigDecimal.valueOf(101.325E+21), UnitGroup.PRESSURE, R.string.standard_atmosphere, R.string.standard_atmosphere_short),
MyUnit(MyUnitIDS.torr, BigDecimal.valueOf(1.3332236842108281E+20), UnitGroup.PRESSURE, R.string.torr, R.string.torr_short),
MyUnit(MyUnitIDS.millimeter_of_mercury, BigDecimal.valueOf(1.3332236842108281E+20), UnitGroup.PRESSURE, R.string.millimeter_of_mercury, R.string.millimeter_of_mercury_short),
)
}

View File

@ -21,7 +21,7 @@ val SPEED_COLLECTION: List<AbstractUnit> by lazy {
MyUnit(MyUnitIDS.kilometer_per_hour, BigDecimal.valueOf(1_000_000), UnitGroup.SPEED, R.string.kilometer_per_hour, R.string.kilometer_per_hour_short),
MyUnit(MyUnitIDS.kilometer_per_minute, BigDecimal.valueOf(60_000_000), UnitGroup.SPEED, R.string.kilometer_per_minute, R.string.kilometer_per_minute_short),
MyUnit(MyUnitIDS.kilometer_per_second, BigDecimal.valueOf(3_600_000_000), UnitGroup.SPEED, R.string.kilometer_per_second, R.string.kilometer_per_second_short),
MyUnit(MyUnitIDS.foot_per_hour, BigDecimal.valueOf(304), UnitGroup.SPEED, R.string.foot_per_hour, R.string.foot_per_hour_short),
MyUnit(MyUnitIDS.foot_per_hour, BigDecimal.valueOf(304.8), UnitGroup.SPEED, R.string.foot_per_hour, R.string.foot_per_hour_short),
MyUnit(MyUnitIDS.foot_per_minute, BigDecimal.valueOf(18_288), UnitGroup.SPEED, R.string.foot_per_minute, R.string.foot_per_minute_short),
MyUnit(MyUnitIDS.foot_per_second, BigDecimal.valueOf(1_097_280), UnitGroup.SPEED, R.string.foot_per_second, R.string.foot_per_second_short),
MyUnit(MyUnitIDS.yard_per_hour, BigDecimal.valueOf(914.4), UnitGroup.SPEED, R.string.yard_per_hour, R.string.yard_per_hour_short),
@ -35,7 +35,7 @@ val SPEED_COLLECTION: List<AbstractUnit> by lazy {
MyUnit(MyUnitIDS.cosmic_velocity_first, BigDecimal.valueOf(28_440_000_000), UnitGroup.SPEED, R.string.cosmic_velocity_first, R.string.cosmic_velocity_first_short),
MyUnit(MyUnitIDS.cosmic_velocity_second, BigDecimal.valueOf(40_320_000_000), UnitGroup.SPEED, R.string.cosmic_velocity_second, R.string.cosmic_velocity_second_short),
MyUnit(MyUnitIDS.cosmic_velocity_third, BigDecimal.valueOf(60_012_000_000), UnitGroup.SPEED, R.string.cosmic_velocity_third, R.string.cosmic_velocity_third_short),
MyUnit(MyUnitIDS.earths_orbital_speed, BigDecimal.valueOf(107_208_000_000), UnitGroup.SPEED, R.string.earths_orbital_speed, R.string.earths_orbital_speed_short),
MyUnit(MyUnitIDS.earths_orbital_speed, BigDecimal.valueOf(107_154_000_000), UnitGroup.SPEED, R.string.earths_orbital_speed, R.string.earths_orbital_speed_short),
MyUnit(MyUnitIDS.mach, BigDecimal.valueOf(1_236_960_000), UnitGroup.SPEED, R.string.mach, R.string.mach_short),
MyUnit(MyUnitIDS.mach_si_standard, BigDecimal.valueOf(1_062_167_040), UnitGroup.SPEED, R.string.mach_si_standard, R.string.mach_si_standard_short),)
}

View File

@ -540,5 +540,135 @@
<string name="clear_input_description">Очистить ввод</string>
<string name="favorite_button_description">Добавить или убрать величину из избранных</string>
<string name="empty_search_result_description">Пустой результат поиска</string>
<string name="parsec">Парсек</string>
<string name="parsec_short">пк</string>
<string name="kiloparsec">Килопарсек</string>
<string name="kiloparsec_short">кпк</string>
<string name="megaparsec">Мегапарсек</string>
<string name="megaparsec_short">Мпк</string>
<string name="mercury_equatorial_radius">Экваториальный радиус Меркурия</string>
<string name="mercury_equatorial_radius_short">Меркурий R</string>
<string name="venus_equatorial_radius">Экваториальный радиус Венеры</string>
<string name="venus_equatorial_radius_short">Венера R</string>
<string name="earth_equatorial_radius">Экваториальный радиус Земля</string>
<string name="earth_equatorial_radius_short">Земля R</string>
<string name="mars_equatorial_radius">Экваториальный радиус Марса</string>
<string name="mars_equatorial_radius_short">Марс R</string>
<string name="jupiter_equatorial_radius">Экваториальный радиус Юпитера</string>
<string name="jupiter_equatorial_radius_short">Юпитер R</string>
<string name="saturn_equatorial_radius">Экваториальный радиус Сатурна</string>
<string name="saturn_equatorial_radius_short">Сатурн R</string>
<string name="uranus_equatorial_radius">Экваториальный радиус Урана</string>
<string name="uranus_equatorial_radius_short">Уран R</string>
<string name="neptune_equatorial_radius">Экваториальный радиус Нептуна</string>
<string name="neptune_equatorial_radius_short">Нептун R</string>
<string name="sun_equatorial_radius">Экваториальный радиус Солнца</string>
<string name="sun_equatorial_radius_short">Солнце R</string>
<string name="attopascal">Аттопаскаль</string>
<string name="attopascal_short">аПа</string>
<string name="femtopascal">Фемтопаскаль</string>
<string name="femtopascal_short">фПа</string>
<string name="picopascal">Пикопаскаль</string>
<string name="picopascal_short">пПа</string>
<string name="nanopascal">Нанопаскаль</string>
<string name="nanopascal_short">нПа</string>
<string name="micropascal">Микропаскаль</string>
<string name="micropascal_short">мкПа</string>
<string name="millipascal">Миллипаскаль</string>
<string name="millipascal_short">мПа</string>
<string name="centipascal">Сантипаскаль</string>
<string name="centipascal_short">сПа</string>
<string name="decipascal">Деципаскаль</string>
<string name="decipascal_short">дПа</string>
<string name="pascal">Паскаль</string>
<string name="pascal_short">Па</string>
<string name="dekapascal">Декапаскаль</string>
<string name="dekapascal_short">даПа</string>
<string name="hectopascal">Гектопаскаль</string>
<string name="hectopascal_short">гПа</string>
<string name="bar">Бар</string>
<string name="bar_short">бар</string>
<string name="megapascal">Мегапаскаль</string>
<string name="megapascal_short">МПа</string>
<string name="gigapascal">Гигапаскаль</string>
<string name="gigapascal_short">ГПа</string>
<string name="terapascal">Терапаскаль</string>
<string name="terapascal_short">ТПа</string>
<string name="petapascal">Петапаскаль</string>
<string name="petapascal_short">ППа</string>
<string name="exapascal">Экзапаскаль</string>
<string name="exapascal_short">ЭПа</string>
<string name="psi">Фунт на квадратный дюйм</string>
<string name="ksi">Килофунт на квадратный дюйм</string>
<string name="standard_atmosphere">Физическая атмосфера</string>
<string name="standard_atmosphere_short">атм</string>
<string name="torr">Торр</string>
<string name="torr_short">торр</string>
<string name="millimeter_of_mercury">Миллиметр ртутного столба</string>
<string name="millimeter_of_mercury_short">мм рт.ст.</string>
<string name="attometer_per_square_second">Аттометер на секунду в квадрате</string>
<string name="attometer_per_square_second_short">ам/с^2</string>
<string name="femtometer_per_square_second">Фемтометер на секунду в квадрате</string>
<string name="femtometer_per_square_second_short">фм/с^2</string>
<string name="picometer_per_square_second">Пикометер на секунду в квадрате</string>
<string name="picometer_per_square_second_short">пм/с^2</string>
<string name="nanometer_per_square_second">Нанометер на секунду в квадрате</string>
<string name="nanometer_per_square_second_short">нм/с^2</string>
<string name="micrometer_per_square_second">Микрометер на секунду в квадрате</string>
<string name="micrometer_per_square_second_short">мкм/с^2</string>
<string name="millimeter_per_square_second">Миллиметер на секунду в квадрате</string>
<string name="millimeter_per_square_second_short">мм/с^2</string>
<string name="centimeter_per_square_second">Сантиметер на секунду в квадрате</string>
<string name="centimeter_per_square_second_short">см/с^2</string>
<string name="decimeter_per_square_second">Дециметер на секунду в квадрате</string>
<string name="decimeter_per_square_second_short">дм/с^2</string>
<string name="meter_per_square_second">Метер на секунду в квадрате</string>
<string name="meter_per_square_second_short">м/с^2</string>
<string name="kilometer_per_square_second">Километер на секунду в квадрате</string>
<string name="kilometer_per_square_second_short">км/с^2</string>
<string name="dekameter_per_square_second">Декаметер на секунду в квадрате</string>
<string name="dekameter_per_square_second_short">дам/с^2</string>
<string name="hectometer_per_square_second">Гектометер на секунду в квадрате</string>
<string name="hectometer_per_square_second_short">гм/с^2</string>
<string name="gal">Гал</string>
<string name="gal_short">Гал</string>
<string name="mercury_surface_gravity">Поверхностная гравитация Меркурия</string>
<string name="mercury_surface_gravity_short">Меркурий g</string>
<string name="venus_surface_gravity">Поверхностная гравитация Венеры</string>
<string name="venus_surface_gravity_short">Венера g</string>
<string name="earth_surface_gravity">Поверхностная гравитация Земля</string>
<string name="earth_surface_gravity_short">Земля g</string>
<string name="mars_surface_gravity">Поверхностная гравитация Марса</string>
<string name="mars_surface_gravity_short">Марс g</string>
<string name="jupiter_surface_gravity">Поверхностная гравитация Юпитера</string>
<string name="jupiter_surface_gravity_short">Юпитер g</string>
<string name="saturn_surface_gravity">Поверхностная гравитация Сатурна</string>
<string name="saturn_surface_gravity_short">Сатурн g</string>
<string name="uranus_surface_gravity">Поверхностная гравитация Урана</string>
<string name="uranus_surface_gravity_short">Уран g</string>
<string name="neptune_surface_gravity">Поверхностная гравитация Нептуна</string>
<string name="neptune_surface_gravity_short">Нептун g</string>
<string name="sun_surface_gravity">Поверхностная гравитация Солнца</string>
<string name="sun_surface_gravity_short">Солнце g</string>
<string name="mercury_mass">Масса Меркурия</string>
<string name="mercury_mass_short">Меркурий M</string>
<string name="venus_mass">Масса Венеры</string>
<string name="venus_mass_short">Венера M</string>
<string name="earth_mass">Масса Земля</string>
<string name="earth_mass_short">Земля M</string>
<string name="mars_mass">Масса Марса</string>
<string name="mars_mass_short">Марс M</string>
<string name="jupiter_mass">Масса Юпитера</string>
<string name="jupiter_mass_short">Юпитер M</string>
<string name="saturn_mass">Масса Сатурна</string>
<string name="saturn_mass_short">Сатурн M</string>
<string name="uranus_mass">Масса Урана</string>
<string name="uranus_mass_short">Уран M</string>
<string name="neptune_mass">Масса Нептуна</string>
<string name="neptune_mass_short">Нептун M</string>
<string name="sun_mass">Масса Солнца</string>
<string name="sun_mass_short">Солнце M</string>
<string name="pressure">Давление</string>
<string name="acceleration">Ускорение</string>
</resources>

View File

@ -28,6 +28,30 @@
<string name="inch_short">in</string>
<string name="light_year">Light year</string>
<string name="light_year_short">ly</string>
<string name="parsec">Parsec</string>
<string name="parsec_short">pc</string>
<string name="kiloparsec">Kiloparsec</string>
<string name="kiloparsec_short">kpc</string>
<string name="megaparsec">Megaparsec</string>
<string name="megaparsec_short">Mpc</string>
<string name="mercury_equatorial_radius">Mercury equatorial radius</string>
<string name="mercury_equatorial_radius_short">Mercury R</string>
<string name="venus_equatorial_radius">Venus equatorial radius</string>
<string name="venus_equatorial_radius_short">Venus R</string>
<string name="earth_equatorial_radius">Earth equatorial radius</string>
<string name="earth_equatorial_radius_short">Earth R</string>
<string name="mars_equatorial_radius">Mars equatorial radius</string>
<string name="mars_equatorial_radius_short">Mars R</string>
<string name="jupiter_equatorial_radius">Jupiter equatorial radius</string>
<string name="jupiter_equatorial_radius_short">Jupiter R</string>
<string name="saturn_equatorial_radius">Saturn equatorial radius</string>
<string name="saturn_equatorial_radius_short">Saturn R</string>
<string name="uranus_equatorial_radius">Uranus equatorial radius</string>
<string name="uranus_equatorial_radius_short">Uranus R</string>
<string name="neptune_equatorial_radius">Neptune equatorial radius</string>
<string name="neptune_equatorial_radius_short">Neptune R</string>
<string name="sun_equatorial_radius">Sun equatorial radius</string>
<string name="sun_equatorial_radius_short">Sun R</string>
<!--Mass-->
<string name="electron_mass_rest">Electron mass</string>
@ -50,6 +74,24 @@
<string name="ounce_short">oz</string>
<string name="carat">Carat</string>
<string name="carat_short">ct</string>
<string name="mercury_mass">Mercury mass</string>
<string name="mercury_mass_short">Mercury M</string>
<string name="venus_mass">Venus mass</string>
<string name="venus_mass_short">Venus M</string>
<string name="earth_mass">Earth mass</string>
<string name="earth_mass_short">Earth M</string>
<string name="mars_mass">Mars mass</string>
<string name="mars_mass_short">Mars M</string>
<string name="jupiter_mass">Jupiter mass</string>
<string name="jupiter_mass_short">Jupiter M</string>
<string name="saturn_mass">Saturn mass</string>
<string name="saturn_mass_short">Saturn M</string>
<string name="uranus_mass">Uranus mass</string>
<string name="uranus_mass_short">Uranus M</string>
<string name="neptune_mass">Neptune mass</string>
<string name="neptune_mass_short">Neptune M</string>
<string name="sun_mass">Sun mass</string>
<string name="sun_mass_short">Sun M</string>
<!--Temperature-->
<string name="celsius">Celsius</string>
@ -343,6 +385,98 @@
<string name="turn">Turn</string>
<string name="turn_short">tr</string>
<!--Pressure-->
<string name="attopascal">Attopascal</string>
<string name="attopascal_short">aPa</string>
<string name="femtopascal">Femtopascal</string>
<string name="femtopascal_short">fPa</string>
<string name="picopascal">Picopascal</string>
<string name="picopascal_short">pPa</string>
<string name="nanopascal">Nanopascal</string>
<string name="nanopascal_short">nPa</string>
<string name="micropascal">Micropascal</string>
<string name="micropascal_short">µPa</string>
<string name="millipascal">Millipascal</string>
<string name="millipascal_short">mPa</string>
<string name="centipascal">Centipascal</string>
<string name="centipascal_short">cPa</string>
<string name="decipascal">Decipascal</string>
<string name="decipascal_short">dPa</string>
<string name="pascal">Pascal</string>
<string name="pascal_short">Pa</string>
<string name="dekapascal">Dekapascal</string>
<string name="dekapascal_short">daPa</string>
<string name="hectopascal">Hectopascal</string>
<string name="hectopascal_short">hPa</string>
<string name="bar">Bar</string>
<string name="bar_short">bar</string>
<string name="megapascal">Megapascal</string>
<string name="megapascal_short">MPa</string>
<string name="gigapascal">Gigapascal</string>
<string name="gigapascal_short">GPA</string>
<string name="terapascal">Terapascal</string>
<string name="terapascal_short">TPa</string>
<string name="petapascal">Petapascal</string>
<string name="petapascal_short">PPa</string>
<string name="exapascal">Exapascal</string>
<string name="exapascal_short">EPa</string>
<string name="psi">Pound per square inch</string>
<string name="psi_short" translatable="false">psi</string>
<string name="ksi">Kilopound per square inch</string>
<string name="ksi_short" translatable="false">ksi</string>
<string name="standard_atmosphere">Standard atmosphere</string>
<string name="standard_atmosphere_short">atm</string>
<string name="torr">Torr</string>
<string name="torr_short">torr</string>
<string name="millimeter_of_mercury">Millimeter of mercury</string>
<string name="millimeter_of_mercury_short">mm Hg</string>
<!--Acceleration-->
<string name="attometer_per_square_second">Attometer per square second</string>
<string name="attometer_per_square_second_short">am/s^2</string>
<string name="femtometer_per_square_second">Femtometer per square second</string>
<string name="femtometer_per_square_second_short">fm/s^2</string>
<string name="picometer_per_square_second">Picometer per square second</string>
<string name="picometer_per_square_second_short">pm/s^2</string>
<string name="nanometer_per_square_second">Nanometer per square second</string>
<string name="nanometer_per_square_second_short">nm/s^2</string>
<string name="micrometer_per_square_second">Micrometer per square second</string>
<string name="micrometer_per_square_second_short">µm/s^2</string>
<string name="millimeter_per_square_second">Millimeter per square second</string>
<string name="millimeter_per_square_second_short">mm/s^2</string>
<string name="centimeter_per_square_second">Centimeter per square second</string>
<string name="centimeter_per_square_second_short">cm/s^2</string>
<string name="decimeter_per_square_second">Decimeter per square second</string>
<string name="decimeter_per_square_second_short">dm/s^2</string>
<string name="meter_per_square_second">Meter per square second</string>
<string name="meter_per_square_second_short">m/s^2</string>
<string name="kilometer_per_square_second">Kilometer per square second</string>
<string name="kilometer_per_square_second_short">km/s^2</string>
<string name="dekameter_per_square_second">Dekameter per square second</string>
<string name="dekameter_per_square_second_short">dam/s^2</string>
<string name="hectometer_per_square_second">Hectometer per square second</string>
<string name="hectometer_per_square_second_short">hm/s^2</string>
<string name="gal">Gal</string>
<string name="gal_short">Gal</string>
<string name="mercury_surface_gravity">Mercury surface gravity</string>
<string name="mercury_surface_gravity_short">Mercury g</string>
<string name="venus_surface_gravity">Venus surface gravity</string>
<string name="venus_surface_gravity_short">Venus g</string>
<string name="earth_surface_gravity">Earth surface gravity</string>
<string name="earth_surface_gravity_short">Earth g</string>
<string name="mars_surface_gravity">Mars surface gravity</string>
<string name="mars_surface_gravity_short">Mars g</string>
<string name="jupiter_surface_gravity">Jupiter surface gravity</string>
<string name="jupiter_surface_gravity_short">Jupiter g</string>
<string name="saturn_surface_gravity">Saturn surface gravity</string>
<string name="saturn_surface_gravity_short">Saturn g</string>
<string name="uranus_surface_gravity">Uranus surface gravity</string>
<string name="uranus_surface_gravity_short">Uranus g</string>
<string name="neptune_surface_gravity">Neptune surface gravity</string>
<string name="neptune_surface_gravity_short">Neptune g</string>
<string name="sun_surface_gravity">Sun surface gravity</string>
<string name="sun_surface_gravity_short">Sun g</string>
<!--Currency-->
<string name="currency_1inch" translatable="false">1inch Network</string>
<string name="currency_1inch_short" translatable="false">NCH</string>
@ -775,6 +909,8 @@
<string name="power">Power</string>
<string name="angle">Angle</string>
<string name="data_transfer">Data transfer</string>
<string name="pressure">Pressure</string>
<string name="acceleration">Acceleration</string>
<string name="currency">Currency</string>
<!--Screen names-->

View File

@ -0,0 +1,340 @@
package com.sadellie.unitto.data.units
import org.junit.After
import org.junit.Assert.assertEquals
import org.junit.Test
import org.junit.runner.RunWith
import org.junit.runners.JUnit4
import java.math.BigDecimal
@RunWith(JUnit4::class)
class AllUnitsTest {
// Group and it's tested unit ids
var history: MutableMap<UnitGroup, Set<String>> = mutableMapOf()
@Test
fun testAcceleration() {
MyUnitIDS.attometer_per_square_second.checkWith(MyUnitIDS.femtometer_per_square_second, "69", "0.069")
MyUnitIDS.femtometer_per_square_second.checkWith(MyUnitIDS.picometer_per_square_second, "69", "0.069")
MyUnitIDS.picometer_per_square_second.checkWith(MyUnitIDS.micrometer_per_square_second, "69", "0.00007")
MyUnitIDS.nanometer_per_square_second.checkWith(MyUnitIDS.centimeter_per_square_second, "69", "0.000007")
MyUnitIDS.micrometer_per_square_second.checkWith(MyUnitIDS.nanometer_per_square_second, "69", "69000")
MyUnitIDS.millimeter_per_square_second.checkWith(MyUnitIDS.centimeter_per_square_second, "69", "6.9")
MyUnitIDS.centimeter_per_square_second.checkWith(MyUnitIDS.meter_per_square_second, "69", "0.69")
MyUnitIDS.decimeter_per_square_second.checkWith(MyUnitIDS.meter_per_square_second, "69", "6.9")
MyUnitIDS.meter_per_square_second.checkWith(MyUnitIDS.micrometer_per_square_second, "69", "69000000")
MyUnitIDS.kilometer_per_square_second.checkWith(MyUnitIDS.hectometer_per_square_second, "69", "690")
MyUnitIDS.dekameter_per_square_second.checkWith(MyUnitIDS.gal, "69", "69000")
MyUnitIDS.hectometer_per_square_second.checkWith(MyUnitIDS.gal, "69", "690000")
MyUnitIDS.gal.checkWith(MyUnitIDS.centimeter_per_square_second, "69", "69")
MyUnitIDS.mercury_surface_gravity.checkWith(MyUnitIDS.meter_per_square_second, "1", "3.7")
MyUnitIDS.venus_surface_gravity.checkWith(MyUnitIDS.meter_per_square_second, "1", "8.87")
MyUnitIDS.earth_surface_gravity.checkWith(MyUnitIDS.meter_per_square_second, "1", "9.80655")
MyUnitIDS.mars_surface_gravity.checkWith(MyUnitIDS.meter_per_square_second, "1", "3.71")
MyUnitIDS.jupiter_surface_gravity.checkWith(MyUnitIDS.meter_per_square_second, "1", "24.79")
MyUnitIDS.saturn_surface_gravity.checkWith(MyUnitIDS.meter_per_square_second, "1", "10.44")
MyUnitIDS.uranus_surface_gravity.checkWith(MyUnitIDS.meter_per_square_second, "1", "8.87")
MyUnitIDS.neptune_surface_gravity.checkWith(MyUnitIDS.meter_per_square_second, "1", "11.15")
MyUnitIDS.sun_surface_gravity.checkWith(MyUnitIDS.meter_per_square_second, "1", "274")
}
@Test
fun testAngle() {
MyUnitIDS.angle_second.checkWith(MyUnitIDS.angle_minute, "420.5", "7.00833")
MyUnitIDS.angle_minute.checkWith(MyUnitIDS.radian, "420.5", "0.12232")
MyUnitIDS.degree.checkWith(MyUnitIDS.turn, "420.5", "1.16806")
MyUnitIDS.radian.checkWith(MyUnitIDS.turn, "420.5", "66.92465")
MyUnitIDS.sextant.checkWith(MyUnitIDS.radian, "420.5", "440.34657")
MyUnitIDS.turn.checkWith(MyUnitIDS.angle_minute, "420.5", "9082800")
}
@Test
fun testArea() {
MyUnitIDS.acre.checkWith(MyUnitIDS.square_kilometer, "75.9", "0.30716")
MyUnitIDS.hectare.checkWith(MyUnitIDS.square_foot, "75.9", "8169808.00585")
MyUnitIDS.square_foot.checkWith(MyUnitIDS.square_decimeter, "75.9", "705.13407")
MyUnitIDS.square_mile.checkWith(MyUnitIDS.square_foot, "75.9", "2115970560.8762")
MyUnitIDS.square_yard.checkWith(MyUnitIDS.square_foot, "75.9", "683.1")
MyUnitIDS.square_inch.checkWith(MyUnitIDS.square_foot, "75.9", "0.52708")
MyUnitIDS.square_micrometer.checkWith(MyUnitIDS.square_millimeter, "75.9", "0.00008")
MyUnitIDS.square_millimeter.checkWith(MyUnitIDS.square_centimeter, "75.9", "0.759")
MyUnitIDS.square_centimeter.checkWith(MyUnitIDS.acre, "75.9", "0.000002")
MyUnitIDS.square_decimeter.checkWith(MyUnitIDS.square_meter, "75.9", "0.759")
MyUnitIDS.square_meter.checkWith(MyUnitIDS.acre, "75.9", "0.01876")
MyUnitIDS.square_kilometer.checkWith(MyUnitIDS.hectare, "75.9", "7590")
MyUnitIDS.electron_cross_section.checkWith(MyUnitIDS.square_micrometer, "75.9", "0.000000000000005")
}
@Test
fun testDataTransfer() {
MyUnitIDS.bit_per_second.checkWith(MyUnitIDS.kilobit_per_second, "2048", "2.048")
MyUnitIDS.kibibit_per_second.checkWith(MyUnitIDS.bit_per_second, "2048", "2097152")
MyUnitIDS.kilobit_per_second.checkWith(MyUnitIDS.bit_per_second, "2048", "2048000")
MyUnitIDS.megabit_per_second.checkWith(MyUnitIDS.kilobit_per_second, "2048", "2048000")
MyUnitIDS.mebibit_per_second.checkWith(MyUnitIDS.kilobit_per_second, "2048", "2147483.648")
MyUnitIDS.gigabit_per_second.checkWith(MyUnitIDS.kilobit_per_second, "2048", "2048000000")
MyUnitIDS.terabit_per_second.checkWith(MyUnitIDS.gigabyte_per_second, "2048", "256000")
MyUnitIDS.petabit_per_second.checkWith(MyUnitIDS.gigabyte_per_second, "2048", "256000000")
MyUnitIDS.exabit_per_second.checkWith(MyUnitIDS.petabit_per_second, "2048", "2048000")
MyUnitIDS.byte_per_second.checkWith(MyUnitIDS.bit_per_second, "2048", "16384")
MyUnitIDS.kibibyte_per_second.checkWith(MyUnitIDS.bit_per_second, "2048", "16777216")
MyUnitIDS.kilobyte_per_second.checkWith(MyUnitIDS.kibibit_per_second, "2048", "16000")
MyUnitIDS.megabyte_per_second.checkWith(MyUnitIDS.kilobyte_per_second, "2048", "2048000")
MyUnitIDS.mebibyte_per_second.checkWith(MyUnitIDS.bit_per_second, "2048", "17179869184")
MyUnitIDS.gigabyte_per_second.checkWith(MyUnitIDS.kilobyte_per_second, "2048", "2048000000")
MyUnitIDS.terabyte_per_second.checkWith(MyUnitIDS.gigabyte_per_second, "2048", "2048000")
MyUnitIDS.petabyte_per_second.checkWith(MyUnitIDS.terabyte_per_second, "2048", "2048000")
MyUnitIDS.exabyte_per_second.checkWith(MyUnitIDS.petabyte_per_second, "2048", "2048000")
}
@Test
fun testEnergy() {
MyUnitIDS.electron_volt.checkWith(MyUnitIDS.joule, "56000000000000000000", "8.97219")
MyUnitIDS.attojoule.checkWith(MyUnitIDS.calorie_th, "41840000000000", "0.00001")
MyUnitIDS.joule.checkWith(MyUnitIDS.kilocalorie_th, "4184", "1")
MyUnitIDS.kilojoule.checkWith(MyUnitIDS.calorie_th, "4184000000", "1000000000000")
MyUnitIDS.megajoule.checkWith(MyUnitIDS.calorie_th, "0.4184", "100000")
MyUnitIDS.gigajoule.checkWith(MyUnitIDS.calorie_th, "0.4184", "100000000")
MyUnitIDS.energy_ton.checkWith(MyUnitIDS.calorie_th, "0.4184", "418400000")
MyUnitIDS.kiloton.checkWith(MyUnitIDS.calorie_th, "0.4184", "418400000000")
MyUnitIDS.megaton.checkWith(MyUnitIDS.calorie_th, "0.4184", "418400000000000")
MyUnitIDS.gigaton.checkWith(MyUnitIDS.calorie_th, "0.000000004184", "4184000000")
MyUnitIDS.energy_horse_power_metric.checkWith(MyUnitIDS.joule, "10", "26477955")
MyUnitIDS.calorie_th.checkWith(MyUnitIDS.joule, "10", "41.84")
MyUnitIDS.kilocalorie_th.checkWith(MyUnitIDS.joule, "10", "41840")
}
@Test
fun testFileSize() {
MyUnitIDS.bit.checkWith(MyUnitIDS.kilobit, "2048", "2.048")
MyUnitIDS.kibibit.checkWith(MyUnitIDS.bit, "2048", "2097152")
MyUnitIDS.kilobit.checkWith(MyUnitIDS.bit, "2048", "2048000")
MyUnitIDS.megabit.checkWith(MyUnitIDS.kilobit, "2048", "2048000")
MyUnitIDS.mebibit.checkWith(MyUnitIDS.kilobit, "2048", "2147483.648")
MyUnitIDS.gigabit.checkWith(MyUnitIDS.kilobit, "2048", "2048000000")
MyUnitIDS.terabit.checkWith(MyUnitIDS.gigabyte, "2048", "256000")
MyUnitIDS.petabit.checkWith(MyUnitIDS.gigabyte, "2048", "256000000")
MyUnitIDS.exabit.checkWith(MyUnitIDS.petabit, "2048", "2048000")
MyUnitIDS.byte.checkWith(MyUnitIDS.bit, "2048", "16384")
MyUnitIDS.kibibyte.checkWith(MyUnitIDS.bit, "2048", "16777216")
MyUnitIDS.kilobyte.checkWith(MyUnitIDS.kibibit, "2048", "16000")
MyUnitIDS.megabyte.checkWith(MyUnitIDS.kilobyte, "2048", "2048000")
MyUnitIDS.mebibyte.checkWith(MyUnitIDS.bit, "2048", "17179869184")
MyUnitIDS.gigabyte.checkWith(MyUnitIDS.kilobyte, "2048", "2048000000")
MyUnitIDS.terabyte.checkWith(MyUnitIDS.gigabyte, "2048", "2048000")
MyUnitIDS.petabyte.checkWith(MyUnitIDS.terabyte, "2048", "2048000")
MyUnitIDS.exabyte.checkWith(MyUnitIDS.petabyte, "2048", "2048000")
}
@Test
fun testLength() {
MyUnitIDS.attometer.checkWith(MyUnitIDS.micrometer, "158000000000.7", "0.158")
MyUnitIDS.nanometer.checkWith(MyUnitIDS.inch, "158000000000.7", "6220.47244")
MyUnitIDS.micrometer.checkWith(MyUnitIDS.inch, "158000000000.7", "6220472.44097")
MyUnitIDS.millimeter.checkWith(MyUnitIDS.inch, "158000.7", "6220.5")
MyUnitIDS.centimeter.checkWith(MyUnitIDS.inch, "158000.7", "62205")
MyUnitIDS.decimeter.checkWith(MyUnitIDS.foot, "158000.7", "51837.5")
MyUnitIDS.meter.checkWith(MyUnitIDS.yard, "158000.7", "172791.66667")
MyUnitIDS.kilometer.checkWith(MyUnitIDS.mile, "100", "62.13712")
MyUnitIDS.inch.checkWith(MyUnitIDS.foot, "100", "8.33333")
MyUnitIDS.foot.checkWith(MyUnitIDS.inch, "100", "1200")
MyUnitIDS.yard.checkWith(MyUnitIDS.foot, "100", "300")
MyUnitIDS.mile.checkWith(MyUnitIDS.foot, "100", "528000")
MyUnitIDS.light_year.checkWith(MyUnitIDS.foot, "0.0000001", "3103914196.85037")
MyUnitIDS.parsec.checkWith(MyUnitIDS.foot, "0.00000001", "1012361411.25044")
MyUnitIDS.kiloparsec.checkWith(MyUnitIDS.foot, "0.00000000001", "1012361411.25044")
MyUnitIDS.megaparsec.checkWith(MyUnitIDS.foot, "0.00000000000001", "1012361411.25044")
MyUnitIDS.mercury_equatorial_radius.checkWith(MyUnitIDS.kilometer, "1", "2439.7")
MyUnitIDS.venus_equatorial_radius.checkWith(MyUnitIDS.kilometer, "1", "6051.8")
MyUnitIDS.earth_equatorial_radius.checkWith(MyUnitIDS.kilometer, "1", "6371")
MyUnitIDS.mars_equatorial_radius.checkWith(MyUnitIDS.kilometer, "1", "3389.5")
MyUnitIDS.jupiter_equatorial_radius.checkWith(MyUnitIDS.kilometer, "1", "69911")
MyUnitIDS.saturn_equatorial_radius.checkWith(MyUnitIDS.kilometer, "1", "58232")
MyUnitIDS.uranus_equatorial_radius.checkWith(MyUnitIDS.kilometer, "1", "25362")
MyUnitIDS.neptune_equatorial_radius.checkWith(MyUnitIDS.kilometer, "1", "24622")
MyUnitIDS.sun_equatorial_radius.checkWith(MyUnitIDS.kilometer, "1", "695508")
}
@Test
fun testMass() {
MyUnitIDS.electron_mass_rest.checkWith(MyUnitIDS.milligram, "1500000000000000000", "0.000001")
MyUnitIDS.atomic_mass_unit.checkWith(MyUnitIDS.electron_mass_rest, "150", "273433.27951")
MyUnitIDS.milligram.checkWith(MyUnitIDS.ounce, "1500", "0.05291")
MyUnitIDS.gram.checkWith(MyUnitIDS.ounce, "1500", "52.91094")
MyUnitIDS.kilogram.checkWith(MyUnitIDS.carat, "1500", "7500000")
MyUnitIDS.metric_ton.checkWith(MyUnitIDS.carat, "1500", "7500000000")
MyUnitIDS.imperial_ton.checkWith(MyUnitIDS.kilogram, "1500", "1524070.3632")
MyUnitIDS.ounce.checkWith(MyUnitIDS.pound, "1500", "93.75")
MyUnitIDS.carat.checkWith(MyUnitIDS.pound, "1500", "0.66139")
MyUnitIDS.pound.checkWith(MyUnitIDS.kilogram, "1500", "680.38856")
MyUnitIDS.mercury_mass.checkWith(MyUnitIDS.kilogram, "1", "330104000000000000000000")
MyUnitIDS.venus_mass.checkWith(MyUnitIDS.kilogram, "1", "4867320000000000000000000")
MyUnitIDS.earth_mass.checkWith(MyUnitIDS.kilogram, "1", "5972190000000000000000000")
MyUnitIDS.mars_mass.checkWith(MyUnitIDS.kilogram, "1", "641693000000000000000000")
MyUnitIDS.jupiter_mass.checkWith(MyUnitIDS.kilogram, "1", "1898130000000000000000000000")
MyUnitIDS.saturn_mass.checkWith(MyUnitIDS.kilogram, "1", "568319000000000000000000000")
MyUnitIDS.uranus_mass.checkWith(MyUnitIDS.kilogram, "1", "86810300000000000000000000")
MyUnitIDS.neptune_mass.checkWith(MyUnitIDS.kilogram, "1", "102410000000000000000000000")
MyUnitIDS.sun_mass.checkWith(MyUnitIDS.kilogram, "1", "1989100000000000000000000000000")
}
@Test
fun testPower() {
MyUnitIDS.attowatt.checkWith(MyUnitIDS.watt, "3950000000000000", "0.00395")
MyUnitIDS.watt.checkWith(MyUnitIDS.kilowatt, "395", "0.395")
MyUnitIDS.kilowatt.checkWith(MyUnitIDS.horse_power_mechanical, "395", "529.70373")
MyUnitIDS.megawatt.checkWith(MyUnitIDS.horse_power_mechanical, "395", "529703.72539")
MyUnitIDS.horse_power_mechanical.checkWith(MyUnitIDS.kilowatt, "395", "294.55145")
}
@Test
fun testPressure() {
MyUnitIDS.attopascal.checkWith(MyUnitIDS.femtopascal, "456", "0.456")
MyUnitIDS.femtopascal.checkWith(MyUnitIDS.picopascal, "456", "0.456")
MyUnitIDS.picopascal.checkWith(MyUnitIDS.nanopascal, "456", "0.456")
MyUnitIDS.nanopascal.checkWith(MyUnitIDS.micropascal, "456", "0.456")
MyUnitIDS.micropascal.checkWith(MyUnitIDS.millipascal, "456", "0.456")
MyUnitIDS.millipascal.checkWith(MyUnitIDS.centipascal, "456", "45.6")
MyUnitIDS.centipascal.checkWith(MyUnitIDS.decipascal, "456", "45.6")
MyUnitIDS.decipascal.checkWith(MyUnitIDS.dekapascal, "456", "4.56")
MyUnitIDS.pascal.checkWith(MyUnitIDS.bar, "456", "0.00456")
MyUnitIDS.dekapascal.checkWith(MyUnitIDS.bar, "456", "0.0456")
MyUnitIDS.hectopascal.checkWith(MyUnitIDS.psi, "456", "6.61372")
MyUnitIDS.bar.checkWith(MyUnitIDS.ksi, "456", "6.61372")
MyUnitIDS.megapascal.checkWith(MyUnitIDS.ksi, "456", "66.13721")
MyUnitIDS.gigapascal.checkWith(MyUnitIDS.torr, "456", "3420281273.13024")
MyUnitIDS.terapascal.checkWith(MyUnitIDS.gigapascal, "456", "456000")
MyUnitIDS.petapascal.checkWith(MyUnitIDS.gigapascal, "456", "456000000")
MyUnitIDS.exapascal.checkWith(MyUnitIDS.gigapascal, "456", "456000000000")
MyUnitIDS.psi.checkWith(MyUnitIDS.gigapascal, "456", "0.00314")
MyUnitIDS.ksi.checkWith(MyUnitIDS.gigapascal, "456", "3.14401")
MyUnitIDS.standard_atmosphere.checkWith(MyUnitIDS.torr, "456", "346560")
MyUnitIDS.torr.checkWith(MyUnitIDS.hectopascal, "456", "607.95")
MyUnitIDS.millimeter_of_mercury.checkWith(MyUnitIDS.hectopascal, "456", "607.95")
}
@Test
fun testSpeed() {
MyUnitIDS.millimeter_per_hour.checkWith(MyUnitIDS.kilometer_per_hour, "396", "0.0004")
MyUnitIDS.millimeter_per_minute.checkWith(MyUnitIDS.kilometer_per_hour, "396", "0.02376")
MyUnitIDS.millimeter_per_second.checkWith(MyUnitIDS.kilometer_per_hour, "396", "1.4256")
MyUnitIDS.centimeter_per_hour.checkWith(MyUnitIDS.kilometer_per_hour, "396", "0.00396")
MyUnitIDS.centimeter_per_minute.checkWith(MyUnitIDS.kilometer_per_hour, "396", "0.2376")
MyUnitIDS.centimeter_per_second.checkWith(MyUnitIDS.kilometer_per_hour, "396", "14.256")
MyUnitIDS.meter_per_hour.checkWith(MyUnitIDS.kilometer_per_hour, "396", "0.396")
MyUnitIDS.meter_per_minute.checkWith(MyUnitIDS.kilometer_per_hour, "396", "23.76")
MyUnitIDS.meter_per_second.checkWith(MyUnitIDS.kilometer_per_hour, "396", "1425.6")
MyUnitIDS.kilometer_per_hour.checkWith(MyUnitIDS.mile_per_hour, "396", "246.06299")
MyUnitIDS.kilometer_per_minute.checkWith(MyUnitIDS.mile_per_hour, "396", "14763.77953")
MyUnitIDS.kilometer_per_second.checkWith(MyUnitIDS.mile_per_hour, "396", "885826.77165")
MyUnitIDS.foot_per_hour.checkWith(MyUnitIDS.mile_per_hour, "396", "0.075")
MyUnitIDS.foot_per_minute.checkWith(MyUnitIDS.mile_per_hour, "396", "4.5")
MyUnitIDS.foot_per_second.checkWith(MyUnitIDS.mile_per_hour, "396", "270")
MyUnitIDS.yard_per_hour.checkWith(MyUnitIDS.mile_per_hour, "396", "0.225")
MyUnitIDS.yard_per_minute.checkWith(MyUnitIDS.mile_per_hour, "396", "13.5")
MyUnitIDS.yard_per_second.checkWith(MyUnitIDS.mile_per_hour, "396", "810")
MyUnitIDS.mile_per_hour.checkWith(MyUnitIDS.foot_per_hour, "396", "2090880")
MyUnitIDS.mile_per_minute.checkWith(MyUnitIDS.foot_per_hour, "396", "125452800")
MyUnitIDS.mile_per_second.checkWith(MyUnitIDS.foot_per_hour, "396", "7527168000")
MyUnitIDS.knot.checkWith(MyUnitIDS.meter_per_hour, "396", "733392")
MyUnitIDS.velocity_of_light_in_vacuum.checkWith(MyUnitIDS.meter_per_second, "1", "299792458")
MyUnitIDS.cosmic_velocity_first.checkWith(MyUnitIDS.meter_per_second, "1", "7900")
MyUnitIDS.cosmic_velocity_second.checkWith(MyUnitIDS.meter_per_second, "1", "11200")
MyUnitIDS.cosmic_velocity_third.checkWith(MyUnitIDS.meter_per_second, "1", "16670")
MyUnitIDS.earths_orbital_speed.checkWith(MyUnitIDS.meter_per_second, "1", "29765")
MyUnitIDS.mach.checkWith(MyUnitIDS.meter_per_second, "1", "343.6")
MyUnitIDS.mach_si_standard.checkWith(MyUnitIDS.meter_per_second, "1", "295.0464")
}
@Test
fun testTemperature() {
MyUnitIDS.celsius.checkWith(MyUnitIDS.celsius, "0", "0")
MyUnitIDS.celsius.checkWith(MyUnitIDS.fahrenheit, "0", "32")
MyUnitIDS.celsius.checkWith(MyUnitIDS.kelvin, "0", "273.15")
MyUnitIDS.celsius.checkWith(MyUnitIDS.celsius, "36.6", "36.6")
MyUnitIDS.celsius.checkWith(MyUnitIDS.fahrenheit, "36.6", "97.88")
MyUnitIDS.celsius.checkWith(MyUnitIDS.kelvin, "36.6", "309.75")
MyUnitIDS.celsius.checkWith(MyUnitIDS.celsius, "-36.6", "-36.6")
MyUnitIDS.celsius.checkWith(MyUnitIDS.fahrenheit, "-36.6", "-33.88")
MyUnitIDS.celsius.checkWith(MyUnitIDS.kelvin, "-36.6", "236.55")
MyUnitIDS.fahrenheit.checkWith(MyUnitIDS.celsius, "0", "-17.77778")
MyUnitIDS.fahrenheit.checkWith(MyUnitIDS.fahrenheit, "0", "0")
MyUnitIDS.fahrenheit.checkWith(MyUnitIDS.kelvin, "0", "255.37222")
MyUnitIDS.fahrenheit.checkWith(MyUnitIDS.celsius, "36.6", "2.55556")
MyUnitIDS.fahrenheit.checkWith(MyUnitIDS.fahrenheit, "36.6", "36.6")
MyUnitIDS.fahrenheit.checkWith(MyUnitIDS.kelvin, "36.6", "275.70556")
MyUnitIDS.fahrenheit.checkWith(MyUnitIDS.celsius, "-36.6", "-38.11111")
MyUnitIDS.fahrenheit.checkWith(MyUnitIDS.fahrenheit, "-36.6", "-36.6")
MyUnitIDS.fahrenheit.checkWith(MyUnitIDS.kelvin, "-36.6", "235.03889")
MyUnitIDS.kelvin.checkWith(MyUnitIDS.celsius, "0", "-273.15")
MyUnitIDS.kelvin.checkWith(MyUnitIDS.fahrenheit, "0", "-459.67")
MyUnitIDS.kelvin.checkWith(MyUnitIDS.kelvin, "0", "0")
MyUnitIDS.kelvin.checkWith(MyUnitIDS.celsius, "36.6", "-236.55")
MyUnitIDS.kelvin.checkWith(MyUnitIDS.fahrenheit, "36.6", "-393.79")
MyUnitIDS.kelvin.checkWith(MyUnitIDS.kelvin, "36.6", "36.6")
MyUnitIDS.kelvin.checkWith(MyUnitIDS.celsius, "-36.6", "-309.75")
MyUnitIDS.kelvin.checkWith(MyUnitIDS.fahrenheit, "-36.6", "-525.55")
MyUnitIDS.kelvin.checkWith(MyUnitIDS.kelvin, "-36.6", "-36.6")
}
@Test
fun testTime() {
MyUnitIDS.attosecond.checkWith(MyUnitIDS.millisecond, "366000000000", "0.00037")
MyUnitIDS.nanosecond.checkWith(MyUnitIDS.millisecond, "366", "0.00037")
MyUnitIDS.microsecond.checkWith(MyUnitIDS.millisecond, "366", "0.366")
MyUnitIDS.millisecond.checkWith(MyUnitIDS.second, "366", "0.366")
MyUnitIDS.jiffy.checkWith(MyUnitIDS.second, "366", "3.66")
MyUnitIDS.second.checkWith(MyUnitIDS.millisecond, "366", "366000")
MyUnitIDS.minute.checkWith(MyUnitIDS.millisecond, "366", "21960000")
MyUnitIDS.hour.checkWith(MyUnitIDS.millisecond, "366", "1317600000")
MyUnitIDS.day.checkWith(MyUnitIDS.hour, "366", "8784")
MyUnitIDS.week.checkWith(MyUnitIDS.hour, "366", "61488")
}
@Test
fun testVolume() {
MyUnitIDS.attoliter.checkWith(MyUnitIDS.millimeter, "1507000000000", "0.00151")
MyUnitIDS.milliliter.checkWith(MyUnitIDS.liter, "1507", "1.507")
MyUnitIDS.liter.checkWith(MyUnitIDS.us_liquid_gallon, "1507", "398.10728")
MyUnitIDS.us_liquid_gallon.checkWith(MyUnitIDS.us_fluid_ounce, "1507", "192896")
MyUnitIDS.us_liquid_quart.checkWith(MyUnitIDS.us_liquid_gallon, "1507", "376.75")
MyUnitIDS.us_liquid_pint.checkWith(MyUnitIDS.us_liquid_gallon, "1507", "188.375")
MyUnitIDS.us_legal_cup.checkWith(MyUnitIDS.us_liquid_gallon, "1507", "94.1875")
MyUnitIDS.us_fluid_ounce.checkWith(MyUnitIDS.us_liquid_gallon, "1507", "11.77344")
MyUnitIDS.us_tablespoon.checkWith(MyUnitIDS.us_liquid_gallon, "1507", "5.88672")
MyUnitIDS.us_teaspoon.checkWith(MyUnitIDS.us_liquid_gallon, "1507", "1.96224")
MyUnitIDS.imperial_gallon.checkWith(MyUnitIDS.us_liquid_gallon, "1507", "1809.83154")
MyUnitIDS.imperial_quart.checkWith(MyUnitIDS.us_liquid_gallon, "1507", "452.45788")
MyUnitIDS.imperial_pint.checkWith(MyUnitIDS.us_liquid_gallon, "1507", "226.22894")
MyUnitIDS.imperial_cup.checkWith(MyUnitIDS.us_liquid_gallon, "1507", "113.11447")
MyUnitIDS.imperial_fluid_ounce.checkWith(MyUnitIDS.us_liquid_gallon, "1507", "11.31145")
MyUnitIDS.imperial_tablespoon.checkWith(MyUnitIDS.us_liquid_gallon, "1507", "7.06965")
MyUnitIDS.imperial_teaspoon.checkWith(MyUnitIDS.us_liquid_gallon, "1507", "2.35655")
MyUnitIDS.cubic_millimeter.checkWith(MyUnitIDS.us_liquid_gallon, "1507", "0.0004")
MyUnitIDS.cubic_centimeter.checkWith(MyUnitIDS.us_liquid_gallon, "1507", "0.39811")
MyUnitIDS.cubic_meter.checkWith(MyUnitIDS.us_liquid_gallon, "1507", "398107.2829")
MyUnitIDS.cubic_kilometer.checkWith(MyUnitIDS.us_liquid_gallon, "0.0000001507", "39810.72829")
}
private fun String.checkWith(checkingId: String, value: String, expected: String) {
val unit = ALL_UNITS.first { it.unitId == this }
val actual = unit
.convert(ALL_UNITS.first { it.unitId == checkingId }, BigDecimal(value), 5)
.toPlainString()
assertEquals("Failed at $this to $checkingId", expected, actual)
println("PASSED: $this -> $expected == $actual")
val content: Set<String> = history.getOrDefault(unit.group, setOf())
history[unit.group] = content.plus(this)
}
@After
fun after() {
val unitGroup = history.keys.first()
// GROUP : testedCount / totalCount
println("${unitGroup.name} : ${history[unitGroup]?.size} / ${ALL_UNITS.filter { it.group == unitGroup }.size}")
}
}

View File

@ -7,3 +7,4 @@ dependencyResolutionManagement {
}
rootProject.name = "Unitto"
include(":app")
include(":tools")