pdfium/fpdfsdk/fpdf_view_unittest.cpp
K. Moon 832a694e52 Update old-style copyright headers
Updates old-style copyright headers to the new style, by removing "All
rights reserved." Also inserts "The" before "PDFium Authors", which is
required by both styles.

Mechanically generated by this command:
  PATTERN='Copyright \([0-9]\+\) \(The \)\?PDFium Authors. All rights reserved.'
  git grep -l "$PATTERN" \
  | xargs sed "s/$PATTERN/Copyright \1 The PDFium Authors/" -i''

Fixed: pdfium:1884
Change-Id: I6f781d811df8839e2e21b85f716529b813828bcd
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/100371
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: K. Moon <kmoon@chromium.org>
2022-10-31 20:11:31 +00:00

57 lines
1.4 KiB
C++

// Copyright 2019 The PDFium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "public/fpdfview.h"
#include "testing/gtest/include/gtest/gtest.h"
#ifdef PDF_ENABLE_XFA
TEST(FPDFView, BstrBadArgs) {
EXPECT_EQ(-1, FPDF_BStr_Init(nullptr));
EXPECT_EQ(-1, FPDF_BStr_Set(nullptr, "clams", -1));
EXPECT_EQ(-1, FPDF_BStr_Clear(nullptr));
}
TEST(FPDFView, BstrEmpty) {
FPDF_BSTR bst;
EXPECT_EQ(0, FPDF_BStr_Init(&bst));
EXPECT_FALSE(bst.str);
EXPECT_FALSE(bst.len);
EXPECT_EQ(0, FPDF_BStr_Clear(&bst));
}
TEST(FPDFView, BstrNormal) {
FPDF_BSTR bst;
EXPECT_EQ(0, FPDF_BStr_Init(&bst));
EXPECT_EQ(0, FPDF_BStr_Set(&bst, "clams", -1));
EXPECT_STREQ("clams", bst.str);
EXPECT_EQ(5, bst.len);
EXPECT_EQ(0, FPDF_BStr_Clear(&bst));
EXPECT_FALSE(bst.str);
EXPECT_FALSE(bst.len);
}
TEST(FPDFView, BstrReassign) {
FPDF_BSTR bst;
EXPECT_EQ(0, FPDF_BStr_Init(&bst));
EXPECT_EQ(0, FPDF_BStr_Set(&bst, "clams", 3));
EXPECT_STREQ("cla", bst.str);
EXPECT_EQ(3, bst.len);
EXPECT_EQ(0, FPDF_BStr_Set(&bst, "clams", 5));
EXPECT_STREQ("clams", bst.str);
EXPECT_EQ(5, bst.len);
EXPECT_EQ(0, FPDF_BStr_Set(&bst, "clams", 1));
EXPECT_STREQ("c", bst.str);
EXPECT_EQ(1, bst.len);
EXPECT_EQ(0, FPDF_BStr_Set(&bst, "clams", 0));
EXPECT_FALSE(bst.str);
EXPECT_EQ(0, bst.len);
EXPECT_EQ(0, FPDF_BStr_Clear(&bst));
}
#endif // PDF_ENABLE_XFA