PuzzleSDK
TestWriteValueVector类 参考

#include <FileUtilsTest.h>

+ 类 TestWriteValueVector 继承关系图:
+ TestWriteValueVector 的协作图:

Public 成员函数

 CREATE_FUNC (TestWriteValueVector)
 
virtual void onEnter () override
 
virtual void onExit () override
 
virtual std::string title () const override
 
virtual std::string subtitle () const override
 
- Public 成员函数 继承自 TestCase
 TestCase ()
 
 ~TestCase ()
 
virtual Type getTestType () const
 
virtual float getDuration () const
 
virtual std::string getExpectedOutput () const
 
virtual std::string getActualOutput () const
 
virtual void restartTestCallback (cocos2d::Ref *sender)
 
virtual void nextTestCallback (cocos2d::Ref *sender)
 
virtual void priorTestCallback (cocos2d::Ref *sender)
 
virtual void onBackCallback (cocos2d::Ref *sender)
 
void setTestSuite (TestSuite *testSuite)
 
TestSuitegetTestSuite () const
 
float getRunTime () const
 
void setTestCaseName (const std::string &name)
 
std::string getTestCaseName () const
 
const cocos2d::Label * getSubtitleLable () const
 
const cocos2d::MenuItemImage * getRestartTestItem () const
 

额外继承的成员函数

- Public 类型 继承自 TestCase
enum class  Type { ROBUSTNESS , UNIT , GRAPHICAL_STATIC , MANUAL }
 
- Public 属性 继承自 TestCase
CC_CONSTRUCTOR_ACCESS __pad0__: virtual bool init() override
 
- Protected 属性 继承自 TestCase
cocos2d::MenuItemImage * _priorTestItem
 
cocos2d::MenuItemImage * _restartTestItem
 
cocos2d::MenuItemImage * _nextTestItem
 
cocos2d::Label * _titleLabel
 
cocos2d::Label * _subtitleLabel
 

详细描述

在文件 FileUtilsTest.h164 行定义.

成员函数说明

◆ CREATE_FUNC()

TestWriteValueVector::CREATE_FUNC ( TestWriteValueVector  )

◆ onEnter()

void TestWriteValueVector::onEnter ( )
overridevirtual

重载 TestCase .

在文件 FileUtilsTest.cpp848 行定义.

849{
851
852 auto winSize = Director::getInstance()->getWinSize();
853
854 auto writeResult = Label::createWithTTF("show writeResult", "fonts/Thonburi.ttf", 18);
855 this->addChild(writeResult);
856 writeResult->setPosition(winSize.width / 2, winSize.height * 3 / 4);
857
858 auto readResult = Label::createWithTTF("show readResult", "fonts/Thonburi.ttf", 18);
859 this->addChild(readResult);
860 readResult->setPosition(winSize.width / 2, winSize.height / 3);
861
862 ValueVector array;
863
864 ValueMap mapInArray;
865 mapInArray["string1"] = "string in dictInArray key 0";
866 mapInArray["string2"] = "string in dictInArray key 1";
867 array.push_back(Value(mapInArray));
868
869 array.push_back(Value("string in array"));
870
871 ValueVector arrayInArray;
872 arrayInArray.push_back(Value("string 0 in arrayInArray"));
873 arrayInArray.push_back(Value("string 1 in arrayInArray"));
874 array.push_back(Value(arrayInArray));
875
876 //add boolean to the plist
877 auto booleanObject = Value(true);
878 array.push_back(booleanObject);
879
880 //add integer to the plist
881 auto intObject = Value(1024);
882 array.push_back(intObject);
883
884 //add float to the plist
885 auto floatObject = Value(1024.1024f);
886 array.push_back(floatObject);
887
888 //add double to the plist
889 auto doubleObject = Value(1024.123);
890 array.push_back(doubleObject);
891
892
893 // end with /
894 std::string writablePath = FileUtils::getInstance()->getWritablePath();
895 std::string fullPath = writablePath + "testWriteValueVector.plist";
896 if (FileUtils::getInstance()->writeValueVectorToFile(array, fullPath.c_str()))
897 {
898 log("see the plist file at %s", fullPath.c_str());
899 writeResult->setString("write success");
900 }
901 else
902 {
903 log("write plist file failed");
904 writeResult->setString("write failed");
905 }
906
907 ValueVector readArray = FileUtils::getInstance()->getValueVectorFromFile(fullPath.c_str());
908 std::string readDataStr = "read data:\n";
909 // read value map data
910 ValueMap readMapInArray = readArray.at(0).asValueMap();
911 readDataStr += " mapValue:[\"string1\"][" + readMapInArray["string1"].asString() + "]\n";
912 readDataStr += " mapValue:[\"string2\"][" + readMapInArray["string2"].asString() + "]\n";
913
914 // read string data
915 readDataStr += " stringValue:" + readArray.at(1).asString() + "\n";
916
917 // read value vector data
918 ValueVector readVectorInArray = readArray.at(2).asValueVector();
919 readDataStr += " vectorValue:[1]" + readVectorInArray.at(0).asString() + "\n";
920 readDataStr += " vectorValue:[2]" + readVectorInArray.at(1).asString() + "\n";
921
922 // read bool data
923 readDataStr += " boolValue:" + StringUtils::format("%d", readArray.at(3).asBool()) + "\n";
924
925 // read int data
926 readDataStr += " intValue:" + StringUtils::format("%d", readArray.at(4).asInt()) + "\n";
927
928 // read float data
929 readDataStr += " floatValue:" + StringUtils::format("%f", readArray.at(5).asFloat()) + "\n";
930
931 // read double data
932 readDataStr += " doubleValue:" + StringUtils::format("%f", readArray.at(6).asDouble()) + "\n";
933
934 readResult->setString(readDataStr);
935}
virtual void onEnter() override
Definition: BaseTest.cpp:430

引用了 TestCase::onEnter().

+ 函数调用图:

◆ onExit()

void TestWriteValueVector::onExit ( )
overridevirtual

在文件 FileUtilsTest.cpp937 行定义.

938{
939 FileUtilsDemo::onExit();
940}

◆ subtitle()

std::string TestWriteValueVector::subtitle ( ) const
overridevirtual

重载 TestCase .

在文件 FileUtilsTest.cpp947 行定义.

948{
949 return "";
950}

◆ title()

std::string TestWriteValueVector::title ( ) const
overridevirtual

重载 TestCase .

在文件 FileUtilsTest.cpp942 行定义.

943{
944 return "FileUtils: TestWriteValueVector to files";
945}

该类的文档由以下文件生成: