# This file is a copy of common/testData/units/unitsTest.txt from CLDR.
# WIP/TODO(hugovdm): determine a good update procedure and document it.
#
# Test data for unit conversions
#  Copyright © 1991-2020 Unicode, Inc.
#  For terms of use, see http://www.unicode.org/copyright.html
#  Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries.
#  CLDR data files are interpreted according to the LDML specification (http://unicode.org/reports/tr35/)
#
# Format:
#   Quantity    ;   x   ;   y   ;   conversion to y (rational)  ;   test: 1000 x ⟹ y
#
# Use: convert 1000 x units to the y unit; the result should match the final column,
#   at the given precision. For example, when the last column is 159.1549,
#   round to 4 decimal digits before comparing.
# Note that certain conversions are approximate, such as degrees to radians
#
# Generation: Set GENERATE_TESTS in TestUnits.java, and look at TestParseUnit results.

acceleration    ;   meter-per-square-second ;   meter-per-square-second ;   1 * x   ;   1,000.00
acceleration    ;   g-force ;   meter-per-square-second ;   9.80665 * x ;   9806.65
angle   ;   arc-second  ;   revolution  ;   0.0000625/81 * x    ;   7.716049E-4
angle   ;   arc-minute  ;   revolution  ;   0.00125/27 * x  ;   0.0462963
angle   ;   degree  ;   revolution  ;   0.025/9 * x ;   2.777778
angle   ;   radian  ;   revolution  ;   65,501,488/411,557,987 * x  ;   159.1549
angle   ;   revolution  ;   revolution  ;   1 * x   ;   1,000.00
area    ;   square-centimeter   ;   square-meter    ;   0.0001 * x  ;   0.1
area    ;   square-inch ;   square-meter    ;   0.00064516 * x  ;   0.64516
area    ;   square-foot ;   square-meter    ;   0.09290304 * x  ;   92.90304
area    ;   square-yard ;   square-meter    ;   0.83612736 * x  ;   836.1274
area    ;   square-meter    ;   square-meter    ;   1 * x   ;   1,000.00
area    ;   dunam   ;   square-meter    ;   1,000 * x   ;   1000000.0
area    ;   acre    ;   square-meter    ;   4,046.8564224 * x   ;   4046856.0
area    ;   hectare ;   square-meter    ;   10,000 * x  ;   1.0E7
area    ;   square-kilometer    ;   square-meter    ;   1,000,000 * x   ;   1.0E9
area    ;   square-mile ;   square-meter    ;   2,589,988.110336 * x    ;   2.589988E9
concentration   ;   millimole-per-liter ;   item-per-cubic-meter    ;   602,214,076,000,000,000,000,000 * x ;   6.022141E26
consumption ;   liter-per-100-kilometer ;   cubic-meter-per-meter   ;   0.00000001 * x  ;   1.0E-5
consumption ;   liter-per-kilometer ;   cubic-meter-per-meter   ;   0.000001 * x    ;   0.001
consumption-inverse ;   mile-per-gallon-imperial    ;   meter-per-cubic-meter   ;   160,934,400,000/454,609 * x ;   3.540062E8
consumption-inverse ;   mile-per-gallon ;   meter-per-cubic-meter   ;   48,000,000,000/112,903 * x  ;   4.251437E8
digital ;   bit ;   bit ;   1 * x   ;   1,000.00
digital ;   byte    ;   bit ;   8 * x   ;   8000.0
digital ;   kilobit ;   bit ;   1,000 * x   ;   1000000.0
digital ;   kilobyte    ;   bit ;   8,000 * x   ;   8000000.0
digital ;   megabit ;   bit ;   1,000,000 * x   ;   1.0E9
digital ;   megabyte    ;   bit ;   8,000,000 * x   ;   8.0E9
digital ;   gigabit ;   bit ;   1,000,000,000 * x   ;   1.0E12
digital ;   gigabyte    ;   bit ;   8,000,000,000 * x   ;   8.0E12
digital ;   terabit ;   bit ;   1,000,000,000,000 * x   ;   1.0E15
digital ;   terabyte    ;   bit ;   8,000,000,000,000 * x   ;   8.0E15
digital ;   petabyte    ;   bit ;   8,000,000,000,000,000 * x   ;   8.0E18
duration    ;   nanosecond  ;   second  ;   0.000000001 * x ;   1.0E-6
duration    ;   microsecond ;   second  ;   0.000001 * x    ;   0.001
duration    ;   millisecond ;   second  ;   0.001 * x   ;   1.0
duration    ;   second  ;   second  ;   1 * x   ;   1,000.00
duration    ;   minute  ;   second  ;   60 * x  ;   60000.0
duration    ;   hour    ;   second  ;   3,600 * x   ;   3600000.0
duration    ;   day ;   second  ;   86,400 * x  ;   8.64E7
duration    ;   day-person  ;   second  ;   86,400 * x  ;   8.64E7
duration    ;   week    ;   second  ;   604,800 * x ;   6.048E8
duration    ;   week-person ;   second  ;   604,800 * x ;   6.048E8
electric-current    ;   milliampere ;   ampere  ;   0.001 * x   ;   1.0
electric-current    ;   ampere  ;   ampere  ;   1 * x   ;   1,000.00
electric-resistance ;   ohm ;   kilogram-square-meter-per-cubic-second-square-ampere    ;   1 * x   ;   1000.0
energy  ;   electronvolt    ;   kilogram-square-meter-per-square-second ;   0.0000000000000000001602177 * x ;   1.602177E-16
energy  ;   dalton  ;   kilogram-square-meter-per-square-second ;   0.00000000014924180856 * x  ;   1.492418E-7
energy  ;   joule   ;   kilogram-square-meter-per-square-second ;   1 * x   ;   1000.0
energy  ;   newton-meter    ;   kilogram-square-meter-per-square-second ;   1 * x   ;   1000.0
energy  ;   pound-force-foot    ;   kilogram-square-meter-per-square-second ;   1.3558179483314004 * x  ;   1355.818
energy  ;   calorie ;   kilogram-square-meter-per-square-second ;   4.184 * x   ;   4184.0
energy  ;   kilojoule   ;   kilogram-square-meter-per-square-second ;   1,000 * x   ;   1000000.0
energy  ;   british-thermal-unit    ;   kilogram-square-meter-per-square-second ;   9,489.1523804/9 * x ;   1054350.0
energy  ;   foodcalorie ;   kilogram-square-meter-per-square-second ;   4,184 * x   ;   4184000.0
energy  ;   kilocalorie ;   kilogram-square-meter-per-square-second ;   4,184 * x   ;   4184000.0
energy  ;   kilowatt-hour   ;   kilogram-square-meter-second-per-cubic-second   ;   3,600,000 * x   ;   3.6E9
energy  ;   therm-us    ;   kilogram-square-meter-per-square-second ;   105,480,400 * x ;   1.054804E11
force   ;   newton  ;   kilogram-meter-per-square-second    ;   1 * x   ;   1000.0
force   ;   pound-force ;   kilogram-meter-per-square-second    ;   4.4482216152605 * x ;   4448.222
frequency   ;   hertz   ;   revolution-per-second   ;   1 * x   ;   1000.0
frequency   ;   kilohertz   ;   revolution-per-second   ;   1,000 * x   ;   1000000.0
frequency   ;   megahertz   ;   revolution-per-second   ;   1,000,000 * x   ;   1.0E9
frequency   ;   gigahertz   ;   revolution-per-second   ;   1,000,000,000 * x   ;   1.0E12
graphics    ;   dot ;   pixel   ;   1 * x   ;   1000.0
graphics    ;   pixel   ;   pixel   ;   1 * x   ;   1,000.00
graphics    ;   megapixel   ;   pixel   ;   1,000,000 * x   ;   1.0E9
length  ;   picometer   ;   meter   ;   0.000000000001 * x  ;   1.0E-9
length  ;   nanometer   ;   meter   ;   0.000000001 * x ;   1.0E-6
length  ;   micrometer  ;   meter   ;   0.000001 * x    ;   0.001
length  ;   point   ;   meter   ;   0.003175/9 * x  ;   0.3527778
length  ;   millimeter  ;   meter   ;   0.001 * x   ;   1.0
length  ;   centimeter  ;   meter   ;   0.01 * x    ;   10.0
length  ;   inch    ;   meter   ;   0.0254 * x  ;   25.4
length  ;   decimeter   ;   meter   ;   0.1 * x ;   100.0
length  ;   foot    ;   meter   ;   0.3048 * x  ;   304.8
length  ;   yard    ;   meter   ;   0.9144 * x  ;   914.4
length  ;   meter   ;   meter   ;   1 * x   ;   1,000.00
length  ;   fathom  ;   meter   ;   1.8288 * x  ;   1828.8
length  ;   furlong ;   meter   ;   201.168 * x ;   201168.0
length  ;   kilometer   ;   meter   ;   1,000 * x   ;   1000000.0
length  ;   mile    ;   meter   ;   1,609.344 * x   ;   1609344.0
length  ;   nautical-mile   ;   meter   ;   1,852 * x   ;   1852000.0
length  ;   mile-scandinavian   ;   meter   ;   10,000 * x  ;   1.0E7
length  ;   100-kilometer   ;   meter   ;   100,000 * x ;   1.0E8
length  ;   earth-radius    ;   meter   ;   6,378,100 * x   ;   6.3781E9
length  ;   solar-radius    ;   meter   ;   695,700,000 * x ;   6.957E11
length  ;   astronomical-unit   ;   meter   ;   149,597,900,000 * x ;   1.495979E14
length  ;   light-year  ;   meter   ;   9,460,730,000,000,000 * x   ;   9.46073E18
length  ;   parsec  ;   meter   ;   30,856,780,000,000,000 * x  ;   3.085678E19
luminous-flux   ;   lux ;   candela-square-meter-per-square-meter   ;   1 * x   ;   1000.0
luminous-intensity  ;   candela ;   candela ;   1 * x   ;   1,000.00
mass    ;   microgram   ;   kilogram    ;   0.000000001 * x ;   1.0E-6
mass    ;   milligram   ;   kilogram    ;   0.000001 * x    ;   0.001
mass    ;   carat   ;   kilogram    ;   0.0002 * x  ;   0.2
mass    ;   gram    ;   kilogram    ;   0.001 * x   ;   1.0
mass    ;   ounce   ;   kilogram    ;   0.028349523125 * x  ;   28.34952
mass    ;   ounce-troy  ;   kilogram    ;   0.03110348 * x  ;   31.10348
mass    ;   pound   ;   kilogram    ;   0.45359237 * x  ;   453.5924
mass    ;   kilogram    ;   kilogram    ;   1 * x   ;   1,000.00
mass    ;   stone   ;   kilogram    ;   6.35029318 * x  ;   6350.293
mass    ;   ton ;   kilogram    ;   907.18474 * x   ;   907184.7
mass    ;   metric-ton  ;   kilogram    ;   1,000 * x   ;   1000000.0
mass    ;   earth-mass  ;   kilogram    ;   5,972,200,000,000,000,000,000,000 * x   ;   5.9722E27
mass    ;   solar-mass  ;   kilogram    ;   1,988,470,000,000,000,000,000,000,000,000 * x   ;   1.98847E33
mass-density    ;   milligram-per-deciliter ;   kilogram-per-cubic-meter    ;   0.01 * x    ;   10.0
portion ;   permillion  ;   portion ;   0.000001 * x    ;   0.001
portion ;   permyriad   ;   portion ;   0.0001 * x  ;   0.1
portion ;   permille    ;   portion ;   0.001 * x   ;   1.0
portion ;   percent ;   portion ;   0.01 * x    ;   10.0
portion ;   karat   ;   portion ;   0.125/3 * x ;   41.66667
portion ;   portion ;   portion ;   1 * x   ;   1,000.00
power   ;   milliwatt   ;   kilogram-square-meter-per-cubic-second  ;   0.001 * x   ;   1.0
power   ;   watt    ;   kilogram-square-meter-per-cubic-second  ;   1 * x   ;   1000.0
power   ;   horsepower  ;   kilogram-square-meter-per-cubic-second  ;   745.69987158227022 * x  ;   745699.9
power   ;   kilowatt    ;   kilogram-square-meter-per-cubic-second  ;   1,000 * x   ;   1000000.0
power   ;   megawatt    ;   kilogram-square-meter-per-cubic-second  ;   1,000,000 * x   ;   1.0E9
power   ;   gigawatt    ;   kilogram-square-meter-per-cubic-second  ;   1,000,000,000 * x   ;   1.0E12
power   ;   solar-luminosity    ;   kilogram-square-meter-per-cubic-second  ;   382,800,000,000,000,000,000,000,000 * x ;   3.828E29
pressure    ;   pascal  ;   kilogram-per-meter-square-second    ;   1 * x   ;   1000.0
pressure    ;   hectopascal ;   kilogram-per-meter-square-second    ;   100 * x ;   100000.0
pressure    ;   millibar    ;   kilogram-per-meter-square-second    ;   100 * x ;   100000.0
pressure    ;   millimeter-ofhg ;   kilogram-meter-per-square-meter-square-second   ;   133.322387415 * x   ;   133322.4
pressure    ;   kilopascal  ;   kilogram-per-meter-square-second    ;   1,000 * x   ;   1000000.0
pressure    ;   inch-ofhg   ;   kilogram-meter-per-square-meter-square-second   ;   3,386.388640341 * x ;   3386389.0
pressure    ;   pound-force-per-square-inch ;   kilogram-meter-per-square-meter-square-second   ;   111,205,540.3815125/16,129 * x  ;   6894757.0
pressure    ;   bar ;   kilogram-per-meter-square-second    ;   100,000 * x ;   1.0E8
pressure    ;   atmosphere  ;   kilogram-per-meter-square-second    ;   101,325 * x ;   1.01325E8
pressure    ;   megapascal  ;   kilogram-per-meter-square-second    ;   1,000,000 * x   ;   1.0E9
pressure-per-length ;   ofhg    ;   kilogram-per-square-meter-square-second ;   133,322.387415 * x  ;   1.333224E8
resolution  ;   dot-per-inch    ;   pixel-per-meter ;   5,000/127 * x   ;   39370.08
resolution  ;   pixel-per-inch  ;   pixel-per-meter ;   5,000/127 * x   ;   39370.08
resolution  ;   dot-per-centimeter  ;   pixel-per-meter ;   100 * x ;   100000.0
resolution  ;   pixel-per-centimeter    ;   pixel-per-meter ;   100 * x ;   100000.0
speed   ;   kilometer-per-hour  ;   meter-per-second    ;   2.5/9 * x   ;   277.7778
speed   ;   mile-per-hour   ;   meter-per-second    ;   0.44704 * x ;   447.04
speed   ;   knot    ;   meter-per-second    ;   4.63/9 * x  ;   514.4444
speed   ;   meter-per-second    ;   meter-per-second    ;   1 * x   ;   1,000.00
substance-amount    ;   item    ;   item    ;   1 * x   ;   1,000.00
substance-amount    ;   mole    ;   item    ;   602,214,076,000,000,000,000,000 * x ;   6.022141E26
temperature ;   fahrenheit  ;   kelvin  ;   5/9 * x - 2,298.35/9    ;   810.9278
temperature ;   kelvin  ;   kelvin  ;   1 * x   ;   1,000.00
temperature ;   celsius ;   kelvin  ;   1 * x - 273.15  ;   1273.15
typewidth   ;   em  ;   em  ;   1 * x   ;   1,000.00
voltage ;   volt    ;   kilogram-square-meter-per-cubic-second-ampere   ;   1 * x   ;   1000.0
volume  ;   cubic-centimeter    ;   cubic-meter ;   0.000001 * x    ;   0.001
volume  ;   milliliter  ;   cubic-meter ;   0.000001 * x    ;   0.001
volume  ;   teaspoon    ;   cubic-meter ;   0.00000492892159375 * x ;   0.004928922
volume  ;   centiliter  ;   cubic-meter ;   0.00001 * x ;   0.01
volume  ;   tablespoon  ;   cubic-meter ;   0.00001478676478125 * x ;   0.01478676
volume  ;   cubic-inch  ;   cubic-meter ;   0.000016387064 * x  ;   0.01638706
volume  ;   fluid-ounce-imperial    ;   cubic-meter ;   0.0000284130625 * x ;   0.02841306
volume  ;   fluid-ounce ;   cubic-meter ;   0.0000295735295625 * x  ;   0.02957353
volume  ;   deciliter   ;   cubic-meter ;   0.0001 * x  ;   0.1
volume  ;   cup ;   cubic-meter ;   0.0002365882365 * x ;   0.2365882
volume  ;   cup-metric  ;   cubic-meter ;   0.00025 * x ;   0.25
volume  ;   pint    ;   cubic-meter ;   0.000473176473 * x  ;   0.4731765
volume  ;   pint-metric ;   cubic-meter ;   0.0005 * x  ;   0.5
volume  ;   quart   ;   cubic-meter ;   0.000946352946 * x  ;   0.9463529
volume  ;   liter   ;   cubic-meter ;   0.001 * x   ;   1.0
volume  ;   gallon  ;   cubic-meter ;   0.003785411784 * x  ;   3.785412
volume  ;   gallon-imperial ;   cubic-meter ;   0.00454609 * x  ;   4.54609
volume  ;   cubic-foot  ;   cubic-meter ;   0.028316846592 * x  ;   28.31685
volume  ;   bushel  ;   cubic-meter ;   0.03523907016688 * x    ;   35.23907
volume  ;   hectoliter  ;   cubic-meter ;   0.1 * x ;   100.0
volume  ;   barrel  ;   cubic-meter ;   0.158987294928 * x  ;   158.9873
volume  ;   cubic-yard  ;   cubic-meter ;   0.764554857984 * x  ;   764.5549
volume  ;   cubic-meter ;   cubic-meter ;   1 * x   ;   1,000.00
volume  ;   megaliter   ;   cubic-meter ;   1,000 * x   ;   1000000.0
volume  ;   acre-foot   ;   cubic-meter ;   1,233.48183754752 * x   ;   1233482.0
volume  ;   cubic-kilometer ;   cubic-meter ;   1,000,000,000 * x   ;   1.0E12
volume  ;   cubic-mile  ;   cubic-meter ;   4,168,181,825.440579584 * x ;   4.168182E12
year-duration   ;   month   ;   year    ;   0.25/3 * x  ;   83.33333
year-duration   ;   month-person    ;   year    ;   0.25/3 * x  ;   83.33333
year-duration   ;   year    ;   year    ;   1 * x   ;   1,000.00
year-duration   ;   year-person ;   year    ;   1 * x   ;   1000.0
year-duration   ;   decade  ;   year    ;   10 * x  ;   10000.0
year-duration   ;   century ;   year    ;   100 * x ;   100000.0
