|
14 | 14 | package helpers_test |
15 | 15 |
|
16 | 16 | import ( |
17 | | - "fmt" |
18 | 17 | "reflect" |
19 | 18 | "strings" |
20 | 19 | "testing" |
21 | 20 |
|
22 | 21 | "github.com/gohugoio/hugo/helpers" |
23 | 22 |
|
24 | 23 | qt "github.com/frankban/quicktest" |
25 | | - "github.com/spf13/afero" |
26 | 24 | ) |
27 | 25 |
|
28 | 26 | func TestResolveMarkup(t *testing.T) { |
@@ -256,93 +254,6 @@ func TestUniqueStringsSorted(t *testing.T) { |
256 | 254 | c.Assert(helpers.UniqueStringsSorted(nil), qt.IsNil) |
257 | 255 | } |
258 | 256 |
|
259 | | -func TestFastMD5FromFile(t *testing.T) { |
260 | | - fs := afero.NewMemMapFs() |
261 | | - |
262 | | - if err := afero.WriteFile(fs, "small.txt", []byte("abc"), 0o777); err != nil { |
263 | | - t.Fatal(err) |
264 | | - } |
265 | | - |
266 | | - if err := afero.WriteFile(fs, "small2.txt", []byte("abd"), 0o777); err != nil { |
267 | | - t.Fatal(err) |
268 | | - } |
269 | | - |
270 | | - if err := afero.WriteFile(fs, "bigger.txt", []byte(strings.Repeat("a bc d e", 100)), 0o777); err != nil { |
271 | | - t.Fatal(err) |
272 | | - } |
273 | | - |
274 | | - if err := afero.WriteFile(fs, "bigger2.txt", []byte(strings.Repeat("c d e f g", 100)), 0o777); err != nil { |
275 | | - t.Fatal(err) |
276 | | - } |
277 | | - |
278 | | - c := qt.New(t) |
279 | | - |
280 | | - sf1, err := fs.Open("small.txt") |
281 | | - c.Assert(err, qt.IsNil) |
282 | | - sf2, err := fs.Open("small2.txt") |
283 | | - c.Assert(err, qt.IsNil) |
284 | | - |
285 | | - bf1, err := fs.Open("bigger.txt") |
286 | | - c.Assert(err, qt.IsNil) |
287 | | - bf2, err := fs.Open("bigger2.txt") |
288 | | - c.Assert(err, qt.IsNil) |
289 | | - |
290 | | - defer sf1.Close() |
291 | | - defer sf2.Close() |
292 | | - defer bf1.Close() |
293 | | - defer bf2.Close() |
294 | | - |
295 | | - m1, _, err := helpers.MD5FromReaderFast(sf1) |
296 | | - c.Assert(err, qt.IsNil) |
297 | | - c.Assert(m1, qt.Equals, "e9c8989b64b71a88b4efb66ad05eea96") |
298 | | - |
299 | | - m2, _, err := helpers.MD5FromReaderFast(sf2) |
300 | | - c.Assert(err, qt.IsNil) |
301 | | - c.Assert(m2, qt.Not(qt.Equals), m1) |
302 | | - |
303 | | - m3, _, err := helpers.MD5FromReaderFast(bf1) |
304 | | - c.Assert(err, qt.IsNil) |
305 | | - c.Assert(m3, qt.Not(qt.Equals), m2) |
306 | | - |
307 | | - m4, _, err := helpers.MD5FromReaderFast(bf2) |
308 | | - c.Assert(err, qt.IsNil) |
309 | | - c.Assert(m4, qt.Not(qt.Equals), m3) |
310 | | - |
311 | | - m5, err := helpers.MD5FromReader(bf2) |
312 | | - c.Assert(err, qt.IsNil) |
313 | | - c.Assert(m5, qt.Not(qt.Equals), m4) |
314 | | -} |
315 | | - |
316 | | -func BenchmarkMD5FromFileFast(b *testing.B) { |
317 | | - fs := afero.NewMemMapFs() |
318 | | - |
319 | | - for _, full := range []bool{false, true} { |
320 | | - b.Run(fmt.Sprintf("full=%t", full), func(b *testing.B) { |
321 | | - for i := 0; i < b.N; i++ { |
322 | | - b.StopTimer() |
323 | | - if err := afero.WriteFile(fs, "file.txt", []byte(strings.Repeat("1234567890", 2000)), 0o777); err != nil { |
324 | | - b.Fatal(err) |
325 | | - } |
326 | | - f, err := fs.Open("file.txt") |
327 | | - if err != nil { |
328 | | - b.Fatal(err) |
329 | | - } |
330 | | - b.StartTimer() |
331 | | - if full { |
332 | | - if _, err := helpers.MD5FromReader(f); err != nil { |
333 | | - b.Fatal(err) |
334 | | - } |
335 | | - } else { |
336 | | - if _, _, err := helpers.MD5FromReaderFast(f); err != nil { |
337 | | - b.Fatal(err) |
338 | | - } |
339 | | - } |
340 | | - f.Close() |
341 | | - } |
342 | | - }) |
343 | | - } |
344 | | -} |
345 | | - |
346 | 257 | func BenchmarkUniqueStrings(b *testing.B) { |
347 | 258 | input := []string{"a", "b", "d", "e", "d", "h", "a", "i"} |
348 | 259 |
|
|
0 commit comments