hunk.code_window: 	_, resp = Client.GetEmojiImage(emoji4.Id)
   	CheckNotFoundStatus(t, resp)
   	_, resp = Client.GetEmojiImage(model.NewId())
   	CheckInternalErrorStatus(t, resp)
   	_, resp = Client.GetEmojiImage("")
   	CheckBadRequestStatus(t, resp)
   }
hunk.labels: keep keep keep keep replace keep keep keep keep
hunk.after_edit: 	CheckNotFoundStatus(t, resp)
  
hunk.file_path: api4/emoji_test.go
hunk.type: replace
file: // Copyright 2012 The Go Authors. All rights reserved.
  // Use of this source code is governed by a BSD-style
  // license that can be found in the LICENSE file.
  
  package atom
  
  import (
  	"sort"
  	"testing"
  )
  
  func TestKnown(t *testing.T) {
  	for _, s := range testAtomList {
  		if atom := Lookup([]byte(s)); atom.String() != s {
  			t.Errorf("Lookup(%q) = %#x (%q)", s, uint32(atom), atom.String())
  		}
  	}
  }
  
  func TestHits(t *testing.T) {
  	for _, a := range table {
  		if a == 0 {
  			continue
  		}
  		got := Lookup([]byte(a.String()))
  		if got != a {
  			t.Errorf("Lookup(%q) = %#x, want %#x", a.String(), uint32(got), uint32(a))
  		}
  	}
  }
  
  func TestMisses(t *testing.T) {
  	testCases := []string{
  		"",
  		"\x00",
  		"\xff",
  		"A",
  		"DIV",
  		"Div",
  		"dIV",
  		"aa",
  		"a\x00",
  		"ab",
  		"abb",
  		"abbr0",
  		"abbr ",
  		" abbr",
  		" a",
  		"acceptcharset",
  		"acceptCharset",
  		"accept_charset",
  		"h0",
  		"h1h2",
  		"h7",
  		"onClick",
  		"λ",
  		// The following string has the same hash (0xa1d7fab7) as "onmouseover".
  		"\x00\x00\x00\x00\x00\x50\x18\xae\x38\xd0\xb7",
  	}
  	for _, tc := range testCases {
  		got := Lookup([]byte(tc))
  		if got != 0 {
  			t.Errorf("Lookup(%q): got %d, want 0", tc, got)
  		}
  	}
  }
  
  func TestForeignObject(t *testing.T) {
  	const (
  		afo = Foreignobject
  		afO = ForeignObject
  		sfo = "foreignobject"
  		sfO = "foreignObject"
  	)
  	if got := Lookup([]byte(sfo)); got != afo {
  		t.Errorf("Lookup(%q): got %#v, want %#v", sfo, got, afo)
  	}
  	if got := Lookup([]byte(sfO)); got != afO {
  		t.Errorf("Lookup(%q): got %#v, want %#v", sfO, got, afO)
  	}
  	if got := afo.String(); got != sfo {
  		t.Errorf("Atom(%#v).String(): got %q, want %q", afo, got, sfo)
  	}
  	if got := afO.String(); got != sfO {
  		t.Errorf("Atom(%#v).String(): got %q, want %q", afO, got, sfO)
  	}
  }
  
  func BenchmarkLookup(b *testing.B) {
  	sortedTable := make([]string, 0, len(table))
  	for _, a := range table {
  		if a != 0 {
  			sortedTable = append(sortedTable, a.String())
  		}
  	}
  	sort.Strings(sortedTable)
  
  	x := make([][]byte, 1000)
  	for i := range x {
  		x[i] = []byte(sortedTable[i%len(sortedTable)])
  	}
  
  	b.ResetTimer()
  	for i := 0; i < b.N; i++ {
  		for _, s := range x {
  			Lookup(s)
  		}
  	}
  }
  