tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

easing-tests.js (2833B)


      1 'use strict';
      2 
      3 const gEasingTests = [
      4  {
      5    desc: 'step-start function',
      6    easing: 'step-start',
      7    easingFunction: stepStart(1),
      8    serialization: 'steps(1, start)'
      9  },
     10  {
     11    desc: 'steps(1, start) function',
     12    easing: 'steps(1, start)',
     13    easingFunction: stepStart(1)
     14  },
     15  {
     16    desc: 'steps(2, start) function',
     17    easing: 'steps(2, start)',
     18    easingFunction: stepStart(2)
     19  },
     20  {
     21    desc: 'step-end function',
     22    easing: 'step-end',
     23    easingFunction: stepEnd(1),
     24    serialization: 'steps(1)'
     25  },
     26  {
     27    desc: 'steps(1) function',
     28    easing: 'steps(1)',
     29    easingFunction: stepEnd(1)
     30  },
     31  {
     32    desc: 'steps(1, end) function',
     33    easing: 'steps(1, end)',
     34    easingFunction: stepEnd(1),
     35    serialization: 'steps(1)'
     36  },
     37  {
     38    desc: 'steps(2, end) function',
     39    easing: 'steps(2, end)',
     40    easingFunction: stepEnd(2),
     41    serialization: 'steps(2)'
     42  },
     43  {
     44    desc: 'linear function',
     45    easing: 'linear', // cubic-bezier(0, 0, 1.0, 1.0)
     46    easingFunction: cubicBezier(0, 0, 1.0, 1.0)
     47  },
     48  {
     49    desc: 'ease function',
     50    easing: 'ease', // cubic-bezier(0.25, 0.1, 0.25, 1.0)
     51    easingFunction: cubicBezier(0.25, 0.1, 0.25, 1.0)
     52  },
     53  {
     54    desc: 'ease-in function',
     55    easing: 'ease-in', // cubic-bezier(0.42, 0, 1.0, 1.0)
     56    easingFunction: cubicBezier(0.42, 0, 1.0, 1.0)
     57  },
     58  {
     59    desc: 'ease-in-out function',
     60    easing: 'ease-in-out', // cubic-bezier(0.42, 0, 0.58, 1.0)
     61    easingFunction: cubicBezier(0.42, 0, 0.58, 1.0)
     62  },
     63  {
     64    desc: 'ease-out function',
     65    easing: 'ease-out', // cubic-bezier(0, 0, 0.58, 1.0)
     66    easingFunction: cubicBezier(0, 0, 0.58, 1.0)
     67  },
     68  {
     69    desc: 'easing function which produces values greater than 1',
     70    easing: 'cubic-bezier(0, 1.5, 1, 1.5)',
     71    easingFunction: cubicBezier(0, 1.5, 1, 1.5)
     72  },
     73  {
     74    desc: 'easing function which produces values less than 1',
     75    easing: 'cubic-bezier(0, -0.5, 1, -0.5)',
     76    easingFunction: cubicBezier(0, -0.5, 1, -0.5)
     77  }
     78 ];
     79 
     80 const gEasingParsingTests = [
     81  ['linear', 'linear'],
     82  ['ease-in-out', 'ease-in-out'],
     83  ['Ease\\2d in-out', 'ease-in-out'],
     84  ['ease /**/', 'ease'],
     85 ];
     86 
     87 const gInvalidEasings = [
     88  '',
     89  '7',
     90  'test',
     91  'initial',
     92  'inherit',
     93  'unset',
     94  'unrecognized',
     95  'var(--x)',
     96  'ease-in-out, ease-out',
     97  'cubic-bezier(1.1, 0, 1, 1)',
     98  'cubic-bezier(0, 0, 1.1, 1)',
     99  'cubic-bezier(-0.1, 0, 1, 1)',
    100  'cubic-bezier(0, 0, -0.1, 1)',
    101  'cubic-bezier(0.1, 0, 4, 0.4)',
    102  'steps(-1, start)',
    103  'steps(0.1, start)',
    104  'steps(3, nowhere)',
    105  'steps(-3, end)',
    106  'function (a){return a}',
    107  'function (x){return x}',
    108  'function(x, y){return 0.3}',
    109 ];
    110 
    111 // Easings that should serialize to the same string
    112 const gRoundtripEasings = [
    113  'ease',
    114  'linear',
    115  'ease-in',
    116  'ease-out',
    117  'ease-in-out',
    118  'cubic-bezier(0.1, 5, 0.23, 0)',
    119  'steps(3, start)',
    120  'steps(3)',
    121 ];