• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2016 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #include "testing/embedder_test.h"
6 #include "testing/gtest/include/gtest/gtest.h"
7 
8 class CPDFSecurityHandlerEmbeddertest : public EmbedderTest {};
9 
TEST_F(CPDFSecurityHandlerEmbeddertest,Unencrypted)10 TEST_F(CPDFSecurityHandlerEmbeddertest, Unencrypted) {
11   ASSERT_TRUE(OpenDocument("about_blank.pdf"));
12   EXPECT_EQ(0xFFFFFFFF, FPDF_GetDocPermissions(document()));
13 }
14 
TEST_F(CPDFSecurityHandlerEmbeddertest,UnencryptedWithPassword)15 TEST_F(CPDFSecurityHandlerEmbeddertest, UnencryptedWithPassword) {
16   ASSERT_TRUE(OpenDocument("about_blank.pdf", "foobar"));
17   EXPECT_EQ(0xFFFFFFFF, FPDF_GetDocPermissions(document()));
18 }
19 
TEST_F(CPDFSecurityHandlerEmbeddertest,NoPassword)20 TEST_F(CPDFSecurityHandlerEmbeddertest, NoPassword) {
21   EXPECT_FALSE(OpenDocument("encrypted.pdf"));
22 }
23 
TEST_F(CPDFSecurityHandlerEmbeddertest,BadPassword)24 TEST_F(CPDFSecurityHandlerEmbeddertest, BadPassword) {
25   EXPECT_FALSE(OpenDocument("encrypted.pdf", "tiger"));
26 }
27 
TEST_F(CPDFSecurityHandlerEmbeddertest,UserPassword)28 TEST_F(CPDFSecurityHandlerEmbeddertest, UserPassword) {
29   ASSERT_TRUE(OpenDocument("encrypted.pdf", "1234"));
30   EXPECT_EQ(0xFFFFF2C0, FPDF_GetDocPermissions(document()));
31 }
32 
TEST_F(CPDFSecurityHandlerEmbeddertest,OwnerPassword)33 TEST_F(CPDFSecurityHandlerEmbeddertest, OwnerPassword) {
34   ASSERT_TRUE(OpenDocument("encrypted.pdf", "5678"));
35   EXPECT_EQ(0xFFFFFFFC, FPDF_GetDocPermissions(document()));
36 }
37 
TEST_F(CPDFSecurityHandlerEmbeddertest,NoPasswordVersion5)38 TEST_F(CPDFSecurityHandlerEmbeddertest, NoPasswordVersion5) {
39   ASSERT_FALSE(OpenDocument("bug_644.pdf"));
40 }
41 
TEST_F(CPDFSecurityHandlerEmbeddertest,BadPasswordVersion5)42 TEST_F(CPDFSecurityHandlerEmbeddertest, BadPasswordVersion5) {
43   ASSERT_FALSE(OpenDocument("bug_644.pdf", "tiger"));
44 }
45 
TEST_F(CPDFSecurityHandlerEmbeddertest,OwnerPasswordVersion5)46 TEST_F(CPDFSecurityHandlerEmbeddertest, OwnerPasswordVersion5) {
47   ASSERT_TRUE(OpenDocument("bug_644.pdf", "a"));
48   EXPECT_EQ(0xFFFFFFFC, FPDF_GetDocPermissions(document()));
49 }
50 
TEST_F(CPDFSecurityHandlerEmbeddertest,UserPasswordVersion5)51 TEST_F(CPDFSecurityHandlerEmbeddertest, UserPasswordVersion5) {
52   ASSERT_TRUE(OpenDocument("bug_644.pdf", "b"));
53   EXPECT_EQ(0xFFFFFFFC, FPDF_GetDocPermissions(document()));
54 }
55