-
Notifications
You must be signed in to change notification settings - Fork 10
/
Copy pathicons.test.ts
87 lines (79 loc) · 2.77 KB
/
icons.test.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
import { getIconForFile, getIconForFolder, getIconForOpenFolder } from '../src/Index';
describe('Icons test', () => {
describe('files', () => {
it('should return icons by special filenames', () => {
expect([
getIconForFile('manifest.bak'),
getIconForFile('.nvmrc'),
getIconForFile('phpunit'),
getIconForFile('phpunit.xml.dist'),
getIconForFile('rollup.config.js'),
getIconForFile('tsconfig.json'),
getIconForFile('tsconfig.spec.json'),
getIconForFile('webpack.base.conf.js'),
getIconForFile('.eslintrc.yaml')
]).toEqual([
'file_type_manifest_bak.svg',
'file_type_node.svg',
'file_type_phpunit.svg',
'file_type_phpunit.svg',
'file_type_rollup.svg',
'file_type_tsconfig.svg',
'file_type_tsconfig.svg',
'file_type_webpack.svg',
'file_type_eslint.svg'
]);
});
it('should return icons by special filenames, but defined by vscode langs', () => {
expect([
getIconForFile('Jenkinsfile'),
getIconForFile('guardfile')
]).toEqual([
'file_type_groovy.svg',
'file_type_ruby.svg'
])
});
it('should return icons by extensions', () => {
expect([
getIconForFile('All.test.ts'),
getIconForFile('All.test.tsx'),
getIconForFile('package.nls.de.json'),
getIconForFile('content.js.map')
]).toEqual([
'file_type_testts.svg',
'file_type_testts.svg',
'file_type_light_json.svg',
'file_type_light_jsmap.svg'
]);
});
it('should return icons by languages', () => {
expect([getIconForFile('content.js'), getIconForFile('Index.script.ts'), getIconForFile('__main__.py')]).toEqual([
'file_type_light_js.svg',
'file_type_typescript.svg',
'file_type_python.svg'
]);
});
it('should return default icons for unknown', () => {
expect([getIconForFile('undefined')]).toEqual(['default_file.svg']);
});
});
describe('folders', () => {
it('should return icons for folders', () => {
expect([getIconForFolder('images'), getIconForFolder('src'), getIconForFolder('locale')]).toEqual([
'folder_type_images.svg',
'folder_type_src.svg',
'folder_type_locale.svg'
]);
});
it('should return icons for opened folders', () => {
expect([getIconForOpenFolder('images'), getIconForOpenFolder('src'), getIconForOpenFolder('locale')]).toEqual([
'folder_type_images_opened.svg',
'folder_type_src_opened.svg',
'folder_type_locale_opened.svg'
]);
});
it('should return default icons for unknown', () => {
expect([getIconForOpenFolder('undefined')]).toEqual(['default_folder_opened.svg']);
});
});
});