mishal / iless

PHP port of Less.js
http://demo-iless.rhcloud.com/
MIT License
47 stars 11 forks source link

Fix unit tests when bcmath is off #45

Closed mishal closed 9 years ago

mishal commented 9 years ago

Fix unit tests when bcmath is off

There are issues:

There were 16 failures:
1) ILess_Test_Issues_031Test::testIssue
The math setup works
Failed asserting that two arrays are equal.
--- Expected
+++ Actual
@@ @@
Array (
    -    'rad' => '0.1591549430918953'
        -    'deg' => '0.0027777777777777'
-    'grad' => '0.0025000000000000'
+    'rad' => '0.15915494309189'
+    'deg' => '0.0027777777777778'
+    'grad' => '0.0025'
     'turn' => '1'
 )
/home/travis/build/mishal/iless/tests/ILess/Test/Issues/031Test.php:49
2) ILess_Test_MathTest::testRound with data set #0 ('1.499999', 0, '1')
Rounding of "1.499999" with precision "0" works
Failed asserting that two strings are equal.
--- Expected
+++ Actual
@@ @@
-'1'
+'1.999999'
/home/travis/build/mishal/iless/tests/ILess/Test/MathTest.php:44
3) ILess_Test_MathTest::testRound with data set #1 ('71.52', 0, '72')
Rounding of "71.52" with precision "0" works
Failed asserting that two strings are equal.
--- Expected
+++ Actual
@@ @@
-'72'
+'72.02'
/home/travis/build/mishal/iless/tests/ILess/Test/MathTest.php:44
4) ILess_Test_MathTest::testRound with data set #2 ('78.47', 0, '78')
Rounding of "78.47" with precision "0" works
Failed asserting that two strings are equal.
--- Expected
+++ Actual
@@ @@
-'78'
+'78.97'
/home/travis/build/mishal/iless/tests/ILess/Test/MathTest.php:44
5) ILess_Test_MathTest::testRound with data set #3 ('71.25', 0, '71')
Rounding of "71.25" with precision "0" works
Failed asserting that two strings are equal.
--- Expected
+++ Actual
@@ @@
-'71'
+'71.75'
/home/travis/build/mishal/iless/tests/ILess/Test/MathTest.php:44
6) ILess_Test_Node_ColorTest::testGetSaturation
Failed asserting that two strings are equal.
--- Expected
+++ Actual
@@ @@
-'88%'
+'88.119047619048%'
/home/travis/build/mishal/iless/tests/ILess/Test/Node/ColorTest.php:104
7) ILess_Test_Node_ColorTest::testGetLightness
Failed asserting that two strings are equal.
--- Expected
+++ Actual
@@ @@
-'59%'
+'59.323529411765%'
/home/travis/build/mishal/iless/tests/ILess/Test/Node/ColorTest.php:114
8) ILess_Test_Node_ColorTest::testGetHue
Failed asserting that two strings are equal.
--- Expected
+++ Actual
@@ @@
-'283'
+'283.54347826087'
/home/travis/build/mishal/iless/tests/ILess/Test/Node/ColorTest.php:124
9) ILess_Test_Parser_ParsingTest::testCompilation with data set #3 ('/home/travis/build/mishal/ile...s.less', '/home/travis/build/mishal/ile...ns.css')
Failed asserting that two strings are equal.
--- Expected
+++ Actual
@@ @@
'body {
-  luma-green: 72%;
-  luma-cyan: 79%;
+  luma-green: 72.02%;
+  luma-cyan: 79.24%;
   hue: 98;
   lightness: 95%;
-  saturation: 88%;
+  saturation: 88.119047619048%;
 }
 '
/home/travis/build/mishal/iless/tests/ILess/Test/Parser/ParsingTest.php:77
10) ILess_Test_Parser_ParsingTest::testCompilation with data set #4 ('/home/travis/build/mishal/ile...l.less', '/home/travis/build/mishal/ile...sl.css')
Failed asserting that two strings are equal.
--- Expected
+++ Actual
@@ @@
'body {
   red: 191.25;
   green: 63.75;
-  blue: 106.2499999999999;
+  blue: 106.25;
   lightness: 50%;
   color: #bf406a;
 }
 '
