|
1 | 1 | var parseCssUrls = require('../index');
|
| 2 | +var should = require('should'); |
2 | 3 |
|
3 |
| -var should = require('should') |
4 |
| - describe('Parse css urls', function(){ |
5 |
| - it('should return array of entries from url(...), @import url(...) and @import ...', function(){ |
6 |
| - var text = '\ |
7 |
| - @import url("a.css"); \ |
8 |
| - @import url(\'b.css\') tv; \ |
9 |
| - @import url(c.css); \ |
10 |
| - @import "d.css" screen; \ |
11 |
| - @import \'e.css\'; \ |
12 |
| - @import f.css; \ |
13 |
| - .image { \ |
14 |
| - background-image: url ("g.css"); \ |
15 |
| - background-image: url (\'h.css\'); \ |
16 |
| - background-image: url (i.css); \ |
17 |
| - } \ |
18 |
| - '; |
| 4 | +describe('Parse css urls', function(){ |
| 5 | + it('should return array of entries from url(...), @import url(...) and @import ...', function(){ |
| 6 | + var text = '\ |
| 7 | + @import url("a.css"); \ |
| 8 | + @import url(\'b.css\') tv; \ |
| 9 | + @import url(c.css); \ |
| 10 | + @import "d.css" screen; \ |
| 11 | + @import \'e.css\'; \ |
| 12 | + @import f.css; \ |
| 13 | + .image { \ |
| 14 | + background-image: url ("g.css"); \ |
| 15 | + background-image: url (\'h.css\'); \ |
| 16 | + background-image: url (i.css); \ |
| 17 | + } \ |
| 18 | + '; |
19 | 19 |
|
20 |
| - var urls = parseCssUrls(text); |
21 |
| - urls.should.be.instanceof(Array).and.have.lengthOf(9); |
22 |
| - urls.should.containEql('a.css'); |
23 |
| - urls.should.containEql('b.css'); |
24 |
| - urls.should.containEql('c.css'); |
25 |
| - urls.should.containEql('d.css'); |
26 |
| - urls.should.containEql('e.css'); |
27 |
| - urls.should.containEql('f.css'); |
28 |
| - urls.should.containEql('g.css'); |
29 |
| - urls.should.containEql('h.css'); |
30 |
| - urls.should.containEql('i.css'); |
31 |
| - }); |
| 20 | + var urls = parseCssUrls(text); |
| 21 | + urls.should.be.instanceof(Array).and.have.lengthOf(9); |
| 22 | + urls.should.containEql('a.css'); |
| 23 | + urls.should.containEql('b.css'); |
| 24 | + urls.should.containEql('c.css'); |
| 25 | + urls.should.containEql('d.css'); |
| 26 | + urls.should.containEql('e.css'); |
| 27 | + urls.should.containEql('f.css'); |
| 28 | + urls.should.containEql('g.css'); |
| 29 | + urls.should.containEql('h.css'); |
| 30 | + urls.should.containEql('i.css'); |
| 31 | + }); |
32 | 32 |
|
33 |
| - it('should exclude duplicated urls', function(){ |
34 |
| - var text = '\ |
35 |
| - @import url("a.css"); \ |
36 |
| - @import a.css; \ |
37 |
| - .image { background: url("a.css"); } \ |
38 |
| - '; |
| 33 | + it('should exclude duplicated urls', function(){ |
| 34 | + var text = '\ |
| 35 | + @import url("a.css"); \ |
| 36 | + @import a.css; \ |
| 37 | + .image { background: url("a.css"); } \ |
| 38 | + '; |
39 | 39 |
|
40 |
| - var urls = parseCssUrls(text); |
41 |
| - urls.should.be.instanceof(Array).and.have.lengthOf(1); |
42 |
| - urls.should.containEql('a.css'); |
43 |
| - }); |
| 40 | + var urls = parseCssUrls(text); |
| 41 | + urls.should.be.instanceof(Array).and.have.lengthOf(1); |
| 42 | + urls.should.containEql('a.css'); |
| 43 | + }); |
44 | 44 |
|
45 |
| - it('should ignore base64 encoded urls', function(){ |
46 |
| - var text = '\ |
47 |
| - div.image { \ |
48 |
| - background-image: url(\'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAACXklEQVQ4T82TX0hTYRjGZ8Oryp2j5f5l/iHKdVOjZabzSm1MnNuB0sSI1BiNLqoLt93UVTejSJ1L19of0Qs1aNG6CELmhcacZRmZkIUWhUZBF92EFc/pe7/IdEbXffDy8j7P7zy8nPMdheK/Obn7Tur1Vl9/kaMnWSIFkrubQklDczS5tyXGO82kk6+z+gYFY1vhuuXzzJ7hgqYhuahxQN7VMiwbWuOyoT0hF564yzvNpJNPXF6VN742QJlb5X2kl8LYKQVR0hhFyfEBHHLFcTE6zTvNpJNPHPEsQPk7JFusdE+uDdhmC+NSdAp0qNO8NoB49nD2nwCzJ6WTbqLA0Yfio2FopQjGnrzHnfFFPHy+DK0jguJjYe4TJzI+I6AjpbOHsMPeC40tiCMX4ph78xnG9hG8/fAFNedvQ9MQ5D5xorkjI6CiI6VlgL4hgC013egamcbQ6EsoyjuRmFhAJ5tJJ584kfHrN2CC2tYHbb0fuRY/nr3+iHNdY1DbbsAbnMDswieIlm7uaxi3MYCtpK7vhar6Ciqdg/i68h3pF0uYnF3C1NwyVr79QIVzgPlXQdxfA/Lrr0N5+DIi92bwIL2I7VY/SpvDyK/rwfjMO0QST7lP3MZ3YHY/zmfJQrUPDvcIytpiEGqvQV3n5738dD/Tb3H/V4CH7sHqZ8xSmVz3NVJM1th65c3VXbJgCcg6R0jW2kO8qyw9XCdfI/XLQtnZURawafU2KnMKanP2n0qpDrpeqQ4453mZnPOC6Qzvqxrztxpb00qx0Jr5I2cxQcuqlNWef5SBeTpWxCt+AlBhYa97xG2bAAAAAElFTkSuQmCC\'); \ |
49 |
| - } \ |
50 |
| - '; |
| 45 | + it('should ignore base64 encoded urls', function(){ |
| 46 | + var text = '\ |
| 47 | + div.image { \ |
| 48 | + background-image: url(\'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAEFkb2JlIEltYWdlUmVhZHlxyWU8AAACXklEQVQ4T82TX0hTYRjGZ8Oryp2j5f5l/iHKdVOjZabzSm1MnNuB0sSI1BiNLqoLt93UVTejSJ1L19of0Qs1aNG6CELmhcacZRmZkIUWhUZBF92EFc/pe7/IdEbXffDy8j7P7zy8nPMdheK/Obn7Tur1Vl9/kaMnWSIFkrubQklDczS5tyXGO82kk6+z+gYFY1vhuuXzzJ7hgqYhuahxQN7VMiwbWuOyoT0hF564yzvNpJNPXF6VN742QJlb5X2kl8LYKQVR0hhFyfEBHHLFcTE6zTvNpJNPHPEsQPk7JFusdE+uDdhmC+NSdAp0qNO8NoB49nD2nwCzJ6WTbqLA0Yfio2FopQjGnrzHnfFFPHy+DK0jguJjYe4TJzI+I6AjpbOHsMPeC40tiCMX4ph78xnG9hG8/fAFNedvQ9MQ5D5xorkjI6CiI6VlgL4hgC013egamcbQ6EsoyjuRmFhAJ5tJJ584kfHrN2CC2tYHbb0fuRY/nr3+iHNdY1DbbsAbnMDswieIlm7uaxi3MYCtpK7vhar6Ciqdg/i68h3pF0uYnF3C1NwyVr79QIVzgPlXQdxfA/Lrr0N5+DIi92bwIL2I7VY/SpvDyK/rwfjMO0QST7lP3MZ3YHY/zmfJQrUPDvcIytpiEGqvQV3n5738dD/Tb3H/V4CH7sHqZ8xSmVz3NVJM1th65c3VXbJgCcg6R0jW2kO8qyw9XCdfI/XLQtnZURawafU2KnMKanP2n0qpDrpeqQ4453mZnPOC6Qzvqxrztxpb00qx0Jr5I2cxQcuqlNWef5SBeTpWxCt+AlBhYa97xG2bAAAAAElFTkSuQmCC\'); \ |
| 49 | + } \ |
| 50 | + '; |
51 | 51 |
|
52 |
| - var urls = parseCssUrls(text); |
53 |
| - urls.should.be.instanceof(Array); |
54 |
| - urls.should.be.empty; |
55 |
| - }); |
| 52 | + var urls = parseCssUrls(text); |
| 53 | + urls.should.be.instanceof(Array); |
| 54 | + urls.should.have.length(0); |
| 55 | + }); |
56 | 56 |
|
57 |
| - it('should ignore empty urls', function(){ |
58 |
| - var text = 'div.image { background-image: url(""); } '; |
| 57 | + it('should ignore empty urls', function(){ |
| 58 | + var text = 'div.image { background-image: url(""); } '; |
59 | 59 |
|
60 |
| - var urls = parseCssUrls(text); |
61 |
| - urls.should.be.instanceof(Array); |
62 |
| - urls.should.be.empty; |
63 |
| - }); |
| 60 | + var urls = parseCssUrls(text); |
| 61 | + urls.should.be.instanceof(Array); |
| 62 | + urls.should.have.length(0); |
| 63 | + }); |
64 | 64 |
|
65 |
| - it('should return empty array if no urls were found', function(){ |
66 |
| - var text = 'no css urls should be found in this text'; |
| 65 | + it('should return empty array if no urls were found', function(){ |
| 66 | + var text = 'no css urls should be found in this text'; |
67 | 67 |
|
68 |
| - var urls = parseCssUrls(text); |
69 |
| - urls.should.be.instanceof(Array); |
70 |
| - urls.should.be.empty; |
71 |
| - }); |
| 68 | + var urls = parseCssUrls(text); |
| 69 | + urls.should.be.instanceof(Array); |
| 70 | + urls.should.have.length(0); |
72 | 71 | });
|
| 72 | +}); |
0 commit comments