Code Duplication    Length = 19-20 lines in 2 locations

tests/test_images.py 2 locations

@@ 162-181 (lines=20) @@
159
            expect(data).contains('width=67')
160
            expect(data).contains('height=89')
161
162
    def describe_watermark():
163
164
        def it_accept_supported_watermark(client):
165
            response = client.get("/iw/test.jpg?watermark=test")
166
167
            expect(response.status_code) == 200
168
            expect(response.mimetype) == 'image/jpeg'
169
170
        def it_redirects_with_unsupported_watermark(client):
171
            status, data = load(client.get(
172
                "/iw/test.jpg?watermark=unsupported"))
173
174
            expect(status) == 302
175
            expect(data).contains('<a href="/iw/test.jpg"')
176
177
        def it_keeps_watermark_after_redirect(client):
178
            status, data = load(client.get("/iw/test 2.jpg?watermark=test"))
179
180
            expect(status) == 302
181
            expect(data).contains('<a href="/iw/test_2.jpg?watermark=test"')
182
183
    def describe_preview():
184
@@ 131-149 (lines=19) @@
128
            expect(status) == 302
129
            expect(data).contains('<a href="/sad-biden/hello.jpg">')
130
131
    def describe_custom_font():
132
133
        def when_provided(client):
134
            response = client.get("/iw/hello.jpg?font=impact")
135
136
            expect(response.status_code) == 200
137
            expect(response.mimetype) == 'image/jpeg'
138
139
        def it_redirects_on_unknown_fonts(client):
140
            status, data = load(client.get("/iw/hello.jpg?font=__unknown__"))
141
142
            expect(status) == 302
143
            expect(data).contains('<a href="/iw/hello.jpg">')
144
145
        def it_keeps_font_after_redirect(client):
146
            status, data = load(client.get("/iw/what%3F.jpg?font=impact"))
147
148
            expect(status) == 302
149
            expect(data).contains('<a href="/iw/what~q.jpg?font=impact">')
150
151
    def describe_custom_size():
152