/home/travis/build/mishal/iless/tests/ILess/Test/Parser/ParsingTest.php:77
11) ILess_Test_Parser_ParsingTest::testCompilation with data set #10 ('/home/travis/build/mishal/ile...s.less', '/home/travis/build/mishal/ile...rs.css')
Failed asserting that two strings are equal.
--- Expected
+++ Actual
@@ @@
    #alpha #hsla {
-  color: rgba(61, 45, 41, 0.6);
+  color: rgba(61.7, 45.04, 41.3, 0.6);
 }
 #overflow .a {
   color: #000000;
 }
 #overflow .b {
   color: #ffffff;
 }
 #overflow .c {
   color: #ffffff;
 }
 #overflow .d {
   color: #00ff00;
 }
 #grey {
   color: #c8c8c8;
 }
 #333333 {
   color: #333333;
 }
 #808080 {
   color: #808080;
 }
 #00ff00 {
   color: #00ff00;
 }
 .lightenblue {
    color: #3333ff;
}
 .darkenblue {
    color: #0000cc;
}
 .unknowncolors {
    color: blue2;
    border: 2px solid superred;
 }
 .transparent {
    color: transparent;
    background-color: rgba(0, 0, 0, 0);
 }
 #alpha #fromvar {
   opacity: 0.7;
 }
 #alpha #short {
   opacity: 1;
 }
 #alpha #long {
   opacity: 1;
 }
 #alpha #rgba {
   opacity: 0.2;
 }
 #alpha #hsl {
   opacity: 1;
 }
 #percentage {
   color: 255;
   border-color: rgba(255, 0, 0, 0.5);
 }
 '
/home/travis/build/mishal/iless/tests/ILess/Test/Parser/ParsingTest.php:77
12) ILess_Test_Parser_ParsingTest::testCompilation with data set #24 ('/home/travis/build/mishal/ile...s.less', '/home/travis/build/mishal/ile...ns.css')
Failed asserting that two arrays are equal.
--- Expected
+++ Actual
@@ @@
 Array (
-    21 => '  luma-red: 21.76%;'
-    22 => '  luma-green: 72.02%;'
-    23 => '  luma-blue: 7.72%;'
-    24 => '  luma-yellow: 93.28%;'
-    25 => '  luma-cyan: 79.24%;'
-    26 => '  luma-white-alpha: 50.5%;'
-    63 => '  rounded: 11.166666666667;'
-    64 => '  rounded-two: 10.671666666667;'
-    65 => '  roundedpx: 3.8333333333333px;'
-    66 => '  roundedpx-three: 3.3338333333333px;'
-    67 => '  rounded-percentage: 10.7%;'
-    69 => '  floor: 12.9px;'
-    71 => '  pi: 3.1415926535898;'
-    74 => '  tan: 0.9004040442979;'
-    75 => '  sin: 0.17364817766694;'
-    76 => '  cos: 0.84385395873249;'
-    77 => '  atan: 0.099999999999999rad;'
-    78 => '  atan: 34deg;'
-    79 => '  atan: 44.999999999998deg;'
-    97 => '  fade-in: rgba(255, 0, 0, 0.95);'
-    99 => '  hsva: rgba(77, 40.6625, 38.75, 0.2);'
 )
/home/travis/build/mishal/iless/tests/ILess/Test/Parser/ParsingTest.php:75
13) ILess_Test_Parser_ParsingTest::testCompilation with data set #46 ('/home/travis/build/mishal/ile...s.less', '/home/travis/build/mishal/ile...ns.css')
Failed asserting that two strings are equal.
--- Expected
+++ Actual
@@ @@
   border-radius-keep: 5px;
-  border-radius-parts: 1.1428571428571428px;
+  border-radius-parts: 1.1428571428571px;
   border-radius-all: 5px;
 }
 .negative {
   neg-var: -1;
   neg-var-paren: -1;
 }
 .nested-parens {
   width: 71;
   height: 6;
 }
 .mixed-units {
   margin: 2px 4em 1 5pc;
   padding: 6px 1em 2px 2;
 }
 '
