1 package com.atlassian.plugin.webresource;
2
3 import junit.framework.TestCase;
4
5 import java.util.HashMap;
6 import java.util.Map;
7
8 public class TestCssWebResourceFormatter extends TestCase
9 {
10 private CssWebResourceFormatter cssWebResourceFormatter;
11
12 protected void setUp() throws Exception
13 {
14 super.setUp();
15 cssWebResourceFormatter = new CssWebResourceFormatter();
16 }
17
18 protected void tearDown() throws Exception
19 {
20 cssWebResourceFormatter = null;
21 super.tearDown();
22 }
23
24 public void testMatches()
25 {
26 assertTrue(cssWebResourceFormatter.matches("blah.css"));
27 assertFalse(cssWebResourceFormatter.matches("blah.js"));
28 }
29
30 public void testFormatResource()
31 {
32 final String resourceName = "master.css";
33 final String url = "/confluence/download/resources/confluence.web.resources:master-styles/master.css";
34
35 assertEquals("<link type=\"text/css\" rel=\"stylesheet\" href=\"" + url + "\" media=\"all\"/>\n",
36 cssWebResourceFormatter.formatResource(resourceName, url, new HashMap()));
37 }
38
39 public void testFormatResourceWithParameters()
40 {
41 final String resourceName = "master.css";
42 final String url = "/confluence/download/resources/confluence.web.resources:master-styles/master.css";
43 HashMap params = new HashMap();
44 params.put("title", "Confluence Master CSS");
45 params.put("charset", "utf-8");
46 params.put("foo", "bar");
47
48 assertEquals("<link type=\"text/css\" rel=\"stylesheet\" href=\"" + url + "\" title=\"Confluence Master CSS\"" +
49 " charset=\"utf-8\" media=\"all\"/>\n",
50 cssWebResourceFormatter.formatResource(resourceName, url, params));
51
52 }
53
54 public void testFormatIEResource()
55 {
56 final String resourceName = "master-ie.css";
57 final String url = "/confluence/download/resources/confluence.web.resources:master-styles/master-ie.css";
58
59 Map params = new HashMap();
60 params.put("ieonly", "true");
61 params.put("media", "screen");
62 assertEquals("<!--[if IE]>\n" +
63 "<link type=\"text/css\" rel=\"stylesheet\" href=\"" + url + "\" media=\"screen\"/>\n" +
64 "<![endif]-->\n",
65 cssWebResourceFormatter.formatResource(resourceName, url, params));
66 }
67 }