github.com/masterhung0112/hk_server/v5@v5.0.0-20220302090640-ec71aef15e1c/services/docextractor/pdf_test.go (about)

     1  // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
     2  // See LICENSE.txt for license information.
     3  
     4  package docextractor
     5  
     6  import (
     7  	"bytes"
     8  	"testing"
     9  
    10  	"github.com/masterhung0112/hk_server/v5/utils/testutils"
    11  	"github.com/stretchr/testify/require"
    12  )
    13  
    14  func TestPdfEmptyFile(t *testing.T) {
    15  	extractor := pdfExtractor{}
    16  	_, err := extractor.Extract("test.pdf", bytes.NewReader([]byte{}))
    17  	require.Error(t, err)
    18  }
    19  
    20  func TestPdfFile(t *testing.T) {
    21  	extractor := pdfExtractor{}
    22  	contentText := "This is a simple document that contains some text."
    23  	content, err := testutils.ReadTestFile("sample-doc.pdf")
    24  	require.NoError(t, err)
    25  	extractedText, err := extractor.Extract("sample-doc.pdf", bytes.NewReader(content))
    26  	require.NoError(t, err)
    27  	require.Equal(t, contentText, extractedText)
    28  }
    29  
    30  func TestWrongPdfFile(t *testing.T) {
    31  	extractor := pdfExtractor{}
    32  	content, err := testutils.ReadTestFile("sample-doc.docx")
    33  	require.NoError(t, err)
    34  	_, err = extractor.Extract("sample-doc.pdf", bytes.NewReader(content))
    35  	require.Error(t, err)
    36  }