/home/travis/build/mishal/iless/tests/ILess/Test/Parser/ParsingTest.php:77
14) ILess_Test_Parser_ParsingTest::testCompilation with data set #52 ('/home/travis/build/mishal/ile...s.less', '/home/travis/build/mishal/ile...es.css')
Failed asserting that two strings are equal.
--- Expected
+++ Actual
@@ @@
conversion-metric-b: 3cm;
-  conversion-imperial: 2.999999999999557in;
+  conversion-imperial: 3in;
   custom-unit: 420octocats;
   custom-unit-cancelling: 18dogs;
   mix-units: 2px;
   invalid-units: 1px;
 }
 '
/home/travis/build/mishal/iless/tests/ILess/Test/Parser/ParsingTest.php:77
15) ILess_Test_Parser_ParsingTest::testCompilation with data set #55 ('/home/travis/build/mishal/ile...p.less', '/home/travis/build/mishal/ile...ap.css')
Failed asserting that two arrays are equal.
--- Expected
+++ Actual
@@ @@
 Array (
-    354 => '  margin-left: 2.1276595744681%;'
-    355 => '  *margin-left: 2.0744680851064%;'
-    361 => '  margin-left: 2.1276595744681%;'
-    365 => '  *width: 99.946808510638%;'
-    368 => '  width: 91.489361702128%;'
-    369 => '  *width: 91.436170212766%;'
-    372 => '  width: 82.978723404256%;'
-    373 => '  *width: 82.925531914894%;'
-    376 => '  width: 74.468085106384%;'
-    377 => '  *width: 74.414893617022%;'
-    380 => '  width: 65.957446808511%;'
-    381 => '  *width: 65.904255319149%;'
-    384 => '  width: 57.446808510639%;'
-    385 => '  *width: 57.393617021277%;'
-    388 => '  width: 48.936170212767%;'
-    389 => '  *width: 48.882978723405%;'
-    392 => '  width: 40.425531914893%;'
-    393 => '  *width: 40.372340425531%;'
-    396 => '  width: 31.914893617021%;'
-    397 => '  *width: 31.861702127659%;'
-    400 => '  width: 23.404255319149%;'
-    401 => '  *width: 23.351063829787%;'
-    404 => '  width: 14.893617021277%;'
-    405 => '  *width: 14.840425531915%;'
-    408 => '  width: 6.3829787234043%;'
-    409 => '  *width: 6.3297872340426%;'
-    412 => '  margin-left: 104.25531914894%;'
-    413 => '  *margin-left: 104.14893617021%;'
-    416 => '  margin-left: 102.12765957447%;'
-    417 => '  *margin-left: 102.02127659575%;'
-    420 => '  margin-left: 95.744680851064%;'
-    421 => '  *margin-left: 95.63829787234%;'
-    424 => '  margin-left: 93.617021276596%;'
-    425 => '  *margin-left: 93.510638297872%;'
-    428 => '  margin-left: 87.234042553192%;'
-    429 => '  *margin-left: 87.127659574468%;'
-    432 => '  margin-left: 85.106382978724%;'
-    433 => '  *margin-left: 85%;'
-    436 => '  margin-left: 78.72340425532%;'
-    437 => '  *margin-left: 78.617021276596%;'
-    440 => '  margin-left: 76.595744680852%;'
-    441 => '  *margin-left: 76.489361702128%;'
-    444 => '  margin-left: 70.212765957447%;'
-    445 => '  *margin-left: 70.106382978723%;'
-    448 => '  margin-left: 68.085106382979%;'
-    449 => '  *margin-left: 67.978723404255%;'
-    452 => '  margin-left: 61.702127659575%;'
-    453 => '  *margin-left: 61.595744680851%;'
-    456 => '  margin-left: 59.574468085107%;'
-    457 => '  *margin-left: 59.468085106383%;'
-    460 => '  margin-left: 53.191489361703%;'
-    461 => '  *margin-left: 53.085106382979%;'
-    464 => '  margin-left: 51.063829787235%;'
-    465 => '  *margin-left: 50.957446808511%;'
-    468 => '  margin-left: 44.680851063829%;'
-    469 => '  *margin-left: 44.574468085105%;'
-    472 => '  margin-left: 42.553191489361%;'
-    473 => '  *margin-left: 42.446808510637%;'
-    476 => '  margin-left: 36.170212765957%;'
-    477 => '  *margin-left: 36.063829787233%;'
-    480 => '  margin-left: 34.042553191489%;'
-    481 => '  *margin-left: 33.936170212765%;'
-    484 => '  margin-left: 27.659574468085%;'
-    485 => '  *margin-left: 27.553191489361%;'
-    488 => '  margin-left: 25.531914893617%;'
-    489 => '  *margin-left: 25.425531914893%;'
-    492 => '  margin-left: 19.148936170213%;'
-    493 => '  *margin-left: 19.042553191489%;'
-    496 => '  margin-left: 17.021276595745%;'
-    497 => '  *margin-left: 16.914893617021%;'
-    500 => '  margin-left: 10.63829787234%;'
-    501 => '  *margin-left: 10.531914893617%;'
-    504 => '  margin-left: 8.5106382978724%;'
-    505 => '  *margin-left: 8.404255319149%;'
-    2827 => '  border-color: #0044cc #0044...02b80;'
-    2841 => '  *background-color: #003cb3;'
-    3000 => '  background-color: #090909 \9;'
 )
