Merge lp:~marcoceppi/charm-tools/icon-template into lp:~charmers/charm-tools/trunk

Proposed by Marco Ceppi
Status: Merged
Merged at revision: 177
Proposed branch: lp:~marcoceppi/charm-tools/icon-template
Merge into: lp:~charmers/charm-tools/trunk
Diff against target: 1313 lines (+1212/-0)
16 files modified
scripts/lib/proof.py (+19/-0)
templates/charm/icon.svg (+279/-0)
tests/charms/icon-template/README.ex (+5/-0)
tests/charms/icon-template/hooks/install (+5/-0)
tests/charms/icon-template/hooks/relation-name-relation-broken (+2/-0)
tests/charms/icon-template/hooks/relation-name-relation-changed (+9/-0)
tests/charms/icon-template/hooks/relation-name-relation-departed (+5/-0)
tests/charms/icon-template/hooks/relation-name-relation-joined (+5/-0)
tests/charms/icon-template/hooks/start (+4/-0)
tests/charms/icon-template/hooks/stop (+7/-0)
tests/charms/icon-template/icon.svg (+279/-0)
tests/charms/icon-template/metadata.yaml (+19/-0)
tests/charms/icon-template/revision (+1/-0)
tests/create/no-package-exists/icon.svg (+279/-0)
tests/create/python-apt/icon.svg (+279/-0)
tests/proof/expected/icon-template (+15/-0)
To merge this branch: bzr merge lp:~marcoceppi/charm-tools/icon-template
Reviewer Review Type Date Requested Status
Juan L. Negron (community) Approve
Review via email: mp+161020@code.launchpad.net

Description of the change

Added default icon to charm template

To post a comment you must log in.
Revision history for this message
Juan L. Negron (negronjl) wrote :

Approved. Will merge in a few minutes.

