#include "chrome/browser/printing/pdf_nup_converter_client.h"
#include <optional>
#include <string>
#include <string_view>
#include <utility>
#include <vector>
#include "base/containers/span.h"
#include "base/files/file_util.h"
#include "base/functional/bind.h"
#include "base/notreached.h"
#include "base/path_service.h"
#include "base/test/test_future.h"
#include "base/threading/thread_restrictions.h"
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/tabs/tab_strip_model.h"
#include "chrome/common/chrome_paths.h"
#include "chrome/test/base/in_process_browser_test.h"
#include "content/public/test/browser_test.h"
#include "pdf/pdf.h"
#include "printing/print_settings.h"
#include "ui/gfx/geometry/size_f.h"
namespace printing {
namespace {
base::FilePath GetTestDir() { … }
base::MappedReadOnlyRegion GetPdfRegion(const char* file_name) { … }
base::MappedReadOnlyRegion GetBadDataRegion() { … }
std::vector<gfx::SizeF> GetPdfPageSizes(base::span<const uint8_t> pdf_data) { … }
void VerifyPdf(base::span<const uint8_t> pdf_data,
base::span<const gfx::SizeF> expected_sizes) { … }
base::span<const gfx::SizeF> GetExpectedPdfSizes(std::string_view pdf_name) { … }
}
class PdfNupConverterClientBrowserTest : public InProcessBrowserTest { … };
IN_PROC_BROWSER_TEST_F(PdfNupConverterClientBrowserTest,
DocumentConvert2UpSuccess) { … }
IN_PROC_BROWSER_TEST_F(PdfNupConverterClientBrowserTest,
DocumentConvert4UpSuccess) { … }
IN_PROC_BROWSER_TEST_F(PdfNupConverterClientBrowserTest,
DocumentConvertBadData) { … }
IN_PROC_BROWSER_TEST_F(PdfNupConverterClientBrowserTest,
PagesConvert2UpSuccess) { … }
IN_PROC_BROWSER_TEST_F(PdfNupConverterClientBrowserTest, PagesConvertBadData) { … }
}