#include "core/fpdfapi/parser/cpdf_object_avail.h"
#include <map>
#include <utility>
#include "core/fpdfapi/parser/cpdf_array.h"
#include "core/fpdfapi/parser/cpdf_dictionary.h"
#include "core/fpdfapi/parser/cpdf_indirect_object_holder.h"
#include "core/fpdfapi/parser/cpdf_read_validator.h"
#include "core/fpdfapi/parser/cpdf_reference.h"
#include "core/fpdfapi/parser/cpdf_string.h"
#include "core/fxcrt/check.h"
#include "core/fxcrt/fx_stream.h"
#include "core/fxcrt/notreached.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "testing/invalid_seekable_read_stream.h"
namespace {
class TestReadValidator final : public CPDF_ReadValidator { … };
class TestHolder final : public CPDF_IndirectObjectHolder { … };
class CPDF_ObjectAvailFailOnExclude final : public CPDF_ObjectAvail { … };
class CPDF_ObjectAvailExcludeArray final : public CPDF_ObjectAvail { … };
class CPDF_ObjectAvailExcludeTypeKey final : public CPDF_ObjectAvail { … };
}
TEST(ObjectAvailTest, OneObject) { … }
TEST(ObjectAvailTest, OneReferencedObject) { … }
TEST(ObjectAvailTest, CycledReferences) { … }
TEST(ObjectAvailTest, DoNotCheckParent) { … }
TEST(ObjectAvailTest, Generic) { … }
TEST(ObjectAvailTest, NotExcludeRoot) { … }
TEST(ObjectAvailTest, NotExcludeReferedRoot) { … }
TEST(ObjectAvailTest, Exclude) { … }
TEST(ObjectAvailTest, ReadErrorOnExclude) { … }
TEST(ObjectAvailTest, IgnoreNotExistsObject) { … }
TEST(ObjectAvailTest, CheckTwice) { … }
TEST(ObjectAvailTest, SelfReferedInlinedObject) { … }