/home/travis/build/mishal/iless/tests/ILess/Test/Parser/ParsingTest.php:75
16) ILess_Test_Parser_ParsingTest::testCompilation with data set #56 ('/home/travis/build/mishal/ile...p.less', '/home/travis/build/mishal/ile...ap.css', array(true))
Failed asserting that two arrays are equal.
--- Expected
+++ Actual
@@ @@
Array (
    -    325 => '  margin-top: 20.000000006px;'
        -    326 => '  margin-bottom: 20.000000006px;'
-    391 => '  margin-top: 20.000000006px;'
-    392 => '  margin-bottom: 10.000000003px;'
-    414 => '  margin-top: 10.000000003px;'
-    415 => '  margin-bottom: 10.000000003px;'
-    433 => '  font-size: 36.4px;'
-    437 => '  font-size: 30.1px;'
-    456 => '  margin: 0 0 10.000000003px;'
-    459 => '  margin-bottom: 20.000000006px;'
-    460 => '  font-size: 16.1px;'
-    553 => '  padding-bottom: 9.000000003px;'
-    554 => '  margin: 40.000000012px 0 20...006px;'
-    560 => '  margin-bottom: 10.000000003px;'
-    586 => '  margin-bottom: 20.000000006px;'
-    622 => '  padding: 10.000000003px 20....006px;'
-    623 => '  margin: 0 0 20.000000006px;'
-    674 => '  margin-bottom: 20.000000006px;'
-    702 => '  padding: 9.500000003px;'
-    703 => '  margin: 0 0 10.000000003px;'
-    769 => '  width: 91.666666666667%;'
-    772 => '  width: 83.333333333333%;'
-    778 => '  width: 66.666666666667%;'
-    781 => '  width: 58.333333333333%;'
-    787 => '  width: 41.666666666667%;'
-    790 => '  width: 33.333333333333%;'
-    796 => '  width: 16.666666666667%;'
-    799 => '  width: 8.3333333333333%;'
-    805 => '  right: 91.666666666667%;'
-    808 => '  right: 83.333333333333%;'
-    814 => '  right: 66.666666666667%;'
-    817 => '  right: 58.333333333333%;'
-    823 => '  right: 41.666666666667%;'
-    826 => '  right: 33.333333333333%;'
-    832 => '  right: 16.666666666667%;'
-    835 => '  right: 8.3333333333333%;'
-    844 => '  left: 91.666666666667%;'
-    847 => '  left: 83.333333333333%;'
-    853 => '  left: 66.666666666667%;'
-    856 => '  left: 58.333333333333%;'
-    862 => '  left: 41.666666666667%;'
-    865 => '  left: 33.333333333333%;'
-    871 => '  left: 16.666666666667%;'
-    874 => '  left: 8.3333333333333%;'
-    883 => '  margin-left: 91.666666666667%;'
-    886 => '  margin-left: 83.333333333333%;'
-    892 => '  margin-left: 66.666666666667%;'
-    895 => '  margin-left: 58.333333333333%;'
-    901 => '  margin-left: 41.666666666667%;'
-    904 => '  margin-left: 33.333333333333%;'
-    910 => '  margin-left: 16.666666666667%;'
-    913 => '  margin-left: 8.3333333333333%;'
-    926 => '    width: 91.666666666667%;'
-    929 => '    width: 83.333333333333%;'
-    935 => '    width: 66.666666666667%;'
-    938 => '    width: 58.333333333333%;'
-    944 => '    width: 41.666666666667%;'
-    947 => '    width: 33.333333333333%;'
-    953 => '    width: 16.666666666667%;'
-    956 => '    width: 8.3333333333333%;'
-    962 => '    right: 91.666666666667%;'
-    965 => '    right: 83.333333333333%;'
-    971 => '    right: 66.666666666667%;'
-    974 => '    right: 58.333333333333%;'
-    980 => '    right: 41.666666666667%;'
-    983 => '    right: 33.333333333333%;'
-    989 => '    right: 16.666666666667%;'
-    992 => '    right: 8.3333333333333%;'
-    1001 => '    left: 91.666666666667%;'
-    1004 => '    left: 83.333333333333%;'
-    1010 => '    left: 66.666666666667%;'
-    1013 => '    left: 58.333333333333%;'
-    1019 => '    left: 41.666666666667%;'
-    1022 => '    left: 33.333333333333%;'
-    1028 => '    left: 16.666666666667%;'
-    1031 => '    left: 8.3333333333333%;'
-    1040 => '    margin-left: 91.666666666667%;'
-    1043 => '    margin-left: 83.333333333333%;'
-    1049 => '    margin-left: 66.666666666667%;'
-    1052 => '    margin-left: 58.333333333333%;'
-    1058 => '    margin-left: 41.666666666667%;'
-    1061 => '    margin-left: 33.333333333333%;'
-    1067 => '    margin-left: 16.666666666667%;'
-    1070 => '    margin-left: 8.3333333333333%;'
-    1084 => '    width: 91.666666666667%;'
-    1087 => '    width: 83.333333333333%;'
-    1093 => '    width: 66.666666666667%;'
-    1096 => '    width: 58.333333333333%;'
-    1102 => '    width: 41.666666666667%;'
-    1105 => '    width: 33.333333333333%;'
-    1111 => '    width: 16.666666666667%;'
-    1114 => '    width: 8.3333333333333%;'
-    1120 => '    right: 91.666666666667%;'
-    1123 => '    right: 83.333333333333%;'
-    1129 => '    right: 66.666666666667%;'
-    1132 => '    right: 58.333333333333%;'
-    1138 => '    right: 41.666666666667%;'
-    1141 => '    right: 33.333333333333%;'
-    1147 => '    right: 16.666666666667%;'
-    1150 => '    right: 8.3333333333333%;'
-    1159 => '    left: 91.666666666667%;'
-    1162 => '    left: 83.333333333333%;'
-    1168 => '    left: 66.666666666667%;'
-    1171 => '    left: 58.333333333333%;'
-    1177 => '    left: 41.666666666667%;'
-    1180 => '    left: 33.333333333333%;'
-    1186 => '    left: 16.666666666667%;'
-    1189 => '    left: 8.3333333333333%;'
-    1198 => '    margin-left: 91.666666666667%;'
-    1201 => '    margin-left: 83.333333333333%;'
-    1207 => '    margin-left: 66.666666666667%;'
-    1210 => '    margin-left: 58.333333333333%;'
-    1216 => '    margin-left: 41.666666666667%;'
-    1219 => '    margin-left: 33.333333333333%;'
-    1225 => '    margin-left: 16.666666666667%;'
-    1228 => '    margin-left: 8.3333333333333%;'
-    1242 => '    width: 91.666666666667%;'
-    1245 => '    width: 83.333333333333%;'
-    1251 => '    width: 66.666666666667%;'
-    1254 => '    width: 58.333333333333%;'
-    1260 => '    width: 41.666666666667%;'
-    1263 => '    width: 33.333333333333%;'
-    1269 => '    width: 16.666666666667%;'
-    1272 => '    width: 8.3333333333333%;'
-    1278 => '    right: 91.666666666667%;'
-    1281 => '    right: 83.333333333333%;'
-    1287 => '    right: 66.666666666667%;'
-    1290 => '    right: 58.333333333333%;'
-    1296 => '    right: 41.666666666667%;'
-    1299 => '    right: 33.333333333333%;'
-    1305 => '    right: 16.666666666667%;'
-    1308 => '    right: 8.3333333333333%;'
-    1317 => '    left: 91.666666666667%;'
-    1320 => '    left: 83.333333333333%;'
-    1326 => '    left: 66.666666666667%;'
-    1329 => '    left: 58.333333333333%;'
-    1335 => '    left: 41.666666666667%;'
-    1338 => '    left: 33.333333333333%;'
-    1344 => '    left: 16.666666666667%;'
-    1347 => '    left: 8.3333333333333%;'
-    1356 => '    margin-left: 91.666666666667%;'
-    1359 => '    margin-left: 83.333333333333%;'
-    1365 => '    margin-left: 66.666666666667%;'
-    1368 => '    margin-left: 58.333333333333%;'
-    1374 => '    margin-left: 41.666666666667%;'
-    1377 => '    margin-left: 33.333333333333%;'
-    1383 => '    margin-left: 16.666666666667%;'
-    1386 => '    margin-left: 8.3333333333333%;'
-    1401 => '  margin-bottom: 20.000000006px;'
-    1577 => '    margin-bottom: 15.0000000045px;'
-    1631 => '  margin-bottom: 20.000000006px;'
-    1683 => '  height: 34.000000006px;'
-    1727 => '  line-height: 34.000000006px;'
-    1735 => '  min-height: 20.000000006px;'
-    1819 => '  padding-right: 42.5000000075px;'
-    1823 => '  top: 25.000000006px;'
-    1826 => '  width: 34.000000006px;'
-    1827 => '  height: 34.000000006px;'
-    1828 => '  line-height: 34.000000006px;'
-    1961 => '  min-height: 27.000000006px;'
-    3016 => '  margin: 9.000000003px 0;'
-    3483 => '  margin: 9.000000003px 0;'
-    3641 => '  margin-bottom: 20.000000006px;'
-    3737 => '  padding: 14.999999997px 15px;'
-    3739 => '  line-height: 20.000000006px;'
-    3740 => '  height: 20.000000006px;'
-    3782 => '  margin: 7.4999999985px -15px;'
-    3787 => '  line-height: 20.000000006px;'
-    3804 => '    line-height: 20.000000006px;'
-    3820 => '    padding-top: 14.999999997px;'
-    3821 => '    padding-bottom: 14.999999997px;'
-    3843 => '  margin-top: 7.999999997px;'
-    3844 => '  margin-bottom: 7.999999997px;'
-    3908 => '  margin-top: 7.999999997px;'
-    3909 => '  margin-bottom: 7.999999997px;'
-    3920 => '  margin-top: 14.999999997px;'
-    3921 => '  margin-bottom: 14.999999997px;'
-    4018 => '  border-color: #090909;'
-    4043 => '  background-color: #090909;'
-    4068 => '  background-color: #090909;'
-    4073 => '    border-color: #090909;'
-    4076 => '    background-color: #090909;'
-    4090 => '    background-color: #090909;'
-    4107 => '  margin-bottom: 20.000000006px;'
-    4126 => '  margin: 20.000000006px 0;'
-    4218 => '  margin: 20.000000006px 0;'
-    4398 => '  margin-bottom: 20.000000006px;'
-    4425 => '  margin-bottom: 20.000000006px;'
-    4514 => '  height: 20.000000006px;'
-    4515 => '  margin-bottom: 20.000000006px;'
-    4526 => '  line-height: 20.000000006px;'
-    4753 => '  margin-bottom: 20.000000006px;'
-    4929 => '  margin-bottom: 20.000000006px;'
-    5478 => '  filter: progid:DXImageTrans...pe=1);'
-    5486 => '  filter: progid:DXImageTrans...pe=1);'
 )
/home/travis/build/mishal/iless/tests/ILess/Test/Parser/ParsingTest.php:75
FAILURES!
Tests: 507, Assertions: 690, Failures: 16.
mishal commented 9 years ago

bcmath is not required in 2.0, closing