diff --git a/core/base/src/main/res/values/strings.xml b/core/base/src/main/res/values/strings.xml index c3c8fae1..8a62710f 100644 --- a/core/base/src/main/res/values/strings.xml +++ b/core/base/src/main/res/values/strings.xml @@ -175,6 +175,8 @@ Mib Gigabit Gb + Gibibit + Gib Terabit Tb Petabit @@ -193,6 +195,8 @@ MiB Gigabyte GB + Gibibyte + GiB Terabyte TB Petabyte @@ -213,6 +217,8 @@ Mib/s Gigabit/second Gb/s + Gibibit/second + Gib/s Terabit/second Tb/s Petabit/second @@ -231,6 +237,8 @@ MiB/s Gigabyte/second GB/s + Gibibyte/second + GiB/s Terabyte/second TB/s Petabyte/second diff --git a/data/units/src/main/java/com/sadellie/unitto/data/units/MyUnitIDS.kt b/data/units/src/main/java/com/sadellie/unitto/data/units/MyUnitIDS.kt index 85360a50..eaeafbc7 100644 --- a/data/units/src/main/java/com/sadellie/unitto/data/units/MyUnitIDS.kt +++ b/data/units/src/main/java/com/sadellie/unitto/data/units/MyUnitIDS.kt @@ -117,6 +117,7 @@ object MyUnitIDS { const val megabit = "megabit" const val mebibit = "mebibit" const val gigabit = "gigabit" + const val gibibit = "gibibit" const val terabit = "terabit" const val petabit = "petabit" const val exabit = "exabit" @@ -126,6 +127,7 @@ object MyUnitIDS { const val megabyte = "megabyte" const val mebibyte = "mebibyte" const val gigabyte = "gigabyte" + const val gibibyte = "gibibyte" const val terabyte = "terabyte" const val petabyte = "petabyte" const val exabyte = "exabyte" @@ -218,6 +220,7 @@ object MyUnitIDS { const val megabit_per_second = "megabit_per_second" const val mebibit_per_second = "mebibit_per_second" const val gigabit_per_second = "gigabit_per_second" + const val gibibit_per_second = "gibibit_per_second" const val terabit_per_second = "terabit_per_second" const val petabit_per_second = "petabit_per_second" const val exabit_per_second = "exabit_per_second" @@ -227,6 +230,7 @@ object MyUnitIDS { const val megabyte_per_second = "megabyte_per_second" const val mebibyte_per_second = "mebibyte_per_second" const val gigabyte_per_second = "gigabyte_per_second" + const val gibibyte_per_second = "gibibyte_per_second" const val terabyte_per_second = "terabyte_per_second" const val petabyte_per_second = "petabyte_per_second" const val exabyte_per_second = "exabyte_per_second" diff --git a/data/units/src/main/java/com/sadellie/unitto/data/units/collections/Data.kt b/data/units/src/main/java/com/sadellie/unitto/data/units/collections/Data.kt index 15b01d3a..9efc0382 100644 --- a/data/units/src/main/java/com/sadellie/unitto/data/units/collections/Data.kt +++ b/data/units/src/main/java/com/sadellie/unitto/data/units/collections/Data.kt @@ -33,6 +33,7 @@ internal val dataCollection: List by lazy { DefaultUnit(MyUnitIDS.megabit, BigDecimal.valueOf(1_000_000), UnitGroup.DATA, R.string.megabit, R.string.megabit_short), DefaultUnit(MyUnitIDS.mebibit, BigDecimal.valueOf(1_048_576), UnitGroup.DATA, R.string.mebibit, R.string.mebibit_short), DefaultUnit(MyUnitIDS.gigabit, BigDecimal.valueOf(1_000_000_000), UnitGroup.DATA, R.string.gigabit, R.string.gigabit_short), + DefaultUnit(MyUnitIDS.gibibit, BigDecimal.valueOf(1_073_741_824), UnitGroup.DATA, R.string.gibibit, R.string.gibibit_short), DefaultUnit(MyUnitIDS.terabit, BigDecimal.valueOf(1_000_000_000_000), UnitGroup.DATA, R.string.terabit, R.string.terabit_short), DefaultUnit(MyUnitIDS.petabit, BigDecimal.valueOf(1_000_000_000_000_000), UnitGroup.DATA, R.string.petabit, R.string.petabit_short), DefaultUnit(MyUnitIDS.exabit, BigDecimal.valueOf(1_000_000_000_000_000_000), UnitGroup.DATA, R.string.exabit, R.string.exabit_short), @@ -42,6 +43,7 @@ internal val dataCollection: List by lazy { DefaultUnit(MyUnitIDS.megabyte, BigDecimal.valueOf(8_000_000), UnitGroup.DATA, R.string.megabyte, R.string.megabyte_short), DefaultUnit(MyUnitIDS.mebibyte, BigDecimal.valueOf(8_388_608), UnitGroup.DATA, R.string.mebibyte, R.string.mebibyte_short), DefaultUnit(MyUnitIDS.gigabyte, BigDecimal.valueOf(8_000_000_000), UnitGroup.DATA, R.string.gigabyte, R.string.gigabyte_short), + DefaultUnit(MyUnitIDS.gibibyte, BigDecimal.valueOf(8_589_934_592), UnitGroup.DATA, R.string.gibibyte, R.string.gibibyte_short), DefaultUnit(MyUnitIDS.terabyte, BigDecimal.valueOf(8_000_000_000_000), UnitGroup.DATA, R.string.terabyte, R.string.terabyte_short), DefaultUnit(MyUnitIDS.petabyte, BigDecimal.valueOf(8_000_000_000_000_000), UnitGroup.DATA, R.string.petabyte, R.string.petabyte_short), DefaultUnit(MyUnitIDS.exabyte, BigDecimal.valueOf(8_000_000_000_000_000_000), UnitGroup.DATA, R.string.exabyte, R.string.exabyte_short), diff --git a/data/units/src/main/java/com/sadellie/unitto/data/units/collections/DataTransfer.kt b/data/units/src/main/java/com/sadellie/unitto/data/units/collections/DataTransfer.kt index 2cbf39c9..974e0796 100644 --- a/data/units/src/main/java/com/sadellie/unitto/data/units/collections/DataTransfer.kt +++ b/data/units/src/main/java/com/sadellie/unitto/data/units/collections/DataTransfer.kt @@ -33,6 +33,7 @@ internal val dataTransferCollection: List by lazy { DefaultUnit(MyUnitIDS.megabit_per_second, BigDecimal.valueOf(1_000_000), UnitGroup.DATA_TRANSFER, R.string.megabit_per_second, R.string.megabit_per_second_short), DefaultUnit(MyUnitIDS.mebibit_per_second, BigDecimal.valueOf(1_048_576), UnitGroup.DATA_TRANSFER, R.string.mebibit_per_second, R.string.mebibit_per_second_short), DefaultUnit(MyUnitIDS.gigabit_per_second, BigDecimal.valueOf(1_000_000_000), UnitGroup.DATA_TRANSFER, R.string.gigabit_per_second, R.string.gigabit_per_second_short), + DefaultUnit(MyUnitIDS.gibibit_per_second, BigDecimal.valueOf(1_073_741_824), UnitGroup.DATA_TRANSFER, R.string.gibibit_per_second, R.string.gibibit_per_second_short), DefaultUnit(MyUnitIDS.terabit_per_second, BigDecimal.valueOf(1_000_000_000_000), UnitGroup.DATA_TRANSFER, R.string.terabit_per_second, R.string.terabit_per_second_short), DefaultUnit(MyUnitIDS.petabit_per_second, BigDecimal.valueOf(1_000_000_000_000_000), UnitGroup.DATA_TRANSFER, R.string.petabit_per_second, R.string.petabit_per_second_short), DefaultUnit(MyUnitIDS.exabit_per_second, BigDecimal.valueOf(1_000_000_000_000_000_000), UnitGroup.DATA_TRANSFER, R.string.exabit_per_second, R.string.exabit_per_second_short), @@ -42,6 +43,7 @@ internal val dataTransferCollection: List by lazy { DefaultUnit(MyUnitIDS.megabyte_per_second, BigDecimal.valueOf(8_000_000), UnitGroup.DATA_TRANSFER, R.string.megabyte_per_second, R.string.megabyte_per_second_short), DefaultUnit(MyUnitIDS.mebibyte_per_second, BigDecimal.valueOf(8_388_608), UnitGroup.DATA_TRANSFER, R.string.mebibyte_per_second, R.string.mebibyte_per_second_short), DefaultUnit(MyUnitIDS.gigabyte_per_second, BigDecimal.valueOf(8_000_000_000), UnitGroup.DATA_TRANSFER, R.string.gigabyte_per_second, R.string.gigabyte_per_second_short), + DefaultUnit(MyUnitIDS.gibibyte_per_second, BigDecimal.valueOf(8_589_934_592), UnitGroup.DATA_TRANSFER, R.string.gibibyte_per_second, R.string.gibibyte_per_second_short), DefaultUnit(MyUnitIDS.terabyte_per_second, BigDecimal.valueOf(8_000_000_000_000), UnitGroup.DATA_TRANSFER, R.string.terabyte_per_second, R.string.terabyte_per_second_short), DefaultUnit(MyUnitIDS.petabyte_per_second, BigDecimal.valueOf(8_000_000_000_000_000), UnitGroup.DATA_TRANSFER, R.string.petabyte_per_second, R.string.petabyte_per_second_short), DefaultUnit(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), diff --git a/data/units/src/test/java/com/sadellie/unitto/data/units/AllUnitsTest.kt b/data/units/src/test/java/com/sadellie/unitto/data/units/AllUnitsTest.kt index f89197dd..e7d562b0 100644 --- a/data/units/src/test/java/com/sadellie/unitto/data/units/AllUnitsTest.kt +++ b/data/units/src/test/java/com/sadellie/unitto/data/units/AllUnitsTest.kt @@ -93,6 +93,7 @@ class AllUnitsTest { megabit_per_second.checkWith(kilobit_per_second, "2048", "2048000") mebibit_per_second.checkWith(kilobit_per_second, "2048", "2147483.648") gigabit_per_second.checkWith(kilobit_per_second, "2048", "2048000000") + gibibit_per_second.checkWith(mebibit_per_second, "24", "24576") terabit_per_second.checkWith(gigabyte_per_second, "2048", "256000") petabit_per_second.checkWith(gigabyte_per_second, "2048", "256000000") exabit_per_second.checkWith(petabit_per_second, "2048", "2048000") @@ -102,6 +103,7 @@ class AllUnitsTest { megabyte_per_second.checkWith(kilobyte_per_second, "2048", "2048000") mebibyte_per_second.checkWith(bit_per_second, "2048", "17179869184") gigabyte_per_second.checkWith(kilobyte_per_second, "2048", "2048000000") + gibibyte_per_second.checkWith(mebibit_per_second, "24", "196608") terabyte_per_second.checkWith(gigabyte_per_second, "2048", "2048000") petabyte_per_second.checkWith(terabyte_per_second, "2048", "2048000") exabyte_per_second.checkWith(petabyte_per_second, "2048", "2048000") @@ -125,13 +127,14 @@ class AllUnitsTest { } @Test - fun testFileSize() = testWithUnits { + fun testData() = testWithUnits { bit.checkWith(kilobit, "2048", "2.048") kibibit.checkWith(bit, "2048", "2097152") kilobit.checkWith(bit, "2048", "2048000") megabit.checkWith(kilobit, "2048", "2048000") mebibit.checkWith(kilobit, "2048", "2147483.648") gigabit.checkWith(kilobit, "2048", "2048000000") + gibibit.checkWith(mebibit, "24", "24576") terabit.checkWith(gigabyte, "2048", "256000") petabit.checkWith(gigabyte, "2048", "256000000") exabit.checkWith(petabit, "2048", "2048000") @@ -141,6 +144,7 @@ class AllUnitsTest { megabyte.checkWith(kilobyte, "2048", "2048000") mebibyte.checkWith(bit, "2048", "17179869184") gigabyte.checkWith(kilobyte, "2048", "2048000000") + gibibyte.checkWith(mebibit, "24", "196608") terabyte.checkWith(gigabyte, "2048", "2048000") petabyte.checkWith(terabyte, "2048", "2048000") exabyte.checkWith(petabyte, "2048", "2048000")