diff options
author | Kim "BKC" Carlbäcker <kim.carlbacker@gmail.com> | 2018-05-02 10:02:41 +0300 |
---|---|---|
committer | Kim "BKC" Carlbäcker <kim.carlbacker@gmail.com> | 2018-05-02 10:02:41 +0300 |
commit | 6544df89edb85cefeeca77a7f9a9b23306ace7cb (patch) | |
tree | edf313e6d2ef2b59aebe523677502942009dd5c3 | |
parent | c2b89b6dfefdd609d3a88075b40c1e2b118b5c2d (diff) |
Break test for WikiGetAllPagesbkc-break-wiki-get-all-pages
-rw-r--r-- | internal/service/wiki/get_all_pages_test.go | 4 | ||||
-rw-r--r-- | internal/service/wiki/testhelper_test.go | 1 | ||||
-rw-r--r-- | ruby/lib/gitaly_server/wiki_service.rb | 6 |
3 files changed, 6 insertions, 5 deletions
diff --git a/internal/service/wiki/get_all_pages_test.go b/internal/service/wiki/get_all_pages_test.go index 4fefa4ada..1b2af2ff8 100644 --- a/internal/service/wiki/get_all_pages_test.go +++ b/internal/service/wiki/get_all_pages_test.go @@ -28,7 +28,7 @@ func TestSuccessfulWikiGetAllPagesRequest(t *testing.T) { page1Name := "Page 1" page2Name := "Page 2" createTestWikiPage(t, client, wikiRepo, createWikiPageOpts{title: page1Name}) - page2Commit := createTestWikiPage(t, client, wikiRepo, createWikiPageOpts{title: page2Name}) + page2Commit := createTestWikiPage(t, client, wikiRepo, createWikiPageOpts{title: page2Name, content: nonUTF8Content}) expectedPage1 := &pb.WikiPage{ Version: &pb.WikiPageVersion{Commit: page2Commit, Format: "markdown"}, Title: []byte(page1Name), @@ -46,7 +46,7 @@ func TestSuccessfulWikiGetAllPagesRequest(t *testing.T) { UrlPath: "Page-2", Path: []byte("Page-2.md"), Name: []byte(page2Name), - RawData: mockPageContent, + RawData: nonUTF8Content, Historical: false, } diff --git a/internal/service/wiki/testhelper_test.go b/internal/service/wiki/testhelper_test.go index 65d27c966..a3b989963 100644 --- a/internal/service/wiki/testhelper_test.go +++ b/internal/service/wiki/testhelper_test.go @@ -30,6 +30,7 @@ type createWikiPageOpts struct { var ( mockPageContent = bytes.Repeat([]byte("Mock wiki page content"), 10000) + nonUTF8Content = bytes.Repeat([]byte("This is not valid UTF-8\xDC"), 10000) ) func TestMain(m *testing.M) { diff --git a/ruby/lib/gitaly_server/wiki_service.rb b/ruby/lib/gitaly_server/wiki_service.rb index cc59cf161..68704d4d5 100644 --- a/ruby/lib/gitaly_server/wiki_service.rb +++ b/ruby/lib/gitaly_server/wiki_service.rb @@ -89,7 +89,6 @@ module GitalyServer end def wiki_get_all_pages(request, call) - bridge_exceptions do repo = Gitlab::Git::Repository.from_gitaly(request.repository, call) wiki = Gitlab::Git::Wiki.new(repo) @@ -111,7 +110,7 @@ module GitalyServer io = StringIO.new(page.text_data) while chunk = io.read(Gitlab.config.git.write_buffer_size) - gitaly_wiki_page.raw_data = chunk + gitaly_wiki_page.raw_data = Gitlab::EncodingHelper.encode!(chunk) y.yield Gitaly::WikiGetAllPagesResponse.new(page: gitaly_wiki_page) @@ -121,7 +120,8 @@ module GitalyServer y.yield Gitaly::WikiGetAllPagesResponse.new(end_of_page: true) end end - end + rescue + warn caller[0..25].join(' ') end def wiki_find_file(request, call) |