@@ -5,32 +5,67 @@ import {UrlResolver} from 'angular2/src/core/compiler/url_resolver';
55
66export function main ( ) {
77 describe ( 'StyleUrlResolver' , ( ) => {
8- it ( 'should resolve urls' , ( ) => {
8+ it ( 'should resolve "url()" urls' , ( ) => {
99 var styleUrlResolver = new StyleUrlResolver ( new FakeUrlResolver ( ) ) ;
1010 var css = `
11- @import '1.css';
12- @import "2.css";
13- @import url(http://github.com/'3.css');
14- @import url(http://github.com/"4.css");
15- @import url(http://github.com/5.css);
16-
1711 .foo {
1812 background-image: url(http://github.com/"double.jpg");
1913 background-image: url(http://github.com/'simple.jpg');
2014 background-image: url(http://github.com/noquote.jpg);
2115 }` ;
2216 var expectedCss = `
17+ .foo {
18+ background-image: url(http://github.com/'base/double.jpg');
19+ background-image: url(http://github.com/'base/simple.jpg');
20+ background-image: url(http://github.com/'base/noquote.jpg');
21+ }` ;
22+
23+ var resolvedCss = styleUrlResolver . resolveUrls ( css , 'base' ) ;
24+ expect ( resolvedCss ) . toEqual ( expectedCss ) ;
25+ } ) ;
26+
27+ it ( 'should resolve "@import" urls' , ( ) => {
28+ var styleUrlResolver = new StyleUrlResolver ( new FakeUrlResolver ( ) ) ;
29+ var css = `
30+ @import '1.css';
31+ @import "2.css";
32+ ` ;
33+ var expectedCss = `
2334 @import 'base/1.css';
2435 @import 'base/2.css';
36+ ` ;
37+
38+ var resolvedCss = styleUrlResolver . resolveUrls ( css , 'base' ) ;
39+ expect ( resolvedCss ) . toEqual ( expectedCss ) ;
40+ } ) ;
41+
42+ it ( 'should resolve "@import url()" urls' , ( ) => {
43+ var styleUrlResolver = new StyleUrlResolver ( new FakeUrlResolver ( ) ) ;
44+ var css = `
45+ @import url(http://github.com/'3.css');
46+ @import url(http://github.com/"4.css");
47+ @import url(http://github.com/5.css);
48+ ` ;
49+ var expectedCss = `
2550 @import url(http://github.com/'base/3.css');
2651 @import url(http://github.com/'base/4.css');
2752 @import url(http://github.com/'base/5.css');
53+ ` ;
2854
29- .foo {
30- background-image: url(http://github.com/'base/double.jpg');
31- background-image: url(http://github.com/'base/simple.jpg');
32- background-image: url(http://github.com/'base/noquote.jpg');
33- }` ;
55+ var resolvedCss = styleUrlResolver . resolveUrls ( css , 'base' ) ;
56+ expect ( resolvedCss ) . toEqual ( expectedCss ) ;
57+ } ) ;
58+
59+ it ( 'should support media query in "@import"' , ( ) => {
60+ var styleUrlResolver = new StyleUrlResolver ( new FakeUrlResolver ( ) ) ;
61+ var css = `
62+ @import 'print.css' print;
63+ @import url(http://github.com/print.css) print;
64+ ` ;
65+ var expectedCss = `
66+ @import 'base/print.css' print;
67+ @import url(http://github.com/'base/print.css') print;
68+ ` ;
3469
3570 var resolvedCss = styleUrlResolver . resolveUrls ( css , 'base' ) ;
3671 expect ( resolvedCss ) . toEqual ( expectedCss ) ;
0 commit comments