~juju-qa/ubuntu/xenial/juju/xenial-2.0-beta3

« back to all changes in this revision

Viewing changes to src/gopkg.in/juju/jujusvg.v1/jujusvg_test.go

  • Committer: Martin Packman
  • Date: 2016-03-30 19:31:08 UTC
  • mfrom: (1.1.41)
  • Revision ID: martin.packman@canonical.com-20160330193108-h9iz3ak334uk0z5r
Merge new upstream source 2.0~beta3

Show diffs side-by-side

added added

removed removed

Lines of Context:
86
86
        assertXMLEqual(c, buf.Bytes(), []byte(`
87
87
<?xml version="1.0"?>
88
88
<!-- Generated by SVGo -->
89
 
<svg width="639" height="465"
90
 
     style="font-family:Ubuntu, sans-serif;" viewBox="0 0 639 465"
 
89
<svg width="631" height="457"
 
90
     style="font-family:Ubuntu, sans-serif;" viewBox="0 0 631 457"
91
91
     xmlns="http://www.w3.org/2000/svg"
92
92
     xmlns:xlink="http://www.w3.org/1999/xlink">
93
93
<defs>
94
 
<g id="serviceBlock" transform="scale(0.8)" >`+assets.ServiceModule+`
95
 
</g>
96
 
<g id="healthCircle">
97
 
<circle cx="10" cy="10" r="10" style="stroke:#38B44A;fill:none;stroke-width:2px"/>
98
 
<circle cx="10" cy="10" r="5" style="fill:#38B44A"/>
 
94
<g id="healthCircle" transform="scale(1.1)" >`+assets.RelationIconHealthy+`
99
95
</g>
100
96
<svg:svg xmlns:svg="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="icon-1">
101
97
&#x9;&#x9;&#x9;&#x9;&#x9;<svg:image width="96" height="96" xlink:href="http://0.1.2.3/~juju-jitsu/precise/charmworld-58.svg"></svg:image>
102
 
&#x9;&#x9;&#x9;&#x9;</svg:svg>
103
 
<svg:svg xmlns:svg="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="icon-2">
 
98
&#x9;&#x9;&#x9;&#x9;</svg:svg><svg:svg xmlns:svg="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="icon-2">
104
99
&#x9;&#x9;&#x9;&#x9;&#x9;<svg:image width="96" height="96" xlink:href="http://0.1.2.3/~charming-devs/precise/elasticsearch-2.svg"></svg:image>
105
 
&#x9;&#x9;&#x9;&#x9;</svg:svg>
106
 
<svg:svg xmlns:svg="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="icon-3">
 
100
&#x9;&#x9;&#x9;&#x9;</svg:svg><svg:svg xmlns:svg="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="icon-3">
107
101
&#x9;&#x9;&#x9;&#x9;&#x9;<svg:image width="96" height="96" xlink:href="http://0.1.2.3/precise/mongodb-21.svg"></svg:image>
108
 
&#x9;&#x9;&#x9;&#x9;</svg:svg>
109
 
</defs>
 
102
&#x9;&#x9;&#x9;&#x9;</svg:svg></defs>
110
103
<g id="relations">
111
 
<line x1="417" y1="189" x2="189" y2="351" stroke="#38B44A" stroke-width="2px" stroke-dasharray="129.85, 20" />
112
 
<use x="293" y="260" xlink:href="#healthCircle" />
113
 
<line x1="417" y1="189" x2="544" y2="276" stroke="#38B44A" stroke-width="2px" stroke-dasharray="66.97, 20" />
114
 
<use x="470" y="222" xlink:href="#healthCircle" />
 
104
<g>
 
105
<title>charmworld:essearch elasticsearch:essearch</title>
 
106
<line x1="413" y1="90" x2="90" y2="347" stroke="#a7a7a7" stroke-width="1px" stroke-dasharray="198.38, 16" />
 
107
<use x="243" y="210" xlink:href="#healthCircle" />
 
108
<circle cx="342" cy="146" r="4" fill="#a7a7a7" />
 
109
<circle cx="160" cy="290" r="4" fill="#a7a7a7" />
 
110
</g>
 
111
<g>
 
112
<title>charmworld:database mongodb:database</title>
 
113
<line x1="413" y1="90" x2="540" y2="366" stroke="#a7a7a7" stroke-width="1px" stroke-dasharray="143.91, 16" />
 
114
<use x="468" y="220" xlink:href="#healthCircle" />
 
115
<circle cx="450" cy="171" r="4" fill="#a7a7a7" />
 
116
<circle cx="502" cy="284" r="4" fill="#a7a7a7" />
 
117
</g>
115
118
</g>
116
119
<g id="services">
117
 
<use x="323" y="0" xlink:href="#serviceBlock" id="charmworld" />
118
 
<use x="369" y="46" xlink:href="#icon-1" width="96" height="96" />
119
 
<g style="font-size:18px;fill:#505050;text-anchor:middle">
120
 
<text x="417" y="31" >charmworld</text>
121
 
</g>
122
 
<use x="0" y="257" xlink:href="#serviceBlock" id="elasticsearch" />
123
 
<use x="46" y="303" xlink:href="#icon-2" width="96" height="96" />
124
 
<g style="font-size:18px;fill:#505050;text-anchor:middle">
125
 
<text x="94" y="288" >elasticsearch</text>
126
 
</g>
127
 
<use x="450" y="276" xlink:href="#serviceBlock" id="mongodb" />
128
 
<use x="496" y="322" xlink:href="#icon-3" width="96" height="96" />
129
 
<g style="font-size:18px;fill:#505050;text-anchor:middle">
130
 
<text x="544" y="307" >mongodb</text>
 
120
<g transform="translate(323,0)" >
 
121
<title>charmworld</title>
 
122
<circle cx="90" cy="90" r="90" class="service-block" fill="#f5f5f5" stroke="#888" stroke-width="1" />
 
123
<circle cx="47" cy="49" r="45" id="service-icon-mask-charmworld" fill="none" />
 
124
<clipPath id="clip-charmworld" ><use x="0" y="0" xlink:href="#service-icon-mask-charmworld" />
 
125
</clipPath>
 
126
<use x="0" y="0" xlink:href="#icon-1" transform="translate(42,42)" width="96" height="96" clip-path="url(#clip-charmworld)" />
 
127
<rect x="0" y="135" width="180" height="32" rx="2" ry="2" fill="rgba(220, 220, 220, 0.8)" />
 
128
<text x="90" y="157" text-anchor="middle" style="font-weight:200" >charmworld</text>
 
129
</g>
 
130
<g transform="translate(0,257)" >
 
131
<title>elasticsearch</title>
 
132
<circle cx="90" cy="90" r="90" class="service-block" fill="#f5f5f5" stroke="#888" stroke-width="1" />
 
133
<circle cx="47" cy="49" r="45" id="service-icon-mask-elasticsearch" fill="none" />
 
134
<clipPath id="clip-elasticsearch" ><use x="0" y="0" xlink:href="#service-icon-mask-elasticsearch" />
 
135
</clipPath>
 
136
<use x="0" y="0" xlink:href="#icon-2" transform="translate(42,42)" width="96" height="96" clip-path="url(#clip-elasticsearch)" />
 
137
<rect x="0" y="135" width="180" height="32" rx="2" ry="2" fill="rgba(220, 220, 220, 0.8)" />
 
138
<text x="90" y="157" text-anchor="middle" style="font-weight:200" >elasticsearch</text>
 
139
</g>
 
140
<g transform="translate(450,276)" >
 
141
<title>mongodb</title>
 
142
<circle cx="90" cy="90" r="90" class="service-block" fill="#f5f5f5" stroke="#888" stroke-width="1" />
 
143
<circle cx="47" cy="49" r="45" id="service-icon-mask-mongodb" fill="none" />
 
144
<clipPath id="clip-mongodb" ><use x="0" y="0" xlink:href="#service-icon-mask-mongodb" />
 
145
</clipPath>
 
146
<use x="0" y="0" xlink:href="#icon-3" transform="translate(42,42)"  width="96" height="96" clip-path="url(#clip-mongodb)" />
 
147
<rect x="0" y="135" width="180" height="32" rx="2" ry="2" fill="rgba(220, 220, 220, 0.8)" />
 
148
<text x="90" y="157" text-anchor="middle" style="font-weight:200" >mongodb</text>
131
149
</g>
132
150
</g>
133
151
</svg>
151
169
        assertXMLEqual(c, buf.Bytes(), []byte(`
152
170
<?xml version="1.0"?>
153
171
<!-- Generated by SVGo -->
154
 
<svg width="922" height="302"
155
 
     style="font-family:Ubuntu, sans-serif;" viewBox="0 0 922 302"
156
 
     xmlns="http://www.w3.org/2000/svg"
157
 
     xmlns:xlink="http://www.w3.org/1999/xlink">
 
172
<svg width="901" height="290"
 
173
         style="font-family:Ubuntu, sans-serif;" viewBox="0 0 901 290"
 
174
         xmlns="http://www.w3.org/2000/svg"
 
175
         xmlns:xlink="http://www.w3.org/1999/xlink">
158
176
<defs>
159
 
<g id="serviceBlock" transform="scale(0.8)" >
160
 
 
161
 
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
162
 
         width="235.958px" height="235.958px" viewBox="-143.979 -6 235.958 235.958" enable-background="new -143.979 -6 235.958 235.958"
163
 
         xml:space="preserve">
164
 
<g id="Layer_1" inkscape:version="0.48.3.1 r9886" sodipodi:docname="service_module.svg" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape">
165
 
        <g id="g33_1_" transform="translate(-399.571,-251.207)">
166
 
                <g id="path46_1_">
167
 
                        <path fill="#BBBBBB" d="M410.565,479.165h-73.988c-38.324,0-57.56,0-68.272-10.713c-10.712-10.713-10.712-29.949-10.712-68.273
168
 
                                v-73.986c-0.001-38.324-0.001-57.561,10.711-68.273c10.713-10.713,29.949-10.713,68.274-10.713h73.988
169
 
                                c38.324,0,57.561,0,68.272,10.713c10.713,10.712,10.713,29.949,10.713,68.273v73.986c0,38.324,0,57.561-10.713,68.273
170
 
                                C468.126,479.165,448.889,479.165,410.565,479.165z M336.577,257.207c-34.445,0-53.419,0-61.203,7.784
171
 
                                s-7.783,26.757-7.782,61.202v73.986c0,34.444,0,53.419,7.784,61.202c7.784,7.784,26.757,7.784,61.201,7.784h73.988
172
 
                                c34.444,0,53.418,0,61.202-7.784c7.783-7.783,7.783-26.758,7.783-61.202v-73.986c0-34.444,0-53.418-7.783-61.202
173
 
                                c-7.784-7.784-26.758-7.784-61.202-7.784H336.577z"/>
174
 
                </g>
175
 
                <g id="path59_1_">
176
 
                        <path fill="#BBBBBB" d="M410.565,479.165h-73.988c-38.324,0-57.56,0-68.272-10.713c-10.712-10.713-10.712-29.949-10.712-68.273
177
 
                                v-73.986c0-38.324,0-57.561,10.712-68.273c10.713-10.713,29.949-10.713,68.272-10.713h73.988c38.324,0,57.561,0,68.272,10.713
178
 
                                c10.713,10.712,10.713,29.949,10.713,68.273v73.986c0,38.324,0,57.561-10.713,68.273
179
 
                                C468.126,479.165,448.889,479.165,410.565,479.165z M336.577,257.207c-34.444,0-53.417,0-61.201,7.784
180
 
                                s-7.784,26.758-7.784,61.202v73.986c0,34.444,0,53.419,7.784,61.202c7.784,7.784,26.757,7.784,61.201,7.784h73.988
181
 
                                c34.444,0,53.418,0,61.201-7.784c7.784-7.783,7.784-26.758,7.784-61.202v-73.986c0-34.444,0-53.418-7.784-61.202
182
 
                                c-7.783-7.784-26.757-7.784-61.201-7.784H336.577z"/>
183
 
                </g>
184
 
        </g>
185
 
        <path fill-rule="evenodd" clip-rule="evenodd" fill="#BBBBBB" d="M-42,219.958h32c2.209,0,4,1.791,4,4v2c0,2.209-1.791,4-4,4h-32
186
 
                c-2.209,0-4-1.791-4-4v-2C-46,221.749-44.209,219.958-42,219.958z"/>
187
 
        <path fill-rule="evenodd" clip-rule="evenodd" fill="#BBBBBB" d="M-42-6h32c2.209,0,4,1.791,4,4v2c0,2.209-1.791,4-4,4h-32
188
 
                c-2.209,0-4-1.791-4-4v-2C-46-4.209-44.209-6-42-6z"/>
189
 
        <path fill-rule="evenodd" clip-rule="evenodd" fill="#BBBBBB" d="M81.979,127.979v-32c0-2.209,1.791-4,4-4h2c2.209,0,4,1.791,4,4
190
 
                v32c0,2.209-1.791,4-4,4h-2C83.771,131.979,81.979,130.188,81.979,127.979z"/>
191
 
        <path fill-rule="evenodd" clip-rule="evenodd" fill="#BBBBBB" d="M-143.979,127.979v-32c0-2.209,1.791-4,4-4h2c2.209,0,4,1.791,4,4
192
 
                v32c0,2.209-1.791,4-4,4h-2C-142.188,131.979-143.979,130.188-143.979,127.979z"/>
193
 
        <path fill="#FFFFFF" d="M10.994-1h-73.988c-73.987,0-73.987,0-73.985,73.986v73.986c0,73.986,0,73.986,73.985,73.986h73.988
194
 
                c73.985,0,73.985,0,73.985-73.986V72.986C84.979-1,84.979-1,10.994-1z"/>
195
 
</g>
196
 
<g id="Layer_2">
197
 
</g>
198
 
</svg>
199
 
</g>
200
 
<g id="healthCircle">
201
 
<circle cx="10" cy="10" r="10" style="stroke:#38B44A;fill:none;stroke-width:2px"/>
202
 
<circle cx="10" cy="10" r="5" style="fill:#38B44A"/>
 
177
<g id="healthCircle" transform="scale(1.1)" >`+assets.RelationIconHealthy+`
203
178
</g>
204
179
<svg:svg xmlns:svg="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="icon-1">
205
180
&#x9;&#x9;&#x9;&#x9;&#x9;<svg:image width="96" height="96" xlink:href="http://0.1.2.3/~juju-jitsu/precise/charmworld-58.svg"></svg:image>
209
184
&#x9;&#x9;&#x9;&#x9;&#x9;<svg:image width="96" height="96" xlink:href="http://0.1.2.3/precise/mongodb-21.svg"></svg:image>
210
185
&#x9;&#x9;&#x9;&#x9;</svg:svg></defs>
211
186
<g id="relations">
212
 
<line x1="733" y1="207" x2="189" y2="94" stroke="#38B44A" stroke-width="2px" stroke-dasharray="267.81, 20" />
213
 
<use x="451" y="140" xlink:href="#healthCircle" />
214
 
<line x1="733" y1="207" x2="639" y2="113" stroke="#38B44A" stroke-width="2px" stroke-dasharray="56.47, 20" />
215
 
<use x="676" y="150" xlink:href="#healthCircle" />
 
187
<g>
 
188
<title>charmworld:essearch elasticsearch:essearch</title>
 
189
<line x1="810" y1="199" x2="90" y2="90" stroke="#a7a7a7" stroke-width="1px" stroke-dasharray="356.10, 16" />
 
190
<use x="442" y="136" xlink:href="#healthCircle" />
 
191
<circle cx="721" cy="185" r="4" fill="#a7a7a7" />
 
192
<circle cx="178" cy="103" r="4" fill="#a7a7a7" />
 
193
</g>
 
194
<g>
 
195
<title>charmworld:database mongodb:database</title>
 
196
<line x1="810" y1="199" x2="540" y2="109" stroke="#a7a7a7" stroke-width="1px" stroke-dasharray="134.30, 16" />
 
197
<use x="667" y="146" xlink:href="#healthCircle" />
 
198
<circle cx="724" cy="170" r="4" fill="#a7a7a7" />
 
199
<circle cx="625" cy="137" r="4" fill="#a7a7a7" />
 
200
</g>
216
201
</g>
217
202
<g id="services">
218
 
<use x="733" y="113" xlink:href="#serviceBlock" id="charmworld" />
219
 
<use x="779" y="159" xlink:href="#icon-1" width="96" height="96" />
220
 
<g style="font-size:18px;fill:#505050;text-anchor:middle">
221
 
<text x="827" y="144" >charmworld</text>
222
 
</g>
223
 
<use x="0" y="0" xlink:href="#serviceBlock" id="elasticsearch" />
224
 
<use x="46" y="46" xlink:href="#icon-2" width="96" height="96" />
225
 
<g style="font-size:18px;fill:#505050;text-anchor:middle">
226
 
<text x="94" y="31" >elasticsearch</text>
227
 
</g>
228
 
<use x="450" y="19" xlink:href="#serviceBlock" id="mongodb" />
229
 
<use x="496" y="65" xlink:href="#icon-3" width="96" height="96" />
230
 
<g style="font-size:18px;fill:#505050;text-anchor:middle">
231
 
<text x="544" y="50" >mongodb</text>
 
203
<g transform="translate(720,109)" >
 
204
<title>charmworld</title>
 
205
<circle cx="90" cy="90" r="90" class="service-block" fill="#f5f5f5" stroke="#888" stroke-width="1" />
 
206
<circle cx="47" cy="49" r="45" id="service-icon-mask-charmworld" fill="none" />
 
207
<clipPath id="clip-charmworld" ><use x="0" y="0" xlink:href="#service-icon-mask-charmworld" />
 
208
</clipPath>
 
209
<use x="0" y="0" xlink:href="#icon-1" transform="translate(42,42)" width="96" height="96" clip-path="url(#clip-charmworld)" />
 
210
<rect x="0" y="135" width="180" height="32" rx="2" ry="2" fill="rgba(220, 220, 220, 0.8)" />
 
211
<text x="90" y="157" text-anchor="middle" style="font-weight:200" >charmworld</text>
 
212
</g>
 
213
<g transform="translate(0,0)" >
 
214
<title>elasticsearch</title>
 
215
<circle cx="90" cy="90" r="90" class="service-block" fill="#f5f5f5" stroke="#888" stroke-width="1" />
 
216
<circle cx="47" cy="49" r="45" id="service-icon-mask-elasticsearch" fill="none" />
 
217
<clipPath id="clip-elasticsearch" ><use x="0" y="0" xlink:href="#service-icon-mask-elasticsearch" />
 
218
</clipPath>
 
219
<use x="0" y="0" xlink:href="#icon-2" transform="translate(42,42)" width="96" height="96" clip-path="url(#clip-elasticsearch)" />
 
220
<rect x="0" y="135" width="180" height="32" rx="2" ry="2" fill="rgba(220, 220, 220, 0.8)" />
 
221
<text x="90" y="157" text-anchor="middle" style="font-weight:200" >elasticsearch</text>
 
222
</g>
 
223
<g transform="translate(450,19)" >
 
224
<title>mongodb</title>
 
225
<circle cx="90" cy="90" r="90" class="service-block" fill="#f5f5f5" stroke="#888" stroke-width="1" />
 
226
<circle cx="47" cy="49" r="45" id="service-icon-mask-mongodb" fill="none" />
 
227
<clipPath id="clip-mongodb" ><use x="0" y="0" xlink:href="#service-icon-mask-mongodb" />
 
228
</clipPath>
 
229
<use x="0" y="0" xlink:href="#icon-3" transform="translate(42,42)" width="96" height="96" clip-path="url(#clip-mongodb)" />
 
230
<rect x="0" y="135" width="180" height="32" rx="2" ry="2" fill="rgba(220, 220, 220, 0.8)" />
 
231
<text x="90" y="157" text-anchor="middle" style="font-weight:200" >mongodb</text>
232
232
</g>
233
233
</g>
234
234
</svg>
250
250
        assertXMLEqual(c, buf.Bytes(), []byte(`
251
251
<?xml version="1.0"?>
252
252
<!-- Generated by SVGo -->
253
 
<svg width="639" height="465"
254
 
     style="font-family:Ubuntu, sans-serif;" viewBox="0 0 639 465"
 
253
<svg width="631" height="457"
 
254
     style="font-family:Ubuntu, sans-serif;" viewBox="0 0 631 457"
255
255
     xmlns="http://www.w3.org/2000/svg"
256
256
     xmlns:xlink="http://www.w3.org/1999/xlink">
257
257
<defs>
258
 
<g id="serviceBlock" transform="scale(0.8)" >`+assets.ServiceModule+`
259
 
</g>
260
 
<g id="healthCircle">
261
 
<circle cx="10" cy="10" r="10" style="stroke:#38B44A;fill:none;stroke-width:2px"/>
262
 
<circle cx="10" cy="10" r="5" style="fill:#38B44A"/>
 
258
<g id="healthCircle" transform="scale(1.1)" >`+assets.RelationIconHealthy+`
263
259
</g>
264
260
</defs>
265
261
<g id="relations">
266
 
<line x1="417" y1="189" x2="189" y2="351" stroke="#38B44A" stroke-width="2px" stroke-dasharray="129.85, 20" />
267
 
<use x="293" y="260" xlink:href="#healthCircle" />
268
 
<line x1="417" y1="189" x2="544" y2="276" stroke="#38B44A" stroke-width="2px" stroke-dasharray="66.97, 20" />
269
 
<use x="470" y="222" xlink:href="#healthCircle" />
 
262
<g>
 
263
<title>charmworld:essearch elasticsearch:essearch</title>
 
264
<line x1="413" y1="90" x2="90" y2="347" stroke="#a7a7a7" stroke-width="1px" stroke-dasharray="198.38, 16" />
 
265
<use x="243" y="210" xlink:href="#healthCircle" />
 
266
<circle cx="342" cy="146" r="4" fill="#a7a7a7" />
 
267
<circle cx="160" cy="290" r="4" fill="#a7a7a7" />
 
268
</g>
 
269
<g>
 
270
<title>charmworld:database mongodb:database</title>
 
271
<line x1="413" y1="90" x2="540" y2="366" stroke="#a7a7a7" stroke-width="1px" stroke-dasharray="143.91, 16" />
 
272
<use x="468" y="220" xlink:href="#healthCircle" />
 
273
<circle cx="450" cy="171" r="4" fill="#a7a7a7" />
 
274
<circle cx="502" cy="284" r="4" fill="#a7a7a7" />
 
275
</g>
270
276
</g>
271
277
<g id="services">
272
 
<use x="323" y="0" xlink:href="#serviceBlock" id="charmworld" />
273
 
<image x="369" y="46" width="96" height="96" xlink:href="http://0.1.2.3/~juju-jitsu/precise/charmworld-58.svg" />
274
 
<g style="font-size:18px;fill:#505050;text-anchor:middle">
275
 
<text x="417" y="31" >charmworld</text>
276
 
</g>
277
 
<use x="0" y="257" xlink:href="#serviceBlock" id="elasticsearch" />
278
 
<image x="46" y="303" width="96" height="96" xlink:href="http://0.1.2.3/~charming-devs/precise/elasticsearch-2.svg" />
279
 
<g style="font-size:18px;fill:#505050;text-anchor:middle">
280
 
<text x="94" y="288" >elasticsearch</text>
281
 
</g>
282
 
<use x="450" y="276" xlink:href="#serviceBlock" id="mongodb" />
283
 
<image x="496" y="322" width="96" height="96" xlink:href="http://0.1.2.3/precise/mongodb-21.svg" />
284
 
<g style="font-size:18px;fill:#505050;text-anchor:middle">
285
 
<text x="544" y="307" >mongodb</text>
 
278
<g transform="translate(323,0)" >
 
279
<title>charmworld</title>
 
280
<circle cx="90" cy="90" r="90" class="service-block" fill="#f5f5f5" stroke="#888" stroke-width="1" />
 
281
<circle cx="47" cy="49" r="45" id="service-icon-mask-charmworld" fill="none" />
 
282
<clipPath id="clip-charmworld" ><use x="0" y="0" xlink:href="#service-icon-mask-charmworld" />
 
283
</clipPath>
 
284
<image x="42" y="42" width="96" height="96" xlink:href="http://0.1.2.3/~juju-jitsu/precise/charmworld-58.svg" clip-path="url(#clip-charmworld)" />
 
285
<rect x="0" y="135" width="180" height="32" rx="2" ry="2" fill="rgba(220, 220, 220, 0.8)" />
 
286
<text x="90" y="157" text-anchor="middle" style="font-weight:200" >charmworld</text>
 
287
</g>
 
288
<g transform="translate(0,257)" >
 
289
<title>elasticsearch</title>
 
290
<circle cx="90" cy="90" r="90" class="service-block" fill="#f5f5f5" stroke="#888" stroke-width="1" />
 
291
<circle cx="47" cy="49" r="45" id="service-icon-mask-elasticsearch" fill="none" />
 
292
<clipPath id="clip-elasticsearch" ><use x="0" y="0" xlink:href="#service-icon-mask-elasticsearch" />
 
293
</clipPath>
 
294
<image x="42" y="42" width="96" height="96" xlink:href="http://0.1.2.3/~charming-devs/precise/elasticsearch-2.svg" clip-path="url(#clip-elasticsearch)" />
 
295
<rect x="0" y="135" width="180" height="32" rx="2" ry="2" fill="rgba(220, 220, 220, 0.8)" />
 
296
<text x="90" y="157" text-anchor="middle" style="font-weight:200" >elasticsearch</text>
 
297
</g>
 
298
<g transform="translate(450,276)" >
 
299
<title>mongodb</title>
 
300
<circle cx="90" cy="90" r="90" class="service-block" fill="#f5f5f5" stroke="#888" stroke-width="1" />
 
301
<circle cx="47" cy="49" r="45" id="service-icon-mask-mongodb" fill="none" />
 
302
<clipPath id="clip-mongodb" ><use x="0" y="0" xlink:href="#service-icon-mask-mongodb" />
 
303
</clipPath>
 
304
<image x="42" y="42" width="96" height="96" xlink:href="http://0.1.2.3/precise/mongodb-21.svg" clip-path="url(#clip-mongodb)" />
 
305
<rect x="0" y="135" width="180" height="32" rx="2" ry="2" fill="rgba(220, 220, 220, 0.8)" />
 
306
<text x="90" y="157" text-anchor="middle" style="font-weight:200" >mongodb</text>
286
307
</g>
287
308
</g>
288
309
</svg>
313
334
        assertXMLEqual(c, buf.Bytes(), []byte(`
314
335
<?xml version="1.0"?>
315
336
<!-- Generated by SVGo -->
316
 
<svg width="639" height="465"
317
 
     style="font-family:Ubuntu, sans-serif;" viewBox="0 0 639 465"
 
337
<svg width="631" height="457"
 
338
     style="font-family:Ubuntu, sans-serif;" viewBox="0 0 631 457"
318
339
     xmlns="http://www.w3.org/2000/svg"
319
340
     xmlns:xlink="http://www.w3.org/1999/xlink">
320
341
<defs>
321
 
<g id="serviceBlock" transform="scale(0.8)" >`+assets.ServiceModule+`
322
 
</g>
323
 
<g id="healthCircle">
324
 
<circle cx="10" cy="10" r="10" style="stroke:#38B44A;fill:none;stroke-width:2px"/>
325
 
<circle cx="10" cy="10" r="5" style="fill:#38B44A"/>
326
 
</g>
327
 
<svg:svg xmlns:svg="http://www.w3.org/2000/svg" id="icon-1"></svg:svg>
328
 
<svg:svg xmlns:svg="http://www.w3.org/2000/svg" id="icon-2"></svg:svg>
329
 
<svg:svg xmlns:svg="http://www.w3.org/2000/svg" id="icon-3"></svg:svg>
330
 
</defs>
 
342
<g id="healthCircle" transform="scale(1.1)" >`+assets.RelationIconHealthy+`
 
343
</g>
 
344
<svg:svg xmlns:svg="http://www.w3.org/2000/svg" id="icon-1"></svg:svg><svg:svg xmlns:svg="http://www.w3.org/2000/svg" id="icon-2"></svg:svg><svg:svg xmlns:svg="http://www.w3.org/2000/svg" id="icon-3"></svg:svg></defs>
331
345
<g id="relations">
332
 
<line x1="417" y1="189" x2="189" y2="351" stroke="#38B44A" stroke-width="2px" stroke-dasharray="129.85, 20" />
333
 
<use x="293" y="260" xlink:href="#healthCircle" />
334
 
<line x1="417" y1="189" x2="544" y2="276" stroke="#38B44A" stroke-width="2px" stroke-dasharray="66.97, 20" />
335
 
<use x="470" y="222" xlink:href="#healthCircle" />
 
346
<g>
 
347
<title>charmworld:essearch elasticsearch:essearch</title>
 
348
<line x1="413" y1="90" x2="90" y2="347" stroke="#a7a7a7" stroke-width="1px" stroke-dasharray="198.38, 16" />
 
349
<use x="243" y="210" xlink:href="#healthCircle" />
 
350
<circle cx="342" cy="146" r="4" fill="#a7a7a7" />
 
351
<circle cx="160" cy="290" r="4" fill="#a7a7a7" />
 
352
</g>
 
353
<g>
 
354
<title>charmworld:database mongodb:database</title>
 
355
<line x1="413" y1="90" x2="540" y2="366" stroke="#a7a7a7" stroke-width="1px" stroke-dasharray="143.91, 16" />
 
356
<use x="468" y="220" xlink:href="#healthCircle" />
 
357
<circle cx="450" cy="171" r="4" fill="#a7a7a7" />
 
358
<circle cx="502" cy="284" r="4" fill="#a7a7a7" />
 
359
</g>
336
360
</g>
337
361
<g id="services">
338
 
<use x="323" y="0" xlink:href="#serviceBlock" id="charmworld" />
339
 
<use x="369" y="46" xlink:href="#icon-1" width="96" height="96" />
340
 
<g style="font-size:18px;fill:#505050;text-anchor:middle">
341
 
<text x="417" y="31" >charmworld</text>
342
 
</g>
343
 
<use x="0" y="257" xlink:href="#serviceBlock" id="elasticsearch" />
344
 
<use x="46" y="303" xlink:href="#icon-2" width="96" height="96" />
345
 
<g style="font-size:18px;fill:#505050;text-anchor:middle">
346
 
<text x="94" y="288" >elasticsearch</text>
347
 
</g>
348
 
<use x="450" y="276" xlink:href="#serviceBlock" id="mongodb" />
349
 
<use x="496" y="322" xlink:href="#icon-3" width="96" height="96" />
350
 
<g style="font-size:18px;fill:#505050;text-anchor:middle">
351
 
<text x="544" y="307" >mongodb</text>
 
362
<g transform="translate(323,0)" >
 
363
<title>charmworld</title>
 
364
<circle cx="90" cy="90" r="90" class="service-block" fill="#f5f5f5" stroke="#888" stroke-width="1" />
 
365
<circle cx="47" cy="49" r="45" id="service-icon-mask-charmworld" fill="none" />
 
366
<clipPath id="clip-charmworld" ><use x="0" y="0" xlink:href="#service-icon-mask-charmworld" />
 
367
</clipPath>
 
368
<use x="0" y="0" xlink:href="#icon-1" transform="translate(42,42)" width="96" height="96" clip-path="url(#clip-charmworld)" />
 
369
<rect x="0" y="135" width="180" height="32" rx="2" ry="2" fill="rgba(220, 220, 220, 0.8)" />
 
370
<text x="90" y="157" text-anchor="middle" style="font-weight:200" >charmworld</text>
 
371
</g>
 
372
<g transform="translate(0,257)" >
 
373
<title>elasticsearch</title>
 
374
<circle cx="90" cy="90" r="90" class="service-block" fill="#f5f5f5" stroke="#888" stroke-width="1" />
 
375
<circle cx="47" cy="49" r="45" id="service-icon-mask-elasticsearch" fill="none" />
 
376
<clipPath id="clip-elasticsearch" ><use x="0" y="0" xlink:href="#service-icon-mask-elasticsearch" />
 
377
</clipPath>
 
378
<use x="0" y="0" xlink:href="#icon-2" transform="translate(42,42)" width="96" height="96" clip-path="url(#clip-elasticsearch)" />
 
379
<rect x="0" y="135" width="180" height="32" rx="2" ry="2" fill="rgba(220, 220, 220, 0.8)" />
 
380
<text x="90" y="157" text-anchor="middle" style="font-weight:200" >elasticsearch</text>
 
381
</g>
 
382
<g transform="translate(450,276)" >
 
383
<title>mongodb</title>
 
384
<circle cx="90" cy="90" r="90" class="service-block" fill="#f5f5f5" stroke="#888" stroke-width="1" />
 
385
<circle cx="47" cy="49" r="45" id="service-icon-mask-mongodb" fill="none" />
 
386
<clipPath id="clip-mongodb" ><use x="0" y="0" xlink:href="#service-icon-mask-mongodb" />
 
387
</clipPath>
 
388
<use x="0" y="0" xlink:href="#icon-3" transform="translate(42,42)" width="96" height="96" clip-path="url(#clip-mongodb)" />
 
389
<rect x="0" y="135" width="180" height="32" rx="2" ry="2" fill="rgba(220, 220, 220, 0.8)" />
 
390
<text x="90" y="157" text-anchor="middle" style="font-weight:200" >mongodb</text>
352
391
</g>
353
392
</g>
354
393
</svg>