-Juan

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'scripts/lib/proof.py'
--- scripts/lib/proof.py 2013-04-18 22:19:06 +0000
+++ scripts/lib/proof.py 2013-04-25 21:00:33 +0000
@@ -21,6 +21,7 @@
21from stat import S_IXUSR21from stat import S_IXUSR
22import sys22import sys
23import yaml23import yaml
24import hashlib
2425
25KNOWN_METADATA_KEYS = ['name',26KNOWN_METADATA_KEYS = ['name',
26 'summary',27 'summary',
@@ -41,6 +42,10 @@
41 os.path.join(42 os.path.join(
42 __file__, '..', '..', '..', 'templates', 'charm', 'README.ex'))43 __file__, '..', '..', '..', 'templates', 'charm', 'README.ex'))
4344
45TEMPLATE_ICON = os.path.abspath(
46 os.path.join(
47 __file__, '..', '..', '..', 'templates', 'charm', 'icon.svg'))
48
4449
45class RelationError(Exception):50class RelationError(Exception):
46 pass51 pass
@@ -230,6 +235,20 @@
230235
231 if not os.path.exists(os.path.join(charm_path, 'icon.svg')):236 if not os.path.exists(os.path.join(charm_path, 'icon.svg')):
232 lint.warn("No icon.svg file.")237 lint.warn("No icon.svg file.")
238 else:
239 # should have an icon.svg
240 template_sha1 = hashlib.sha1()
241 icon_sha1 = hashlib.sha1()
242 try:
243 with open(TEMPLATE_ICON) as ti:
244 template_sha1.update(ti.read())
245 with open(os.path.join(charm_path, 'icon.svg')) as ci:
246 icon_sha1.update(ci.read())
247 if template_sha1.hexdigest() == icon_sha1.hexdigest():
248 lint.err("Includes template icon.svg file.")
249 except IOError as e:
250 lint.err(
251 "Error while opening %s (%s)" % (e.filename, e.strerror))
233252
234 # Must have a hooks dir253 # Must have a hooks dir
235 if not os.path.exists(hooks_path):254 if not os.path.exists(hooks_path):
236255
=== added file 'templates/charm/icon.svg'
--- templates/charm/icon.svg 1970-01-01 00:00:00 +0000
+++ templates/charm/icon.svg 2013-04-25 21:00:33 +0000
@@ -0,0 +1,279 @@
1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2<!-- Created with Inkscape (http://www.inkscape.org/) -->
3
4<svg
5 xmlns:dc="http://purl.org/dc/elements/1.1/"
6 xmlns:cc="http://creativecommons.org/ns#"
7 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
8 xmlns:svg="http://www.w3.org/2000/svg"
9 xmlns="http://www.w3.org/2000/svg"
10 xmlns:xlink="http://www.w3.org/1999/xlink"
11 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
12 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
13 width="96"
14 height="96"
15 id="svg6517"
16 version="1.1"
17 inkscape:version="0.48+devel r12274"
18 sodipodi:docname="Juju_charm_icon_template.svg">
19 <defs
20 id="defs6519">
21 <linearGradient
22 inkscape:collect="always"
23 xlink:href="#Background"
24 id="linearGradient6461"
25 gradientUnits="userSpaceOnUse"
26 x1="0"
27 y1="970.29498"
28 x2="144"
29 y2="970.29498"
30 gradientTransform="matrix(0,-0.66666669,0.6660448,0,-866.25992,731.29077)" />
31 <linearGradient
32 id="Background">
33 <stop
34 id="stop4178"
35 offset="0"
36 style="stop-color:#b8b8b8;stop-opacity:1" />
37 <stop
38 id="stop4180"
39 offset="1"
40 style="stop-color:#c9c9c9;stop-opacity:1" />
41 </linearGradient>
42 <filter
43 style="color-interpolation-filters:sRGB;"
44 inkscape:label="Inner Shadow"
45 id="filter1121">
46 <feFlood
47 flood-opacity="0.59999999999999998"
48 flood-color="rgb(0,0,0)"
49 result="flood"
50 id="feFlood1123" />
51 <feComposite
52 in="flood"
53 in2="SourceGraphic"
54 operator="out"
55 result="composite1"
56 id="feComposite1125" />
57 <feGaussianBlur
58 in="composite1"
59 stdDeviation="1"
60 result="blur"
61 id="feGaussianBlur1127" />
62 <feOffset
63 dx="0"
64 dy="2"
65 result="offset"
66 id="feOffset1129" />
67 <feComposite
68 in="offset"
69 in2="SourceGraphic"
70 operator="atop"
71 result="composite2"
72 id="feComposite1131" />
73 </filter>
74 <filter
75 style="color-interpolation-filters:sRGB;"
76 inkscape:label="Drop Shadow"
77 id="filter950">
78 <feFlood
79 flood-opacity="0.25"
80 flood-color="rgb(0,0,0)"
81 result="flood"
82 id="feFlood952" />
83 <feComposite
84 in="flood"
85 in2="SourceGraphic"
86 operator="in"
87 result="composite1"
88 id="feComposite954" />
89 <feGaussianBlur
90 in="composite1"
91 stdDeviation="1"
92 result="blur"
93 id="feGaussianBlur956" />
94 <feOffset
95 dx="0"
96 dy="1"
97 result="offset"
98 id="feOffset958" />
99 <feComposite
100 in="SourceGraphic"
101 in2="offset"
102 operator="over"
103 result="composite2"
104 id="feComposite960" />
105 </filter>
106 <clipPath
107 clipPathUnits="userSpaceOnUse"
108 id="clipPath873">
109 <g
110 transform="matrix(0,-0.66666667,0.66604479,0,-258.25992,677.00001)"
111 id="g875"
112 inkscape:label="Layer 1"
113 style="fill:#ff00ff;fill-opacity:1;stroke:none;display:inline">
114 <path
115 style="fill:#ff00ff;fill-opacity:1;stroke:none;display:inline"
116 d="m 46.702703,898.22775 50.594594,0 C 138.16216,898.22775 144,904.06497 144,944.92583 l 0,50.73846 c 0,40.86071 -5.83784,46.69791 -46.702703,46.69791 l -50.594594,0 C 5.8378378,1042.3622 0,1036.525 0,995.66429 L 0,944.92583 C 0,904.06497 5.8378378,898.22775 46.702703,898.22775 Z"
117 id="path877"
118 inkscape:connector-curvature="0"
119 sodipodi:nodetypes="sssssssss" />
120 </g>
121 </clipPath>
122 <filter
123 inkscape:collect="always"
124 id="filter891"
125 inkscape:label="Badge Shadow">
126 <feGaussianBlur
127 inkscape:collect="always"
128 stdDeviation="0.71999962"
129 id="feGaussianBlur893" />
130 </filter>
131 </defs>
132 <sodipodi:namedview
133 id="base"
134 pagecolor="#ffffff"
135 bordercolor="#666666"
136 borderopacity="1.0"
137 inkscape:pageopacity="0.0"
138 inkscape:pageshadow="2"
139 inkscape:zoom="4.0745362"
140 inkscape:cx="18.514671"
141 inkscape:cy="49.018169"
142 inkscape:document-units="px"
143 inkscape:current-layer="layer1"
144 showgrid="true"
145 fit-margin-top="0"
146 fit-margin-left="0"
147 fit-margin-right="0"
148 fit-margin-bottom="0"
149 inkscape:window-width="1920"
150 inkscape:window-height="1029"
151 inkscape:window-x="0"
152 inkscape:window-y="24"
153 inkscape:window-maximized="1"
154 showborder="true"
155 showguides="true"
156 inkscape:guide-bbox="true"
157 inkscape:showpageshadow="false">
158 <inkscape:grid
159 type="xygrid"
160 id="grid821" />
161 <sodipodi:guide
162 orientation="1,0"
163 position="16,48"
164 id="guide823" />
165 <sodipodi:guide
166 orientation="0,1"
167 position="64,80"
168 id="guide825" />
169 <sodipodi:guide
170 orientation="1,0"
171 position="80,40"
172 id="guide827" />
173 <sodipodi:guide
174 orientation="0,1"
175 position="64,16"
176 id="guide829" />
177 </sodipodi:namedview>
178 <metadata
179 id="metadata6522">
180 <rdf:RDF>
181 <cc:Work
182 rdf:about="">
183 <dc:format>image/svg+xml</dc:format>
184 <dc:type
185 rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
186 <dc:title></dc:title>
187 </cc:Work>
188 </rdf:RDF>
189 </metadata>
190 <g
191 inkscape:label="BACKGROUND"
192 inkscape:groupmode="layer"
193 id="layer1"
194 transform="translate(268,-635.29076)"
195 style="display:inline">
196 <path
197 style="fill:url(#linearGradient6461);fill-opacity:1;stroke:none;display:inline;filter:url(#filter1121)"
198 d="m -268,700.15563 0,-33.72973 c 0,-27.24324 3.88785,-31.13513 31.10302,-31.13513 l 33.79408,0 c 27.21507,0 31.1029,3.89189 31.1029,31.13513 l 0,33.72973 c 0,27.24325 -3.88783,31.13514 -31.1029,31.13514 l -33.79408,0 C -264.11215,731.29077 -268,727.39888 -268,700.15563 Z"
199 id="path6455"
200 inkscape:connector-curvature="0"
201 sodipodi:nodetypes="sssssssss" />
202 </g>
203 <g
204 inkscape:groupmode="layer"
205 id="layer3"
206 inkscape:label="PLACE YOUR PICTOGRAM HERE"
207 style="display:inline" />
208 <g
209 inkscape:groupmode="layer"
210 id="layer2"
211 inkscape:label="BADGE"
212 style="display:none"
213 sodipodi:insensitive="true">
214 <g
215 style="display:inline"
216 transform="translate(-340.00001,-581)"
217 id="g4394"
218 clip-path="none">
219 <g
220 id="g855">
221 <g
222 inkscape:groupmode="maskhelper"
223 id="g870"
224 clip-path="url(#clipPath873)"
225 style="opacity:0.6;filter:url(#filter891)">
226 <path
227 transform="matrix(1.4999992,0,0,1.4999992,-29.999795,-237.54282)"
228 d="m 264,552.36218 a 12,12 0 1 1 -24,0 A 12,12 0 1 1 264,552.36218 Z"
229 sodipodi:ry="12"
230 sodipodi:rx="12"
231 sodipodi:cy="552.36218"
232 sodipodi:cx="252"
233 id="path844"
234 style="color:#000000;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
235 sodipodi:type="arc" />
236 </g>
237 <g
238 id="g862">
239 <path
240 sodipodi:type="arc"
241 style="color:#000000;fill:#f5f5f5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
242 id="path4398"
243 sodipodi:cx="252"
244 sodipodi:cy="552.36218"
245 sodipodi:rx="12"
246 sodipodi:ry="12"
247 d="m 264,552.36218 a 12,12 0 1 1 -24,0 A 12,12 0 1 1 264,552.36218 Z"
248 transform="matrix(1.4999992,0,0,1.4999992,-29.999795,-238.54282)" />
249 <path
250 transform="matrix(1.25,0,0,1.25,33,-100.45273)"
251 d="m 264,552.36218 a 12,12 0 1 1 -24,0 A 12,12 0 1 1 264,552.36218 Z"
252 sodipodi:ry="12"
253 sodipodi:rx="12"
254 sodipodi:cy="552.36218"
255 sodipodi:cx="252"
256 id="path4400"
257 style="color:#000000;fill:#dd4814;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
258 sodipodi:type="arc" />
259 <path
260 sodipodi:type="star"
261 style="color:#000000;fill:#f5f5f5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
262 id="path4459"
263 sodipodi:sides="5"
264 sodipodi:cx="666.19574"
265 sodipodi:cy="589.50385"
266 sodipodi:r1="7.2431178"
267 sodipodi:r2="4.3458705"
268 sodipodi:arg1="1.0471976"
269 sodipodi:arg2="1.6755161"
270 inkscape:flatsided="false"
271 inkscape:rounded="0.1"
272 inkscape:randomized="0"
273 d="m 669.8173,595.77657 c -0.39132,0.22593 -3.62645,-1.90343 -4.07583,-1.95066 -0.44938,-0.0472 -4.05653,1.36297 -4.39232,1.06062 -0.3358,-0.30235 0.68963,-4.03715 0.59569,-4.47913 -0.0939,-0.44198 -2.5498,-3.43681 -2.36602,-3.8496 0.18379,-0.41279 4.05267,-0.59166 4.44398,-0.81759 0.39132,-0.22593 2.48067,-3.48704 2.93005,-3.4398 0.44938,0.0472 1.81505,3.67147 2.15084,3.97382 0.3358,0.30236 4.08294,1.2817 4.17689,1.72369 0.0939,0.44198 -2.9309,2.86076 -3.11469,3.27355 C 669.9821,591.68426 670.20862,595.55064 669.8173,595.77657 Z"
274 transform="matrix(1.511423,-0.16366377,0.16366377,1.511423,-755.37346,-191.93651)" />
275 </g>
276 </g>
277 </g>
278 </g>
279</svg>
0280
=== added directory 'tests/charms/icon-template'
=== added file 'tests/charms/icon-template/README.ex'
--- tests/charms/icon-template/README.ex 1970-01-01 00:00:00 +0000
+++ tests/charms/icon-template/README.ex 2013-04-25 21:00:33 +0000
@@ -0,0 +1,5 @@
1Describe the intended usage of this charm and anything unique about how
2this charm relates to others here.
3
4Be sure to remove this section before submitting this to
5https://launchpad.net/charms for inclusion in the charm store.
06
=== added directory 'tests/charms/icon-template/hooks'
=== added file 'tests/charms/icon-template/hooks/install'
--- tests/charms/icon-template/hooks/install 1970-01-01 00:00:00 +0000
+++ tests/charms/icon-template/hooks/install 2013-04-25 21:00:33 +0000
@@ -0,0 +1,5 @@
1#!/bin/bash
2# Here do anything needed to install the service
3# i.e. apt-get install -y foo or bzr branch http://myserver/mycode /srv/webroot
4
5apt-get install -y test
06
=== added file 'tests/charms/icon-template/hooks/relation-name-relation-broken'
--- tests/charms/icon-template/hooks/relation-name-relation-broken 1970-01-01 00:00:00 +0000
+++ tests/charms/icon-template/hooks/relation-name-relation-broken 2013-04-25 21:00:33 +0000
@@ -0,0 +1,2 @@
1#!/bin/sh
2# This hook runs when the full relation is removed (not just a single member)
03
=== added file 'tests/charms/icon-template/hooks/relation-name-relation-changed'
--- tests/charms/icon-template/hooks/relation-name-relation-changed 1970-01-01 00:00:00 +0000
+++ tests/charms/icon-template/hooks/relation-name-relation-changed 2013-04-25 21:00:33 +0000
@@ -0,0 +1,9 @@
1#!/bin/bash
2# This must be renamed to the name of the relation. The goal here is to
3# affect any change needed by relationships being formed, modified, or broken
4# This script should be idempotent.
5juju-log $JUJU_REMOTE_UNIT modified its settings
6juju-log Relation settings:
7relation-get
8juju-log Relation members:
9relation-list
010
=== added file 'tests/charms/icon-template/hooks/relation-name-relation-departed'
--- tests/charms/icon-template/hooks/relation-name-relation-departed 1970-01-01 00:00:00 +0000
+++ tests/charms/icon-template/hooks/relation-name-relation-departed 2013-04-25 21:00:33 +0000
@@ -0,0 +1,5 @@
1#!/bin/sh
2# This must be renamed to the name of the relation. The goal here is to
3# affect any change needed by the remote unit leaving the relationship.
4# This script should be idempotent.
5juju-log $JUJU_REMOTE_UNIT departed
06
=== added file 'tests/charms/icon-template/hooks/relation-name-relation-joined'
--- tests/charms/icon-template/hooks/relation-name-relation-joined 1970-01-01 00:00:00 +0000
+++ tests/charms/icon-template/hooks/relation-name-relation-joined 2013-04-25 21:00:33 +0000
@@ -0,0 +1,5 @@
1#!/bin/sh
2# This must be renamed to the name of the relation. The goal here is to
3# affect any change needed by relationships being formed
4# This script should be idempotent.
5juju-log $JUJU_REMOTE_UNIT joined
06
=== added file 'tests/charms/icon-template/hooks/start'
--- tests/charms/icon-template/hooks/start 1970-01-01 00:00:00 +0000
+++ tests/charms/icon-template/hooks/start 2013-04-25 21:00:33 +0000
@@ -0,0 +1,4 @@
1#!/bin/bash
2# Here put anything that is needed to start the service.
3# Note that currently this is run directly after install
4# i.e. 'service apache2 start'
05
=== added file 'tests/charms/icon-template/hooks/stop'
--- tests/charms/icon-template/hooks/stop 1970-01-01 00:00:00 +0000
+++ tests/charms/icon-template/hooks/stop 2013-04-25 21:00:33 +0000
@@ -0,0 +1,7 @@
1#!/bin/bash
2# This will be run when the service is being torn down, allowing you to disable
3# it in various ways..
4# For example, if your web app uses a text file to signal to the load balancer
5# that it is live... you could remove it and sleep for a bit to allow the load
6# balancer to stop sending traffic.
7# rm /srv/webroot/server-live.txt && sleep 30
08
=== added file 'tests/charms/icon-template/icon.svg'
--- tests/charms/icon-template/icon.svg 1970-01-01 00:00:00 +0000
+++ tests/charms/icon-template/icon.svg 2013-04-25 21:00:33 +0000
@@ -0,0 +1,279 @@
1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2<!-- Created with Inkscape (http://www.inkscape.org/) -->
3
4<svg
5 xmlns:dc="http://purl.org/dc/elements/1.1/"
6 xmlns:cc="http://creativecommons.org/ns#"
7 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
8 xmlns:svg="http://www.w3.org/2000/svg"
9 xmlns="http://www.w3.org/2000/svg"
10 xmlns:xlink="http://www.w3.org/1999/xlink"
11 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
12 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
13 width="96"
14 height="96"
15 id="svg6517"
16 version="1.1"
17 inkscape:version="0.48+devel r12274"
18 sodipodi:docname="Juju_charm_icon_template.svg">
19 <defs
20 id="defs6519">
21 <linearGradient
22 inkscape:collect="always"
23 xlink:href="#Background"
24 id="linearGradient6461"
25 gradientUnits="userSpaceOnUse"
26 x1="0"
27 y1="970.29498"
28 x2="144"
29 y2="970.29498"
30 gradientTransform="matrix(0,-0.66666669,0.6660448,0,-866.25992,731.29077)" />
31 <linearGradient
32 id="Background">
33 <stop
34 id="stop4178"
35 offset="0"
36 style="stop-color:#b8b8b8;stop-opacity:1" />
37 <stop
38 id="stop4180"
39 offset="1"
40 style="stop-color:#c9c9c9;stop-opacity:1" />
41 </linearGradient>
42 <filter
43 style="color-interpolation-filters:sRGB;"
44 inkscape:label="Inner Shadow"
45 id="filter1121">
46 <feFlood
47 flood-opacity="0.59999999999999998"
48 flood-color="rgb(0,0,0)"
49 result="flood"
50 id="feFlood1123" />
51 <feComposite
52 in="flood"
53 in2="SourceGraphic"
54 operator="out"
55 result="composite1"
56 id="feComposite1125" />
57 <feGaussianBlur
58 in="composite1"
59 stdDeviation="1"
60 result="blur"
61 id="feGaussianBlur1127" />
62 <feOffset
63 dx="0"
64 dy="2"
65 result="offset"
66 id="feOffset1129" />
67 <feComposite
68 in="offset"
69 in2="SourceGraphic"
70 operator="atop"
71 result="composite2"
72 id="feComposite1131" />
73 </filter>
74 <filter
75 style="color-interpolation-filters:sRGB;"
76 inkscape:label="Drop Shadow"
77 id="filter950">
78 <feFlood
79 flood-opacity="0.25"
80 flood-color="rgb(0,0,0)"
81 result="flood"
82 id="feFlood952" />
83 <feComposite
84 in="flood"
85 in2="SourceGraphic"
86 operator="in"
87 result="composite1"
88 id="feComposite954" />
89 <feGaussianBlur
90 in="composite1"
91 stdDeviation="1"
92 result="blur"
93 id="feGaussianBlur956" />
94 <feOffset
95 dx="0"
96 dy="1"
97 result="offset"
98 id="feOffset958" />
99 <feComposite
100 in="SourceGraphic"
101 in2="offset"
102 operator="over"
103 result="composite2"
104 id="feComposite960" />
105 </filter>
106 <clipPath
107 clipPathUnits="userSpaceOnUse"
108 id="clipPath873">
109 <g
110 transform="matrix(0,-0.66666667,0.66604479,0,-258.25992,677.00001)"
111 id="g875"
112 inkscape:label="Layer 1"
113 style="fill:#ff00ff;fill-opacity:1;stroke:none;display:inline">
114 <path
115 style="fill:#ff00ff;fill-opacity:1;stroke:none;display:inline"
116 d="m 46.702703,898.22775 50.594594,0 C 138.16216,898.22775 144,904.06497 144,944.92583 l 0,50.73846 c 0,40.86071 -5.83784,46.69791 -46.702703,46.69791 l -50.594594,0 C 5.8378378,1042.3622 0,1036.525 0,995.66429 L 0,944.92583 C 0,904.06497 5.8378378,898.22775 46.702703,898.22775 Z"
117 id="path877"
118 inkscape:connector-curvature="0"
119 sodipodi:nodetypes="sssssssss" />
120 </g>
121 </clipPath>
122 <filter
123 inkscape:collect="always"
124 id="filter891"
125 inkscape:label="Badge Shadow">
126 <feGaussianBlur
127 inkscape:collect="always"
128 stdDeviation="0.71999962"
129 id="feGaussianBlur893" />
130 </filter>
131 </defs>
132 <sodipodi:namedview
133 id="base"
134 pagecolor="#ffffff"
135 bordercolor="#666666"
136 borderopacity="1.0"
137 inkscape:pageopacity="0.0"
138 inkscape:pageshadow="2"
139 inkscape:zoom="4.0745362"
140 inkscape:cx="18.514671"
141 inkscape:cy="49.018169"
142 inkscape:document-units="px"
143 inkscape:current-layer="layer1"
144 showgrid="true"
145 fit-margin-top="0"
146 fit-margin-left="0"
147 fit-margin-right="0"
148 fit-margin-bottom="0"
149 inkscape:window-width="1920"
150 inkscape:window-height="1029"
151 inkscape:window-x="0"
152 inkscape:window-y="24"
153 inkscape:window-maximized="1"
154 showborder="true"
155 showguides="true"
156 inkscape:guide-bbox="true"
157 inkscape:showpageshadow="false">
158 <inkscape:grid
159 type="xygrid"
160 id="grid821" />
161 <sodipodi:guide
162 orientation="1,0"
163 position="16,48"
164 id="guide823" />
165 <sodipodi:guide
166 orientation="0,1"
167 position="64,80"
168 id="guide825" />
169 <sodipodi:guide
170 orientation="1,0"
171 position="80,40"
172 id="guide827" />
173 <sodipodi:guide
174 orientation="0,1"
175 position="64,16"
176 id="guide829" />
177 </sodipodi:namedview>
178 <metadata
179 id="metadata6522">
180 <rdf:RDF>
181 <cc:Work
182 rdf:about="">
183 <dc:format>image/svg+xml</dc:format>
184 <dc:type
185 rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
186 <dc:title></dc:title>
187 </cc:Work>
188 </rdf:RDF>
189 </metadata>
190 <g
191 inkscape:label="BACKGROUND"
192 inkscape:groupmode="layer"
193 id="layer1"
194 transform="translate(268,-635.29076)"
195 style="display:inline">
196 <path
197 style="fill:url(#linearGradient6461);fill-opacity:1;stroke:none;display:inline;filter:url(#filter1121)"
198 d="m -268,700.15563 0,-33.72973 c 0,-27.24324 3.88785,-31.13513 31.10302,-31.13513 l 33.79408,0 c 27.21507,0 31.1029,3.89189 31.1029,31.13513 l 0,33.72973 c 0,27.24325 -3.88783,31.13514 -31.1029,31.13514 l -33.79408,0 C -264.11215,731.29077 -268,727.39888 -268,700.15563 Z"
199 id="path6455"
200 inkscape:connector-curvature="0"
201 sodipodi:nodetypes="sssssssss" />
202 </g>
203 <g
204 inkscape:groupmode="layer"
205 id="layer3"
206 inkscape:label="PLACE YOUR PICTOGRAM HERE"
207 style="display:inline" />
208 <g
209 inkscape:groupmode="layer"
210 id="layer2"
211 inkscape:label="BADGE"
212 style="display:none"
213 sodipodi:insensitive="true">
214 <g
215 style="display:inline"
216 transform="translate(-340.00001,-581)"
217 id="g4394"
218 clip-path="none">
219 <g
220 id="g855">
221 <g
222 inkscape:groupmode="maskhelper"
223 id="g870"
224 clip-path="url(#clipPath873)"
225 style="opacity:0.6;filter:url(#filter891)">
226 <path
227 transform="matrix(1.4999992,0,0,1.4999992,-29.999795,-237.54282)"
228 d="m 264,552.36218 a 12,12 0 1 1 -24,0 A 12,12 0 1 1 264,552.36218 Z"
229 sodipodi:ry="12"
230 sodipodi:rx="12"
231 sodipodi:cy="552.36218"
232 sodipodi:cx="252"
233 id="path844"
234 style="color:#000000;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
235 sodipodi:type="arc" />
236 </g>
237 <g
238 id="g862">
239 <path
240 sodipodi:type="arc"
241 style="color:#000000;fill:#f5f5f5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
242 id="path4398"
243 sodipodi:cx="252"
244 sodipodi:cy="552.36218"
245 sodipodi:rx="12"
246 sodipodi:ry="12"
247 d="m 264,552.36218 a 12,12 0 1 1 -24,0 A 12,12 0 1 1 264,552.36218 Z"
248 transform="matrix(1.4999992,0,0,1.4999992,-29.999795,-238.54282)" />
249 <path
250 transform="matrix(1.25,0,0,1.25,33,-100.45273)"
251 d="m 264,552.36218 a 12,12 0 1 1 -24,0 A 12,12 0 1 1 264,552.36218 Z"
252 sodipodi:ry="12"
253 sodipodi:rx="12"
254 sodipodi:cy="552.36218"
255 sodipodi:cx="252"
256 id="path4400"
257 style="color:#000000;fill:#dd4814;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
258 sodipodi:type="arc" />
259 <path
260 sodipodi:type="star"
261 style="color:#000000;fill:#f5f5f5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
262 id="path4459"
263 sodipodi:sides="5"
264 sodipodi:cx="666.19574"
265 sodipodi:cy="589.50385"
266 sodipodi:r1="7.2431178"
267 sodipodi:r2="4.3458705"
268 sodipodi:arg1="1.0471976"
269 sodipodi:arg2="1.6755161"
270 inkscape:flatsided="false"
271 inkscape:rounded="0.1"
272 inkscape:randomized="0"
273 d="m 669.8173,595.77657 c -0.39132,0.22593 -3.62645,-1.90343 -4.07583,-1.95066 -0.44938,-0.0472 -4.05653,1.36297 -4.39232,1.06062 -0.3358,-0.30235 0.68963,-4.03715 0.59569,-4.47913 -0.0939,-0.44198 -2.5498,-3.43681 -2.36602,-3.8496 0.18379,-0.41279 4.05267,-0.59166 4.44398,-0.81759 0.39132,-0.22593 2.48067,-3.48704 2.93005,-3.4398 0.44938,0.0472 1.81505,3.67147 2.15084,3.97382 0.3358,0.30236 4.08294,1.2817 4.17689,1.72369 0.0939,0.44198 -2.9309,2.86076 -3.11469,3.27355 C 669.9821,591.68426 670.20862,595.55064 669.8173,595.77657 Z"
274 transform="matrix(1.511423,-0.16366377,0.16366377,1.511423,-755.37346,-191.93651)" />
275 </g>
276 </g>
277 </g>
278 </g>
279</svg>
0280
=== added file 'tests/charms/icon-template/metadata.yaml'
--- tests/charms/icon-template/metadata.yaml 1970-01-01 00:00:00 +0000
+++ tests/charms/icon-template/metadata.yaml 2013-04-25 21:00:33 +0000
@@ -0,0 +1,19 @@
1name: icon-template
2summary: <Fill in summary here>
3maintainer: test@testhost
4description: |
5 <Multi-line description here>
6categories:
7 - misc
8provides:
9 relation-name:
10 baz: boom
11 interface: interface-name
12requires:
13 relation-name:
14 interface: interface-name
15 scope: flouride
16peers:
17 relation-name:
18 interface: interface-name
19 non-map: [ interface, interface-name ]
020
=== added file 'tests/charms/icon-template/revision'
--- tests/charms/icon-template/revision 1970-01-01 00:00:00 +0000
+++ tests/charms/icon-template/revision 2013-04-25 21:00:33 +0000
@@ -0,0 +1,1 @@
11
02
=== added file 'tests/create/no-package-exists/icon.svg'
--- tests/create/no-package-exists/icon.svg 1970-01-01 00:00:00 +0000
+++ tests/create/no-package-exists/icon.svg 2013-04-25 21:00:33 +0000
@@ -0,0 +1,279 @@
1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2<!-- Created with Inkscape (http://www.inkscape.org/) -->
3
4<svg
5 xmlns:dc="http://purl.org/dc/elements/1.1/"
6 xmlns:cc="http://creativecommons.org/ns#"
7 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
8 xmlns:svg="http://www.w3.org/2000/svg"
9 xmlns="http://www.w3.org/2000/svg"
10 xmlns:xlink="http://www.w3.org/1999/xlink"
11 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
12 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
13 width="96"
14 height="96"
15 id="svg6517"
16 version="1.1"
17 inkscape:version="0.48+devel r12274"
18 sodipodi:docname="Juju_charm_icon_template.svg">
19 <defs
20 id="defs6519">
21 <linearGradient
22 inkscape:collect="always"
23 xlink:href="#Background"
24 id="linearGradient6461"
25 gradientUnits="userSpaceOnUse"
26 x1="0"
27 y1="970.29498"
28 x2="144"
29 y2="970.29498"
30 gradientTransform="matrix(0,-0.66666669,0.6660448,0,-866.25992,731.29077)" />
31 <linearGradient
32 id="Background">
33 <stop
34 id="stop4178"
35 offset="0"
36 style="stop-color:#b8b8b8;stop-opacity:1" />
37 <stop
38 id="stop4180"
39 offset="1"
40 style="stop-color:#c9c9c9;stop-opacity:1" />
41 </linearGradient>
42 <filter
43 style="color-interpolation-filters:sRGB;"
44 inkscape:label="Inner Shadow"
45 id="filter1121">
46 <feFlood
47 flood-opacity="0.59999999999999998"
48 flood-color="rgb(0,0,0)"
49 result="flood"
50 id="feFlood1123" />
51 <feComposite
52 in="flood"
53 in2="SourceGraphic"
54 operator="out"
55 result="composite1"
56 id="feComposite1125" />
57 <feGaussianBlur
58 in="composite1"
59 stdDeviation="1"
60 result="blur"
61 id="feGaussianBlur1127" />
62 <feOffset
63 dx="0"
64 dy="2"
65 result="offset"
66 id="feOffset1129" />
67 <feComposite
68 in="offset"
69 in2="SourceGraphic"
70 operator="atop"
71 result="composite2"
72 id="feComposite1131" />
73 </filter>
74 <filter
75 style="color-interpolation-filters:sRGB;"
76 inkscape:label="Drop Shadow"
77 id="filter950">
78 <feFlood
79 flood-opacity="0.25"
80 flood-color="rgb(0,0,0)"
81 result="flood"
82 id="feFlood952" />
83 <feComposite
84 in="flood"
85 in2="SourceGraphic"
86 operator="in"
87 result="composite1"
88 id="feComposite954" />
89 <feGaussianBlur
90 in="composite1"
91 stdDeviation="1"
92 result="blur"
93 id="feGaussianBlur956" />
94 <feOffset
95 dx="0"
96 dy="1"
97 result="offset"
98 id="feOffset958" />
99 <feComposite
100 in="SourceGraphic"
101 in2="offset"
102 operator="over"
103 result="composite2"
104 id="feComposite960" />
105 </filter>
106 <clipPath
107 clipPathUnits="userSpaceOnUse"
108 id="clipPath873">
109 <g
110 transform="matrix(0,-0.66666667,0.66604479,0,-258.25992,677.00001)"
111 id="g875"
112 inkscape:label="Layer 1"
113 style="fill:#ff00ff;fill-opacity:1;stroke:none;display:inline">
114 <path
115 style="fill:#ff00ff;fill-opacity:1;stroke:none;display:inline"
116 d="m 46.702703,898.22775 50.594594,0 C 138.16216,898.22775 144,904.06497 144,944.92583 l 0,50.73846 c 0,40.86071 -5.83784,46.69791 -46.702703,46.69791 l -50.594594,0 C 5.8378378,1042.3622 0,1036.525 0,995.66429 L 0,944.92583 C 0,904.06497 5.8378378,898.22775 46.702703,898.22775 Z"
117 id="path877"
118 inkscape:connector-curvature="0"
119 sodipodi:nodetypes="sssssssss" />
120 </g>
121 </clipPath>
122 <filter
123 inkscape:collect="always"
124 id="filter891"
125 inkscape:label="Badge Shadow">
126 <feGaussianBlur
127 inkscape:collect="always"
128 stdDeviation="0.71999962"
129 id="feGaussianBlur893" />
130 </filter>
131 </defs>
132 <sodipodi:namedview
133 id="base"
134 pagecolor="#ffffff"
135 bordercolor="#666666"
136 borderopacity="1.0"
137 inkscape:pageopacity="0.0"
138 inkscape:pageshadow="2"
139 inkscape:zoom="4.0745362"
140 inkscape:cx="18.514671"
141 inkscape:cy="49.018169"
142 inkscape:document-units="px"
143 inkscape:current-layer="layer1"
144 showgrid="true"
145 fit-margin-top="0"
146 fit-margin-left="0"
147 fit-margin-right="0"
148 fit-margin-bottom="0"
149 inkscape:window-width="1920"
150 inkscape:window-height="1029"
151 inkscape:window-x="0"
152 inkscape:window-y="24"
153 inkscape:window-maximized="1"
154 showborder="true"
155 showguides="true"
156 inkscape:guide-bbox="true"
157 inkscape:showpageshadow="false">
158 <inkscape:grid
159 type="xygrid"
160 id="grid821" />
161 <sodipodi:guide
162 orientation="1,0"
163 position="16,48"
164 id="guide823" />
165 <sodipodi:guide
166 orientation="0,1"
167 position="64,80"
168 id="guide825" />
169 <sodipodi:guide
170 orientation="1,0"
171 position="80,40"
172 id="guide827" />
173 <sodipodi:guide
174 orientation="0,1"
175 position="64,16"
176 id="guide829" />
177 </sodipodi:namedview>
178 <metadata
179 id="metadata6522">
180 <rdf:RDF>
181 <cc:Work
182 rdf:about="">
183 <dc:format>image/svg+xml</dc:format>
184 <dc:type
185 rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
186 <dc:title></dc:title>
187 </cc:Work>
188 </rdf:RDF>
189 </metadata>
190 <g
191 inkscape:label="BACKGROUND"
192 inkscape:groupmode="layer"
193 id="layer1"
194 transform="translate(268,-635.29076)"
195 style="display:inline">
196 <path
197 style="fill:url(#linearGradient6461);fill-opacity:1;stroke:none;display:inline;filter:url(#filter1121)"
198 d="m -268,700.15563 0,-33.72973 c 0,-27.24324 3.88785,-31.13513 31.10302,-31.13513 l 33.79408,0 c 27.21507,0 31.1029,3.89189 31.1029,31.13513 l 0,33.72973 c 0,27.24325 -3.88783,31.13514 -31.1029,31.13514 l -33.79408,0 C -264.11215,731.29077 -268,727.39888 -268,700.15563 Z"
199 id="path6455"
200 inkscape:connector-curvature="0"
201 sodipodi:nodetypes="sssssssss" />
202 </g>
203 <g
204 inkscape:groupmode="layer"
205 id="layer3"
206 inkscape:label="PLACE YOUR PICTOGRAM HERE"
207 style="display:inline" />
208 <g
209 inkscape:groupmode="layer"
210 id="layer2"
211 inkscape:label="BADGE"
212 style="display:none"
213 sodipodi:insensitive="true">
214 <g
215 style="display:inline"
216 transform="translate(-340.00001,-581)"
217 id="g4394"
218 clip-path="none">
219 <g
220 id="g855">
221 <g
222 inkscape:groupmode="maskhelper"
223 id="g870"
224 clip-path="url(#clipPath873)"
225 style="opacity:0.6;filter:url(#filter891)">
226 <path
227 transform="matrix(1.4999992,0,0,1.4999992,-29.999795,-237.54282)"
228 d="m 264,552.36218 a 12,12 0 1 1 -24,0 A 12,12 0 1 1 264,552.36218 Z"
229 sodipodi:ry="12"
230 sodipodi:rx="12"
231 sodipodi:cy="552.36218"
232 sodipodi:cx="252"
233 id="path844"
234 style="color:#000000;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
235 sodipodi:type="arc" />
236 </g>
237 <g
238 id="g862">
239 <path
240 sodipodi:type="arc"
241 style="color:#000000;fill:#f5f5f5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
242 id="path4398"
243 sodipodi:cx="252"
244 sodipodi:cy="552.36218"
245 sodipodi:rx="12"
246 sodipodi:ry="12"
247 d="m 264,552.36218 a 12,12 0 1 1 -24,0 A 12,12 0 1 1 264,552.36218 Z"
248 transform="matrix(1.4999992,0,0,1.4999992,-29.999795,-238.54282)" />
249 <path
250 transform="matrix(1.25,0,0,1.25,33,-100.45273)"
251 d="m 264,552.36218 a 12,12 0 1 1 -24,0 A 12,12 0 1 1 264,552.36218 Z"
252 sodipodi:ry="12"
253 sodipodi:rx="12"
254 sodipodi:cy="552.36218"
255 sodipodi:cx="252"
256 id="path4400"
257 style="color:#000000;fill:#dd4814;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
258 sodipodi:type="arc" />
259 <path
260 sodipodi:type="star"
261 style="color:#000000;fill:#f5f5f5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
262 id="path4459"
263 sodipodi:sides="5"
264 sodipodi:cx="666.19574"
265 sodipodi:cy="589.50385"
266 sodipodi:r1="7.2431178"
267 sodipodi:r2="4.3458705"
268 sodipodi:arg1="1.0471976"
269 sodipodi:arg2="1.6755161"
270 inkscape:flatsided="false"
271 inkscape:rounded="0.1"
272 inkscape:randomized="0"
273 d="m 669.8173,595.77657 c -0.39132,0.22593 -3.62645,-1.90343 -4.07583,-1.95066 -0.44938,-0.0472 -4.05653,1.36297 -4.39232,1.06062 -0.3358,-0.30235 0.68963,-4.03715 0.59569,-4.47913 -0.0939,-0.44198 -2.5498,-3.43681 -2.36602,-3.8496 0.18379,-0.41279 4.05267,-0.59166 4.44398,-0.81759 0.39132,-0.22593 2.48067,-3.48704 2.93005,-3.4398 0.44938,0.0472 1.81505,3.67147 2.15084,3.97382 0.3358,0.30236 4.08294,1.2817 4.17689,1.72369 0.0939,0.44198 -2.9309,2.86076 -3.11469,3.27355 C 669.9821,591.68426 670.20862,595.55064 669.8173,595.77657 Z"
274 transform="matrix(1.511423,-0.16366377,0.16366377,1.511423,-755.37346,-191.93651)" />
275 </g>
276 </g>
277 </g>
278 </g>
279</svg>
0280
=== added file 'tests/create/python-apt/icon.svg'
--- tests/create/python-apt/icon.svg 1970-01-01 00:00:00 +0000
+++ tests/create/python-apt/icon.svg 2013-04-25 21:00:33 +0000
@@ -0,0 +1,279 @@
1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2<!-- Created with Inkscape (http://www.inkscape.org/) -->
3
4<svg
5 xmlns:dc="http://purl.org/dc/elements/1.1/"
6 xmlns:cc="http://creativecommons.org/ns#"
7 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
8 xmlns:svg="http://www.w3.org/2000/svg"
9 xmlns="http://www.w3.org/2000/svg"
10 xmlns:xlink="http://www.w3.org/1999/xlink"
11 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
12 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
13 width="96"
14 height="96"
15 id="svg6517"
16 version="1.1"
17 inkscape:version="0.48+devel r12274"
18 sodipodi:docname="Juju_charm_icon_template.svg">
19 <defs
20 id="defs6519">
21 <linearGradient
22 inkscape:collect="always"
23 xlink:href="#Background"
24 id="linearGradient6461"
25 gradientUnits="userSpaceOnUse"
26 x1="0"
27 y1="970.29498"
28 x2="144"
29 y2="970.29498"
30 gradientTransform="matrix(0,-0.66666669,0.6660448,0,-866.25992,731.29077)" />
31 <linearGradient
32 id="Background">
33 <stop
34 id="stop4178"
35 offset="0"
36 style="stop-color:#b8b8b8;stop-opacity:1" />
37 <stop
38 id="stop4180"
39 offset="1"
40 style="stop-color:#c9c9c9;stop-opacity:1" />
41 </linearGradient>
42 <filter
43 style="color-interpolation-filters:sRGB;"
44 inkscape:label="Inner Shadow"
45 id="filter1121">
46 <feFlood
47 flood-opacity="0.59999999999999998"
48 flood-color="rgb(0,0,0)"
49 result="flood"
50 id="feFlood1123" />
51 <feComposite
52 in="flood"
53 in2="SourceGraphic"
54 operator="out"
55 result="composite1"
56 id="feComposite1125" />
57 <feGaussianBlur
58 in="composite1"
59 stdDeviation="1"
60 result="blur"
61 id="feGaussianBlur1127" />
62 <feOffset
63 dx="0"
64 dy="2"
65 result="offset"
66 id="feOffset1129" />
67 <feComposite
68 in="offset"
69 in2="SourceGraphic"
70 operator="atop"
71 result="composite2"
72 id="feComposite1131" />
73 </filter>
74 <filter
75 style="color-interpolation-filters:sRGB;"
76 inkscape:label="Drop Shadow"
77 id="filter950">
78 <feFlood
79 flood-opacity="0.25"
80 flood-color="rgb(0,0,0)"
81 result="flood"
82 id="feFlood952" />
83 <feComposite
84 in="flood"
85 in2="SourceGraphic"
86 operator="in"
87 result="composite1"
88 id="feComposite954" />
89 <feGaussianBlur
90 in="composite1"
91 stdDeviation="1"
92 result="blur"
93 id="feGaussianBlur956" />
94 <feOffset
95 dx="0"
96 dy="1"
97 result="offset"
98 id="feOffset958" />
99 <feComposite
100 in="SourceGraphic"
101 in2="offset"
102 operator="over"
103 result="composite2"
104 id="feComposite960" />
105 </filter>
106 <clipPath
107 clipPathUnits="userSpaceOnUse"
108 id="clipPath873">
109 <g
110 transform="matrix(0,-0.66666667,0.66604479,0,-258.25992,677.00001)"
111 id="g875"
112 inkscape:label="Layer 1"
113 style="fill:#ff00ff;fill-opacity:1;stroke:none;display:inline">
114 <path
115 style="fill:#ff00ff;fill-opacity:1;stroke:none;display:inline"
116 d="m 46.702703,898.22775 50.594594,0 C 138.16216,898.22775 144,904.06497 144,944.92583 l 0,50.73846 c 0,40.86071 -5.83784,46.69791 -46.702703,46.69791 l -50.594594,0 C 5.8378378,1042.3622 0,1036.525 0,995.66429 L 0,944.92583 C 0,904.06497 5.8378378,898.22775 46.702703,898.22775 Z"
117 id="path877"
118 inkscape:connector-curvature="0"
119 sodipodi:nodetypes="sssssssss" />
120 </g>
121 </clipPath>
122 <filter
123 inkscape:collect="always"
124 id="filter891"
125 inkscape:label="Badge Shadow">
126 <feGaussianBlur
127 inkscape:collect="always"
128 stdDeviation="0.71999962"
129 id="feGaussianBlur893" />
130 </filter>
131 </defs>
132 <sodipodi:namedview
133 id="base"
134 pagecolor="#ffffff"
135 bordercolor="#666666"
136 borderopacity="1.0"
137 inkscape:pageopacity="0.0"
138 inkscape:pageshadow="2"
139 inkscape:zoom="4.0745362"
140 inkscape:cx="18.514671"
141 inkscape:cy="49.018169"
142 inkscape:document-units="px"
143 inkscape:current-layer="layer1"
144 showgrid="true"
145 fit-margin-top="0"
146 fit-margin-left="0"
147 fit-margin-right="0"
148 fit-margin-bottom="0"
149 inkscape:window-width="1920"
150 inkscape:window-height="1029"
151 inkscape:window-x="0"
152 inkscape:window-y="24"
153 inkscape:window-maximized="1"
154 showborder="true"
155 showguides="true"
156 inkscape:guide-bbox="true"
157 inkscape:showpageshadow="false">
158 <inkscape:grid
159 type="xygrid"
160 id="grid821" />
161 <sodipodi:guide
162 orientation="1,0"
163 position="16,48"
164 id="guide823" />
165 <sodipodi:guide
166 orientation="0,1"
167 position="64,80"
168 id="guide825" />
169 <sodipodi:guide
170 orientation="1,0"
171 position="80,40"
172 id="guide827" />
173 <sodipodi:guide
174 orientation="0,1"
175 position="64,16"
176 id="guide829" />
177 </sodipodi:namedview>
178 <metadata
179 id="metadata6522">
180 <rdf:RDF>
181 <cc:Work
182 rdf:about="">
183 <dc:format>image/svg+xml</dc:format>
184 <dc:type
185 rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
186 <dc:title></dc:title>
187 </cc:Work>
188 </rdf:RDF>
189 </metadata>
190 <g
191 inkscape:label="BACKGROUND"
192 inkscape:groupmode="layer"
193 id="layer1"
194 transform="translate(268,-635.29076)"
195 style="display:inline">
196 <path
197 style="fill:url(#linearGradient6461);fill-opacity:1;stroke:none;display:inline;filter:url(#filter1121)"
198 d="m -268,700.15563 0,-33.72973 c 0,-27.24324 3.88785,-31.13513 31.10302,-31.13513 l 33.79408,0 c 27.21507,0 31.1029,3.89189 31.1029,31.13513 l 0,33.72973 c 0,27.24325 -3.88783,31.13514 -31.1029,31.13514 l -33.79408,0 C -264.11215,731.29077 -268,727.39888 -268,700.15563 Z"
199 id="path6455"
200 inkscape:connector-curvature="0"
201 sodipodi:nodetypes="sssssssss" />
202 </g>
203 <g
204 inkscape:groupmode="layer"
205 id="layer3"
206 inkscape:label="PLACE YOUR PICTOGRAM HERE"
207 style="display:inline" />
208 <g
209 inkscape:groupmode="layer"
210 id="layer2"
211 inkscape:label="BADGE"
212 style="display:none"
213 sodipodi:insensitive="true">
214 <g
215 style="display:inline"
216 transform="translate(-340.00001,-581)"
217 id="g4394"
218 clip-path="none">
219 <g
220 id="g855">
221 <g
222 inkscape:groupmode="maskhelper"
223 id="g870"
224 clip-path="url(#clipPath873)"
225 style="opacity:0.6;filter:url(#filter891)">
226 <path
227 transform="matrix(1.4999992,0,0,1.4999992,-29.999795,-237.54282)"
228 d="m 264,552.36218 a 12,12 0 1 1 -24,0 A 12,12 0 1 1 264,552.36218 Z"
229 sodipodi:ry="12"
230 sodipodi:rx="12"
231 sodipodi:cy="552.36218"
232 sodipodi:cx="252"
233 id="path844"
234 style="color:#000000;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
235 sodipodi:type="arc" />
236 </g>
237 <g
238 id="g862">
239 <path
240 sodipodi:type="arc"
241 style="color:#000000;fill:#f5f5f5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
242 id="path4398"
243 sodipodi:cx="252"
244 sodipodi:cy="552.36218"
245 sodipodi:rx="12"
246 sodipodi:ry="12"
247 d="m 264,552.36218 a 12,12 0 1 1 -24,0 A 12,12 0 1 1 264,552.36218 Z"
248 transform="matrix(1.4999992,0,0,1.4999992,-29.999795,-238.54282)" />
249 <path
250 transform="matrix(1.25,0,0,1.25,33,-100.45273)"
251 d="m 264,552.36218 a 12,12 0 1 1 -24,0 A 12,12 0 1 1 264,552.36218 Z"
252 sodipodi:ry="12"
253 sodipodi:rx="12"
254 sodipodi:cy="552.36218"
255 sodipodi:cx="252"
256 id="path4400"
257 style="color:#000000;fill:#dd4814;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
258 sodipodi:type="arc" />
259 <path
260 sodipodi:type="star"
261 style="color:#000000;fill:#f5f5f5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
262 id="path4459"
263 sodipodi:sides="5"
264 sodipodi:cx="666.19574"
265 sodipodi:cy="589.50385"
266 sodipodi:r1="7.2431178"
267 sodipodi:r2="4.3458705"
268 sodipodi:arg1="1.0471976"
269 sodipodi:arg2="1.6755161"
270 inkscape:flatsided="false"
271 inkscape:rounded="0.1"
272 inkscape:randomized="0"
273 d="m 669.8173,595.77657 c -0.39132,0.22593 -3.62645,-1.90343 -4.07583,-1.95066 -0.44938,-0.0472 -4.05653,1.36297 -4.39232,1.06062 -0.3358,-0.30235 0.68963,-4.03715 0.59569,-4.47913 -0.0939,-0.44198 -2.5498,-3.43681 -2.36602,-3.8496 0.18379,-0.41279 4.05267,-0.59166 4.44398,-0.81759 0.39132,-0.22593 2.48067,-3.48704 2.93005,-3.4398 0.44938,0.0472 1.81505,3.67147 2.15084,3.97382 0.3358,0.30236 4.08294,1.2817 4.17689,1.72369 0.0939,0.44198 -2.9309,2.86076 -3.11469,3.27355 C 669.9821,591.68426 670.20862,595.55064 669.8173,595.77657 Z"
274 transform="matrix(1.511423,-0.16366377,0.16366377,1.511423,-755.37346,-191.93651)" />
275 </g>
276 </g>
277 </g>
278 </g>
279</svg>
0280
=== added file 'tests/proof/expected/icon-template'
--- tests/proof/expected/icon-template 1970-01-01 00:00:00 +0000
+++ tests/proof/expected/icon-template 2013-04-25 21:00:33 +0000
@@ -0,0 +1,15 @@
1E: Includes template icon.svg file.
2E: no copyright file
3E: Includes template README.ex file
4E: README.ex Includes boilerplate README.ex line 1
5E: README.ex Includes boilerplate README.ex line 2
6E: template interface names should be changed: interface-name
7E: Unknown relation field in relation relation-name - (baz)
8E: template relations should be renamed to fit charm: relation-name
9E: Unknown scope found in relation relation-name - (flouride)
10E: template interface names should be changed: interface-name
11E: template relations should be renamed to fit charm: relation-name
12E: relation non-map is not a map
13I: relation non-map has no hooks
14E: template interface names should be changed: interface-name
15E: template relations should be renamed to fit charm: relation-name

Subscribers

People subscribed via source and target branches