UNPKG

1.89 kBJavaScriptView Raw
1var test = require('tape')
2var missingSupport = require('../lib/missing-support')
3var hasKeys = require('./has-keys')
4
5test('provides list of selected browsers', function (t) {
6 var data
7 data = missingSupport(['ie >= 8'])
8 .browsers.sort(function (a, b) {
9 return Number(a[1]) - Number(b[1])
10 })
11 t.deepEqual(data, [
12 [
13 'ie',
14 '8'
15 ],
16 [
17 'ie',
18 '9'
19 ],
20 [
21 'ie',
22 '10'
23 ],
24 [
25 'ie',
26 '11'
27 ]
28 ])
29
30 t.end()
31})
32
33test('for browser request ie >= 7, safari >= 6, opera >= 10.1', function (t) {
34 var data = missingSupport([
35 'ie >= 7',
36 'safari >= 6',
37 'opera >= 10.1'
38 ]).features
39
40 var bgimgopts = data['background-img-opts']
41 hasKeys(t, bgimgopts, ['missing', 'partial', 'title', 'missingData', 'partialData', 'caniuseData'])
42
43 var missing = bgimgopts.missingData
44 var partial = bgimgopts.partialData
45 hasKeys(t, missing, ['ie'])
46 hasKeys(t, missing.ie, ['7', '8'])
47 hasKeys(t, partial, ['safari', 'opera'])
48 hasKeys(t, partial.safari, ['6', '6.1'])
49 hasKeys(t, partial.opera, ['10.0-10.1'])
50 t.end()
51})
52
53test('partialData only yields features partially supported by selected browser', function (t) {
54 var data, f, featureData, p
55 data = missingSupport(['ie 8']).features
56 var partial = []
57 for (p in data) {
58 if (data[p].partialData) {
59 partial.push(data[p])
60 }
61 }
62 for (f in partial) {
63 featureData = partial[f]
64 hasKeys(t, featureData.partialData, ['ie'])
65 }
66 t.end()
67})
68
69test('missingData only yields features not supported by selected browser', function (t) {
70 var data, f, featureData, m
71 data = missingSupport(['ie 8']).features
72 var missing = []
73 for (m in data) {
74 if (data[m].missingData) {
75 missing.push(data[m])
76 }
77 }
78 for (f in missing) {
79 featureData = missing[f]
80 hasKeys(t, featureData.missingData, ['ie'])
81 }
82 t.end()
83})