mirror of
https://github.com/ONLYOFFICE/core.git
synced 2026-04-07 13:55:33 +08:00
Refactor odf test project
This commit is contained in:
@ -56,3 +56,37 @@ boost::shared_ptr<cpdoccore::oox::pptx_conversion_context> Convert(boost::shared
|
||||
|
||||
return conversionContext;
|
||||
}
|
||||
|
||||
ODP2OOX_AnimationEnvironment::ODP2OOX_AnimationEnvironment(const std::wstring& exampleFilename, boost::shared_ptr<cpdoccore::odf_reader::odf_document>* doc, boost::shared_ptr<cpdoccore::oox::pptx_conversion_context>* context)
|
||||
: testing::Environment()
|
||||
{
|
||||
sExampleFilename = NSFile::GetFileName(exampleFilename);
|
||||
mDocument = doc;
|
||||
mContext = context;
|
||||
}
|
||||
|
||||
ODP2OOX_AnimationEnvironment::~ODP2OOX_AnimationEnvironment()
|
||||
{
|
||||
}
|
||||
|
||||
void ODP2OOX_AnimationEnvironment::SetUp()
|
||||
{
|
||||
std::wstring rootDir = NSFile::GetProcessDirectory() + CH_DIR("..");
|
||||
std::wstring sExampleFilesDirectory = rootDir + CH_DIR("ExampleFiles");
|
||||
|
||||
sFrom = sExampleFilesDirectory + FILE_SEPARATOR_STR + sExampleFilename;
|
||||
sTemp = sFrom + _T(".tmp");
|
||||
sTempUnpackedOdf = sTemp + CH_DIR("odf_unpacked");
|
||||
|
||||
NSDirectory::CreateDirectory(sTemp);
|
||||
NSDirectory::CreateDirectory(sTempUnpackedOdf);
|
||||
|
||||
*mDocument = ReadOdfDocument(sFrom, sTemp, sTempUnpackedOdf);
|
||||
*mContext = Convert(*mDocument);
|
||||
}
|
||||
|
||||
void ODP2OOX_AnimationEnvironment::TearDown()
|
||||
{
|
||||
NSDirectory::DeleteDirectory(sTemp);
|
||||
}
|
||||
|
||||
|
||||
@ -32,12 +32,33 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <boost/shared_ptr.hpp>
|
||||
|
||||
#include "gtest/gtest.h"
|
||||
#include "Reader/Converter/pptx_conversion_context.h"
|
||||
#include "Reader/Format/odf_document.h"
|
||||
|
||||
#include <boost/shared_ptr.hpp>
|
||||
#include <string>
|
||||
|
||||
#define CH_DIR(x) FILE_SEPARATOR_STR + _T(x)
|
||||
|
||||
boost::shared_ptr<cpdoccore::odf_reader::odf_document> ReadOdfDocument(const std::wstring& from, const std::wstring& temp, const std::wstring& tempUnpackedOdf);
|
||||
boost::shared_ptr<cpdoccore::oox::pptx_conversion_context> Convert(boost::shared_ptr<cpdoccore::odf_reader::odf_document> inputOdf);
|
||||
boost::shared_ptr<cpdoccore::oox::pptx_conversion_context> Convert(boost::shared_ptr<cpdoccore::odf_reader::odf_document> inputOdf);
|
||||
|
||||
class ODP2OOX_AnimationEnvironment : public ::testing::Environment
|
||||
{
|
||||
public:
|
||||
ODP2OOX_AnimationEnvironment(const std::wstring& exampleFilename, boost::shared_ptr<cpdoccore::odf_reader::odf_document>* doc, boost::shared_ptr<cpdoccore::oox::pptx_conversion_context>* context);
|
||||
~ODP2OOX_AnimationEnvironment();
|
||||
|
||||
void SetUp() override;
|
||||
void TearDown() override;
|
||||
|
||||
private:
|
||||
std::wstring sExampleFilename;
|
||||
std::wstring sFrom;
|
||||
std::wstring sTemp;
|
||||
std::wstring sTempUnpackedOdf;
|
||||
|
||||
boost::shared_ptr<cpdoccore::odf_reader::odf_document>* mDocument;
|
||||
boost::shared_ptr<cpdoccore::oox::pptx_conversion_context>* mContext;
|
||||
};
|
||||
@ -34,45 +34,34 @@
|
||||
|
||||
#include "common.h"
|
||||
|
||||
#include "../../DesktopEditor/common/File.h"
|
||||
#include "../../DesktopEditor/common/Directory.h"
|
||||
#include "../../OfficeUtils/src/OfficeUtils.h"
|
||||
//#include "../../DesktopEditor/common/File.h"
|
||||
//#include "../../DesktopEditor/common/Directory.h"
|
||||
//#include "../../OfficeUtils/src/OfficeUtils.h"
|
||||
//
|
||||
//#include "Writer/Converter/Converter.h"
|
||||
//#include "Writer/Converter/PptxConverter.h"
|
||||
//#include "Writer/Format/office_elements.h"
|
||||
|
||||
#include "Writer/Converter/Converter.h"
|
||||
#include "Writer/Converter/PptxConverter.h"
|
||||
#include "Writer/Format/office_elements.h"
|
||||
boost::shared_ptr<cpdoccore::oox::pptx_conversion_context> ODP2OOX_AnimationEtranceEnvironment::sConverionContext;
|
||||
boost::shared_ptr<cpdoccore::odf_reader::odf_document> ODP2OOX_AnimationEtranceEnvironment::sInputOdf;
|
||||
|
||||
#define CH_DIR(x) FILE_SEPARATOR_STR + _T(x)
|
||||
|
||||
boost::shared_ptr<cpdoccore::oox::pptx_conversion_context> ODP2OOX_EntranceTestEnvironment::mConverionContext;
|
||||
boost::shared_ptr<cpdoccore::odf_reader::odf_document> ODP2OOX_EntranceTestEnvironment::mInputOdf;
|
||||
|
||||
void ODP2OOX_EntranceTestEnvironment::SetUp()
|
||||
ODP2OOX_AnimationEtranceEnvironment::ODP2OOX_AnimationEtranceEnvironment()
|
||||
: ODP2OOX_AnimationEnvironment(
|
||||
L"ExampleFiles" FILE_SEPARATOR_STR "entrance.odp",
|
||||
&sInputOdf,
|
||||
&sConverionContext)
|
||||
{
|
||||
sExampleFilename = L"entrance.odp";
|
||||
|
||||
std::wstring rootDir = NSFile::GetProcessDirectory() + CH_DIR("..");
|
||||
std::wstring sExampleFilesDirectory = rootDir + CH_DIR("ExampleFiles");
|
||||
|
||||
sFrom = sExampleFilesDirectory + FILE_SEPARATOR_STR + sExampleFilename;
|
||||
sTemp = rootDir + CH_DIR("tmp");
|
||||
sTempUnpackedOdf = sTemp + CH_DIR("odf_unpacked");
|
||||
|
||||
NSDirectory::CreateDirectory(sTemp);
|
||||
NSDirectory::CreateDirectory(sTempUnpackedOdf);
|
||||
|
||||
mInputOdf = ReadOdfDocument(sFrom, sTemp, sTempUnpackedOdf);
|
||||
mConverionContext = Convert(mInputOdf);
|
||||
}
|
||||
|
||||
void ODP2OOX_EntranceTestEnvironment::TearDown()
|
||||
const cpdoccore::oox::pptx_animation_context& ODP2OOX_AnimationEtranceEnvironment::GetAnimationContext()
|
||||
{
|
||||
NSDirectory::DeleteDirectory(sTemp);
|
||||
return sConverionContext->get_slide_context().get_animation_context();
|
||||
}
|
||||
|
||||
void ODP2OOX_EntranceAnimationTest::SetUp()
|
||||
{
|
||||
mAnimationContext = &ODP2OOX_EntranceTestEnvironment::GetAnimationContext();
|
||||
mAnimationContext = &ODP2OOX_AnimationEtranceEnvironment::GetAnimationContext();
|
||||
}
|
||||
|
||||
const cpdoccore::oox::pptx_animation_context::Impl::_par_animation_ptr& ODP2OOX_EntranceAnimationTest::GetInnerPar(const cpdoccore::oox::pptx_animation_context::Impl::_par_animation_ptr& par)
|
||||
@ -653,6 +642,8 @@ TEST_F(ODP2OOX_EntranceAnimationTest, entrance_transition_filter_checker_iris_wi
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// OOX2ODP
|
||||
|
||||
#if 0
|
||||
|
||||
boost::shared_ptr<Oox2Odf::Converter> OOX2ODP_EntranceAnimationTestEnvironment::mConverter;
|
||||
cpdoccore::odf_writer::odp_conversion_context* OOX2ODP_EntranceAnimationTestEnvironment::mContext;
|
||||
|
||||
@ -1356,3 +1347,4 @@ TEST_F(OOX2ODP_EntranceAnimationTest, ascend_innermost_par_preset_id)
|
||||
EXPECT_EQ(par->par_attlist_.presentation_preset_id_.value_or(preset_id::none).get_type(), presetIdExp.get_type());
|
||||
}
|
||||
|
||||
#endif
|
||||
@ -31,6 +31,8 @@
|
||||
*/
|
||||
|
||||
#include "gtest/gtest.h"
|
||||
#include "common.h"
|
||||
|
||||
#include <boost/shared_ptr.hpp>
|
||||
|
||||
#include "Reader/Format/odf_document.h"
|
||||
@ -41,33 +43,16 @@
|
||||
#include "Writer/Format/anim_elements.h"
|
||||
#include "Writer/Format/draw_page.h"
|
||||
|
||||
class ODP2OOX_EntranceTestEnvironment : public ::testing::Environment {
|
||||
class ODP2OOX_AnimationEtranceEnvironment : public ODP2OOX_AnimationEnvironment
|
||||
{
|
||||
public:
|
||||
ODP2OOX_AnimationEtranceEnvironment();
|
||||
|
||||
~ODP2OOX_EntranceTestEnvironment() override {}
|
||||
|
||||
void SetUp() override;
|
||||
|
||||
void TearDown() override;
|
||||
|
||||
static boost::shared_ptr<cpdoccore::oox::pptx_conversion_context> GetConversionContext()
|
||||
{
|
||||
return mConverionContext;
|
||||
}
|
||||
|
||||
static const cpdoccore::oox::pptx_animation_context& GetAnimationContext()
|
||||
{
|
||||
return mConverionContext->get_slide_context().get_animation_context();
|
||||
}
|
||||
static const cpdoccore::oox::pptx_animation_context& GetAnimationContext();
|
||||
|
||||
private:
|
||||
std::wstring sExampleFilename;
|
||||
std::wstring sFrom;
|
||||
std::wstring sTemp;
|
||||
std::wstring sTempUnpackedOdf;
|
||||
|
||||
static boost::shared_ptr<cpdoccore::oox::pptx_conversion_context> mConverionContext;
|
||||
static boost::shared_ptr<cpdoccore::odf_reader::odf_document> mInputOdf;
|
||||
static boost::shared_ptr<cpdoccore::oox::pptx_conversion_context> sConverionContext;
|
||||
static boost::shared_ptr<cpdoccore::odf_reader::odf_document> sInputOdf;
|
||||
};
|
||||
|
||||
class ODP2OOX_EntranceAnimationTest : public testing::Test
|
||||
|
||||
@ -32,44 +32,24 @@
|
||||
|
||||
#include "motion.h"
|
||||
|
||||
#include "common.h"
|
||||
boost::shared_ptr<cpdoccore::odf_reader::odf_document> ODP2OOX_AnimationMotionEnvironment::sInputOdf;
|
||||
boost::shared_ptr<cpdoccore::oox::pptx_conversion_context> ODP2OOX_AnimationMotionEnvironment::sConverionContext;
|
||||
|
||||
#include "../../DesktopEditor/common/File.h"
|
||||
#include "../../DesktopEditor/common/Directory.h"
|
||||
#include "../../OfficeUtils/src/OfficeUtils.h"
|
||||
|
||||
|
||||
#define CH_DIR(x) FILE_SEPARATOR_STR + _T(x)
|
||||
|
||||
boost::shared_ptr<cpdoccore::oox::pptx_conversion_context> MotionTestEnvironment::mConverionContext;
|
||||
boost::shared_ptr<cpdoccore::odf_reader::odf_document> MotionTestEnvironment::mInputOdf;
|
||||
|
||||
void MotionTestEnvironment::SetUp()
|
||||
ODP2OOX_AnimationMotionEnvironment::ODP2OOX_AnimationMotionEnvironment()
|
||||
: ODP2OOX_AnimationEnvironment(L"ExampleFiles" FILE_SEPARATOR_STR "motion.odp",
|
||||
&sInputOdf,
|
||||
&sConverionContext)
|
||||
{
|
||||
sExampleFilename = L"motion.odp";
|
||||
|
||||
std::wstring rootDir = NSFile::GetProcessDirectory() + CH_DIR("..");
|
||||
std::wstring sExampleFilesDirectory = rootDir + CH_DIR("ExampleFiles");
|
||||
|
||||
sFrom = sExampleFilesDirectory + FILE_SEPARATOR_STR + sExampleFilename;
|
||||
sTemp = rootDir + CH_DIR("tmp");
|
||||
sTempUnpackedOdf = sTemp + CH_DIR("odf_unpacked");
|
||||
|
||||
NSDirectory::CreateDirectory(sTemp);
|
||||
NSDirectory::CreateDirectory(sTempUnpackedOdf);
|
||||
|
||||
mInputOdf = ReadOdfDocument(sFrom, sTemp, sTempUnpackedOdf);
|
||||
mConverionContext = Convert(mInputOdf);
|
||||
}
|
||||
|
||||
void MotionTestEnvironment::TearDown()
|
||||
const cpdoccore::oox::pptx_animation_context& ODP2OOX_AnimationMotionEnvironment::GetAnimationContext()
|
||||
{
|
||||
NSDirectory::DeleteDirectory(sTemp);
|
||||
return sConverionContext->get_slide_context().get_animation_context();
|
||||
}
|
||||
|
||||
void ODP2OOX_MotionAnimationTest::SetUp()
|
||||
{
|
||||
mAnimationContext = &MotionTestEnvironment::GetAnimationContext();
|
||||
mAnimationContext = &ODP2OOX_AnimationMotionEnvironment::GetAnimationContext();
|
||||
}
|
||||
|
||||
const cpdoccore::oox::pptx_animation_context::Impl::_par_animation_ptr& ODP2OOX_MotionAnimationTest::GetInnerPar(const cpdoccore::oox::pptx_animation_context::Impl::_par_animation_ptr& par)
|
||||
@ -84,7 +64,7 @@ const cpdoccore::oox::pptx_animation_context::Impl::_seq_animation_ptr& ODP2OOX_
|
||||
|
||||
const cpdoccore::oox::pptx_animation_context::Impl::_par_animation_array& ODP2OOX_MotionAnimationTest::GetMainSequenceArray()
|
||||
{
|
||||
return mAnimationContext->get_root_par_animation()->AnimSeq->AnimParArray;
|
||||
return GetMainSequence()->AnimParArray;
|
||||
}
|
||||
|
||||
const cpdoccore::oox::pptx_animation_context::Impl::_animation_element_array& ODP2OOX_MotionAnimationTest::GetActionArray(const cpdoccore::oox::pptx_animation_context::Impl::_par_animation_ptr& par)
|
||||
@ -98,9 +78,7 @@ const cpdoccore::oox::pptx_animation_context::Impl::_par_animation_ptr ODP2OOX_M
|
||||
cpdoccore::oox::pptx_animation_context::Impl::_par_animation_ptr inner = par;
|
||||
|
||||
while (inner->AnimParArray.size())
|
||||
{
|
||||
inner = GetInnerPar(inner);
|
||||
}
|
||||
|
||||
return inner;
|
||||
}
|
||||
|
||||
@ -30,41 +30,22 @@
|
||||
*
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "common.h"
|
||||
|
||||
#include "gtest/gtest.h"
|
||||
#include <boost/shared_ptr.hpp>
|
||||
#include <vector>
|
||||
|
||||
#include "Reader/Format/odf_document.h"
|
||||
#include "Reader/Converter/pptx_conversion_context.h"
|
||||
#include "Reader/Format/svg_parser.h"
|
||||
|
||||
class MotionTestEnvironment : public ::testing::Environment {
|
||||
class ODP2OOX_AnimationMotionEnvironment : public ODP2OOX_AnimationEnvironment
|
||||
{
|
||||
public:
|
||||
ODP2OOX_AnimationMotionEnvironment();
|
||||
|
||||
~MotionTestEnvironment() override {}
|
||||
|
||||
void SetUp() override;
|
||||
|
||||
void TearDown() override;
|
||||
|
||||
static boost::shared_ptr<cpdoccore::oox::pptx_conversion_context> GetConversionContext()
|
||||
{
|
||||
return mConverionContext;
|
||||
}
|
||||
|
||||
static const cpdoccore::oox::pptx_animation_context& GetAnimationContext()
|
||||
{
|
||||
return mConverionContext->get_slide_context().get_animation_context();
|
||||
}
|
||||
static const cpdoccore::oox::pptx_animation_context& GetAnimationContext();
|
||||
|
||||
private:
|
||||
std::wstring sExampleFilename;
|
||||
std::wstring sFrom;
|
||||
std::wstring sTemp;
|
||||
std::wstring sTempUnpackedOdf;
|
||||
|
||||
static boost::shared_ptr<cpdoccore::oox::pptx_conversion_context> mConverionContext;
|
||||
static boost::shared_ptr<cpdoccore::odf_reader::odf_document> mInputOdf;
|
||||
static boost::shared_ptr<cpdoccore::odf_reader::odf_document> sInputOdf;
|
||||
static boost::shared_ptr<cpdoccore::oox::pptx_conversion_context> sConverionContext;
|
||||
};
|
||||
|
||||
class ODP2OOX_MotionAnimationTest : public testing::Test
|
||||
@ -89,3 +70,4 @@ public:
|
||||
const cpdoccore::oox::pptx_animation_context* mAnimationContext;
|
||||
const double mEpsilon = 0.00001;
|
||||
};
|
||||
|
||||
|
||||
@ -38,8 +38,12 @@
|
||||
int main(int argc, char* argv[])
|
||||
{
|
||||
::testing::InitGoogleTest(&argc, argv);
|
||||
::testing::AddGlobalTestEnvironment(new ODP2OOX_EntranceTestEnvironment);
|
||||
::testing::AddGlobalTestEnvironment(new OOX2ODP_EntranceAnimationTestEnvironment);
|
||||
::testing::AddGlobalTestEnvironment(new MotionTestEnvironment);
|
||||
|
||||
::testing::AddGlobalTestEnvironment(new ODP2OOX_AnimationEtranceEnvironment);
|
||||
::testing::AddGlobalTestEnvironment(new ODP2OOX_AnimationMotionEnvironment);
|
||||
::testing::AddGlobalTestEnvironment(new ODP2OOX_AnimationAudioEnvironment);
|
||||
|
||||
//::testing::AddGlobalTestEnvironment(new OOX2ODP_EntranceAnimationTestEnvironment);
|
||||
|
||||
return RUN_ALL_TESTS();
|
||||
}
|
||||
Reference in New Issue
Block a user