X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit%2Fdali-toolkit-test-utils%2Ftest-platform-abstraction.cpp;h=61f88f02c5839d4508d5523c070e2ed6ba361e08;hp=ad8de5cf5fd5d5e4ba254835953dc36811732fcf;hb=a61f272b62493da7921ad7ba8072b9b4f9e8cd16;hpb=bef7b2d9ac8378e1504202bcd05397555867a1ca diff --git a/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-platform-abstraction.cpp b/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-platform-abstraction.cpp index ad8de5c..61f88f0 100644 --- a/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-platform-abstraction.cpp +++ b/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/test-platform-abstraction.cpp @@ -22,43 +22,32 @@ namespace Dali { -/** - * Constructor - */ TestPlatformAbstraction::TestPlatformAbstraction() -: mRequest(0) +: mTrace(), + mIsLoadingResult( false ), + mGetDefaultFontSizeResult( 0 ), + mLoadedResourcesQueue(), + mFailedLoadQueue(), + mResourceRequests(), + mSize(), + mClosestSize(), + mLoadFileResult(), + mSaveFileResult( false ), + mSynchronouslyLoadedResource() { Initialize(); } -/** - * Destructor - */ TestPlatformAbstraction::~TestPlatformAbstraction() { + DiscardRequest(); } -/** - * @copydoc PlatformAbstraction::GetTimeMicroseconds() - */ -void TestPlatformAbstraction::GetTimeMicroseconds(unsigned int &seconds, unsigned int µSeconds) -{ - seconds = mSeconds; - microSeconds = mMicroSeconds; - mTrace.PushCall("GetTimeMicroseconds", ""); -} - -/** - * @copydoc PlatformAbstraction::Suspend() - */ void TestPlatformAbstraction::Suspend() { mTrace.PushCall("Suspend", ""); } -/** - * @copydoc PlatformAbstraction::Resume() - */ void TestPlatformAbstraction::Resume() { mTrace.PushCall("Resume", ""); @@ -66,7 +55,7 @@ void TestPlatformAbstraction::Resume() ImageDimensions TestPlatformAbstraction::GetClosestImageSize( const std::string& filename, ImageDimensions size, - FittingMode::Type scalingMode, + FittingMode::Type fittingMode, SamplingMode::Type samplingMode, bool orientationCorrection ) { @@ -77,7 +66,7 @@ ImageDimensions TestPlatformAbstraction::GetClosestImageSize( const std::string& ImageDimensions TestPlatformAbstraction::GetClosestImageSize( Integration::ResourcePointer resourceBuffer, ImageDimensions size, - FittingMode::Type scalingMode, + FittingMode::Type fittingMode, SamplingMode::Type samplingMode, bool orientationCorrection ) { @@ -86,114 +75,71 @@ ImageDimensions TestPlatformAbstraction::GetClosestImageSize( Integration::Resou return closestSize; } -/** - * @copydoc PlatformAbstraction::LoadResource() - */ void TestPlatformAbstraction::LoadResource(const Integration::ResourceRequest& request) { std::ostringstream out; - out << "Type:" << request.GetType()->id << ", Path: " << request.GetPath() << std::endl; + out << "Type:" << request.GetType()->id << ", Path: " << request.GetPath() << std::endl ; mTrace.PushCall("LoadResource", out.str()); - if(mRequest != NULL) - { - delete mRequest; - tet_infoline ("Warning: multiple resource requests not handled by Test Suite. You may see unexpected errors"); - } - mRequest = new Integration::ResourceRequest(request); + + mResourceRequests.PushBack( new Integration::ResourceRequest(request) ); } Integration::ResourcePointer TestPlatformAbstraction::LoadResourceSynchronously( const Integration::ResourceType& resourceType, const std::string& resourcePath ) { mTrace.PushCall("LoadResourceSynchronously", ""); - return mResources.loadedResource; + return mSynchronouslyLoadedResource; } -/** - * @copydoc PlatformAbstraction::SaveResource() - */ -void TestPlatformAbstraction::SaveResource(const Integration::ResourceRequest& request) +Integration::BitmapPtr TestPlatformAbstraction::DecodeBuffer( const Integration::ResourceType& resourceType, uint8_t * buffer, size_t size ) { - mTrace.PushCall("SaveResource", ""); - if(mRequest != NULL) - { - delete mRequest; - tet_infoline ("Warning: multiple resource requests not handled by Test Suite. You may see unexpected errors"); - } - mRequest = new Integration::ResourceRequest(request); + mTrace.PushCall("DecodeBuffer", ""); + return Integration::BitmapPtr(); } -/** - * @copydoc PlatformAbstraction::CancelLoad() - */ void TestPlatformAbstraction::CancelLoad(Integration::ResourceId id, Integration::ResourceTypeId typeId) { mTrace.PushCall("CancelLoad", ""); } -/** - * @copydoc PlatformAbstraction::GetResources() - */ void TestPlatformAbstraction::GetResources(Integration::ResourceCache& cache) { mTrace.PushCall("GetResources", ""); - if(mResources.loaded) - { - cache.LoadResponse( mResources.loadedId, mResources.loadedType, mResources.loadedResource, Integration::RESOURCE_COMPLETELY_LOADED ); - } - if(mResources.loadFailed) - { - cache.LoadFailed( mResources.loadFailedId, mResources.loadFailure ); - } - if(mResources.saved) + while( !mLoadedResourcesQueue.empty() ) { - cache.SaveComplete( mResources.savedId, mResources.savedType ); + LoadedResource loaded( *mLoadedResourcesQueue.begin() ); + mLoadedResourcesQueue.erase( mLoadedResourcesQueue.begin() ); + cache.LoadResponse( loaded.id, loaded.type, loaded.resource, Integration::RESOURCE_COMPLETELY_LOADED ); } - if(mResources.saveFailed) + + // iterate through the resources which failed to load + while( !mFailedLoadQueue.empty() ) { - cache.SaveFailed( mResources.saveFailedId, mResources.saveFailure ); + FailedLoad failed( *mFailedLoadQueue.begin() ); + mFailedLoadQueue.erase( mFailedLoadQueue.begin() ); + cache.LoadFailed( failed.id, failed.failure ); } } -/** - * @copydoc PlatformAbstraction::IsLoading() - */ bool TestPlatformAbstraction::IsLoading() { mTrace.PushCall("IsLoading", ""); return mIsLoadingResult; } -/** - * @copydoc PlatformAbstraction::GetDefaultFontDescription() - */ -void TestPlatformAbstraction::GetDefaultFontDescription( std::string& family, std::string& style ) const -{ - // TODO -} - -/** - * @copydoc PlatformAbstraction::GetDefaultFontSize() - */ int TestPlatformAbstraction::GetDefaultFontSize() const { - // TODO - return int(); + mTrace.PushCall("GetDefaultFontSize", ""); + return mGetDefaultFontSizeResult; } -/** - * @copydoc PlatformAbstraction::SetDpi() - */ void TestPlatformAbstraction::SetDpi (unsigned int dpiHorizontal, unsigned int dpiVertical) { mTrace.PushCall("SetDpi", ""); } -/** - * @copydoc PlatformAbstraction::LoadFile() - */ -bool TestPlatformAbstraction::LoadFile( const std::string& filename, std::vector< unsigned char >& buffer ) const +bool TestPlatformAbstraction::LoadFile( const std::string& filename, Dali::Vector< unsigned char >& buffer ) const { mTrace.PushCall("LoadFile", ""); if( mLoadFileResult.loadResult ) @@ -204,12 +150,9 @@ bool TestPlatformAbstraction::LoadFile( const std::string& filename, std::vector return mLoadFileResult.loadResult; } -/** - * @copydoc PlatformAbstraction::LoadShaderBinFile() - */ -bool TestPlatformAbstraction::LoadShaderBinFile( const std::string& filename, std::vector< unsigned char >& buffer ) const +bool TestPlatformAbstraction::LoadShaderBinaryFile( const std::string& filename, Dali::Vector< unsigned char >& buffer ) const { - mTrace.PushCall("LoadShaderBinFile", ""); + mTrace.PushCall("LoadShaderBinaryFile", ""); if( mLoadFileResult.loadResult ) { buffer = mLoadFileResult.buffer; @@ -218,10 +161,7 @@ bool TestPlatformAbstraction::LoadShaderBinFile( const std::string& filename, st return mLoadFileResult.loadResult; } -/** - * @copydoc PlatformAbstraction::SaveFile() - */ -bool TestPlatformAbstraction::SaveFile(const std::string& filename, std::vector< unsigned char >& buffer) const +bool TestPlatformAbstraction::SaveFile(const std::string& filename, const unsigned char * buffer, unsigned int numBytes ) const { mTrace.PushCall("SaveFile", ""); return false; @@ -237,30 +177,24 @@ void TestPlatformAbstraction::Initialize() { mTrace.Reset(); mTrace.Enable(true); - memset(&mResources, 0, sizeof(Resources)); - mSeconds=0; - mMicroSeconds=0; + mLoadedResourcesQueue.clear(); + mFailedLoadQueue.clear(); + mResourceRequests.Clear(); mIsLoadingResult=false; - - if(mRequest) - { - delete mRequest; - mRequest = 0; - } + mSynchronouslyLoadedResource.Reset(); } - bool TestPlatformAbstraction::WasCalled(TestFuncEnum func) { switch(func) { - case GetTimeMicrosecondsFunc: return mTrace.FindMethod("GetTimeMicroseconds"); case SuspendFunc: return mTrace.FindMethod("Suspend"); case ResumeFunc: return mTrace.FindMethod("Resume"); case LoadResourceFunc: return mTrace.FindMethod("LoadResource"); - case SaveResourceFunc: return mTrace.FindMethod("SaveResource"); + case LoadResourceSynchronouslyFunc: return mTrace.FindMethod("LoadResourceSynchronously"); case LoadFileFunc: return mTrace.FindMethod("LoadFile"); - case LoadShaderBinFileFunc: return mTrace.FindMethod("LoadShaderBinFile"); + case LoadShaderBinaryFileFunc: return mTrace.FindMethod("LoadShaderBinaryFile"); + case SaveShaderBinaryFileFunc: return mTrace.FindMethod("SaveShaderBinaryFile"); case SaveFileFunc: return mTrace.FindMethod("SaveFile"); case CancelLoadFunc: return mTrace.FindMethod("CancelLoad"); case GetResourcesFunc: return mTrace.FindMethod("GetResources"); @@ -271,21 +205,6 @@ bool TestPlatformAbstraction::WasCalled(TestFuncEnum func) return false; } -void TestPlatformAbstraction::SetGetTimeMicrosecondsResult(size_t sec, size_t usec) -{ - mSeconds = sec; - mMicroSeconds = usec; -} - -void TestPlatformAbstraction::IncrementGetTimeResult(size_t milliseconds) -{ - mMicroSeconds += milliseconds * 1000u; - unsigned int additionalSeconds = mMicroSeconds / 1000000u; - - mSeconds += additionalSeconds; - mMicroSeconds -= additionalSeconds * 1000000u; -} - void TestPlatformAbstraction::SetIsLoadingResult(bool result) { mIsLoadingResult = result; @@ -293,52 +212,85 @@ void TestPlatformAbstraction::SetIsLoadingResult(bool result) void TestPlatformAbstraction::ClearReadyResources() { - memset(&mResources, 0, sizeof(Resources)); + mLoadedResourcesQueue.clear(); + mFailedLoadQueue.clear(); + mSynchronouslyLoadedResource.Reset(); } void TestPlatformAbstraction::SetResourceLoaded(Integration::ResourceId loadedId, Integration::ResourceTypeId loadedType, Integration::ResourcePointer loadedResource) { - mResources.loaded = true; - mResources.loadedId = loadedId; - mResources.loadedType = loadedType; - mResources.loadedResource = loadedResource; + LoadedResource loadedInfo; + loadedInfo.id = loadedId; + loadedInfo.type = loadedType; + loadedInfo.resource = loadedResource; + mLoadedResourcesQueue.push_back( loadedInfo ); } void TestPlatformAbstraction::SetResourceLoadFailed(Integration::ResourceId id, Integration::ResourceFailure failure) { - mResources.loadFailed = true; - mResources.loadFailedId = id; - mResources.loadFailure = failure; + FailedLoad failedInfo; + failedInfo.id = id; + failedInfo.failure = failure; + mFailedLoadQueue.push_back( failedInfo ); } -void TestPlatformAbstraction::SetResourceSaved(Integration::ResourceId savedId, - Integration::ResourceTypeId savedType) +Integration::ResourceRequest* TestPlatformAbstraction::GetRequest() { - mResources.saved = true; - mResources.savedId = savedId; - mResources.savedType = savedType; + Integration::ResourceRequest* request = NULL; + + // Return last request + if( ! mResourceRequests.Empty() ) + { + request = *( mResourceRequests.End() - 1 ); + } + + return request; } -void TestPlatformAbstraction::SetResourceSaveFailed(Integration::ResourceId id, - Integration::ResourceFailure failure) +const TestPlatformAbstraction::ResourceRequestContainer& TestPlatformAbstraction::GetAllRequests() const { - mResources.saveFailed = true; - mResources.saveFailedId = id; - mResources.saveFailure = failure; + return mResourceRequests; } -Integration::ResourceRequest* TestPlatformAbstraction::GetRequest() +void TestPlatformAbstraction::SetAllResourceRequestsAsLoaded() { - return mRequest; + for( ResourceRequestContainer::Iterator iter = mResourceRequests.Begin(), endIter = mResourceRequests.End(); + iter != endIter; ++iter ) + { + Integration::ResourceRequest* request = *iter; + Integration::Bitmap* bitmap = Integration::Bitmap::New( Integration::Bitmap::BITMAP_2D_PACKED_PIXELS, ResourcePolicy::OWNED_DISCARD ); + Integration::ResourcePointer resource(bitmap); + bitmap->GetPackedPixelsProfile()->ReserveBuffer(Pixel::RGBA8888, 80, 80, 80, 80); + SetResourceLoaded( request->GetId(), request->GetType()->id, resource ); + delete request; + } + mResourceRequests.Clear(); +} + +void TestPlatformAbstraction::SetAllResourceRequestsAsFailed( Integration::ResourceFailure failure ) +{ + for( ResourceRequestContainer::Iterator iter = mResourceRequests.Begin(), endIter = mResourceRequests.End(); + iter != endIter; ++iter ) + { + Integration::ResourceRequest* request = *iter; + SetResourceLoadFailed( (*iter)->GetId(), failure); + delete request; + } + mResourceRequests.Clear(); } void TestPlatformAbstraction::DiscardRequest() { - delete mRequest; - mRequest = NULL; + for( ResourceRequestContainer::Iterator iter = mResourceRequests.Begin(), endIter = mResourceRequests.End(); + iter != endIter; ++iter ) + { + Integration::ResourceRequest* request = *iter; + delete request; + } + mResourceRequests.Clear(); } void TestPlatformAbstraction::SetClosestImageSize(const Vector2& size) @@ -346,7 +298,7 @@ void TestPlatformAbstraction::SetClosestImageSize(const Vector2& size) mClosestSize = size; } -void TestPlatformAbstraction::SetLoadFileResult( bool result, std::vector< unsigned char >& buffer ) +void TestPlatformAbstraction::SetLoadFileResult( bool result, Dali::Vector< unsigned char >& buffer ) { mLoadFileResult.loadResult = result; if( result ) @@ -360,4 +312,9 @@ void TestPlatformAbstraction::SetSaveFileResult( bool result ) mSaveFileResult = result; } +void TestPlatformAbstraction::SetSynchronouslyLoadedResource( Integration::ResourcePointer resource ) +{ + mSynchronouslyLoadedResource = resource; +} + } // namespace Dali