X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit%2Futc-Dali-ImageView.cpp;h=7b0b54d7abee2f4bd672bbce3ac5c484576459bb;hb=23ef2e29789ebe7ba3c6af903fb0f55c782e39cc;hp=204cf235f7e2d60f5717289bd85e2be9c62892bd;hpb=c01b6a044893962dbc4ec47aeca60bf3b5d09766;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/automated-tests/src/dali-toolkit/utc-Dali-ImageView.cpp b/automated-tests/src/dali-toolkit/utc-Dali-ImageView.cpp index 204cf23..7b0b54d 100644 --- a/automated-tests/src/dali-toolkit/utc-Dali-ImageView.cpp +++ b/automated-tests/src/dali-toolkit/utc-Dali-ImageView.cpp @@ -126,6 +126,24 @@ int UtcDaliImageViewCopyConstructorP(void) END_TEST; } +int UtcDaliImageViewMoveConstructor(void) +{ + ToolkitTestApplication application; + + ImageView imageView = ImageView::New(); + DALI_TEST_EQUALS( 1, imageView.GetBaseObject().ReferenceCount(), TEST_LOCATION ); + imageView.SetProperty( Actor::Property::SENSITIVE, false ); + DALI_TEST_CHECK( false == imageView.GetProperty< bool >( Actor::Property::SENSITIVE ) ); + + ImageView moved = std::move( imageView ); + DALI_TEST_CHECK( moved ); + DALI_TEST_EQUALS( 1, moved.GetBaseObject().ReferenceCount(), TEST_LOCATION ); + DALI_TEST_CHECK( false == moved.GetProperty< bool >( Actor::Property::SENSITIVE ) ); + DALI_TEST_CHECK( !imageView ); + + END_TEST; +} + int UtcDaliImageViewAssignmentOperatorP(void) { ToolkitTestApplication application; @@ -139,6 +157,25 @@ int UtcDaliImageViewAssignmentOperatorP(void) END_TEST; } +int UtcDaliImageViewMoveAssignment(void) +{ + ToolkitTestApplication application; + + ImageView imageView = ImageView::New(); + DALI_TEST_EQUALS( 1, imageView.GetBaseObject().ReferenceCount(), TEST_LOCATION ); + imageView.SetProperty( Actor::Property::SENSITIVE, false ); + DALI_TEST_CHECK( false == imageView.GetProperty< bool >( Actor::Property::SENSITIVE ) ); + + ImageView moved; + moved = std::move( imageView ); + DALI_TEST_CHECK( moved ); + DALI_TEST_EQUALS( 1, moved.GetBaseObject().ReferenceCount(), TEST_LOCATION ); + DALI_TEST_CHECK( false == moved.GetProperty< bool >( Actor::Property::SENSITIVE ) ); + DALI_TEST_CHECK( !imageView ); + + END_TEST; +} + int UtcDaliImageViewDownCastP(void) { ToolkitTestApplication application; @@ -515,7 +552,7 @@ int UtcDaliImageViewAsyncLoadingWithAtlasing(void) imageView.SetProperty( Toolkit::Control::Property::PADDING, Extents( 10u, 10u, 10u, 10u ) ); // By default, Aysnc loading is used - // loading is not started if the actor is offStage + // loading is not started if the actor is offScene application.GetScene().Add( imageView ); application.SendNotification(); @@ -2139,7 +2176,7 @@ int UtcDaliImageViewFittingModesWithAnimatedVectorImageVisual(void) { ToolkitTestApplication application; - tet_infoline( "Create an ImageVisual using ScaleToFill and animated vector image ( image: [600,600], view:[600,600] )" ); + tet_infoline( "Create an ImageVisual using SCALE_TO_FILL and animated vector image ( image: [600,600], view:[600,600] )" ); ImageView imageView = ImageView::New(); Property::Map imageMap; @@ -2430,10 +2467,10 @@ int UtcDaliImageViewLoadRemoteSVG(void) ToolkitTestApplication application; Toolkit::ImageView imageView; - imageView = Toolkit::ImageView::New( ); + imageView = Toolkit::ImageView::New(); imageView.SetImage("https://dev.w3.org/SVG/tools/svgweb/samples/svg-files/check.svg"); // Victor. Temporary (or permanent?) update as the url above seems not to work from time to time ... - imageView.SetImage("https://upload.wikimedia.org/wikipedia/commons/thumb/0/02/SVG_logo.svg/64px-SVG_logo.svg.png"); +// imageView.SetImage("https://upload.wikimedia.org/wikipedia/commons/thumb/0/02/SVG_logo.svg/64px-SVG_logo.svg.png"); imageView.SetProperty( Actor::Property::PARENT_ORIGIN, ParentOrigin::TOP_LEFT ); imageView.SetProperty( Actor::Property::ANCHOR_POINT, AnchorPoint::TOP_LEFT ); imageView.SetProperty( Actor::Property::SIZE, Vector2(300, 300) ); @@ -2577,11 +2614,36 @@ int UtcDaliImageViewSvgLoadingFailure(void) { ToolkitTestApplication application; - // Local svg file + // Local svg file - invalid file path { gResourceReadySignalFired = false; - ImageView imageView = ImageView::New( TEST_RESOURCE_DIR "/Kid1.svg" ); + ImageView imageView = ImageView::New( TEST_RESOURCE_DIR "/foo.svg" ); + imageView.SetProperty( Actor::Property::SIZE, Vector2( 200.f, 200.f ) ); + imageView.ResourceReadySignal().Connect( &ResourceReadySignal); + + DALI_TEST_EQUALS( imageView.IsResourceReady(), false, TEST_LOCATION ); + + application.GetScene().Add( imageView ); + + application.SendNotification(); + + // loading started, this waits for the loader thread + DALI_TEST_EQUALS( Test::WaitForEventThreadTrigger( 1 ), true, TEST_LOCATION ); + + application.SendNotification(); + application.Render(16); + + DALI_TEST_EQUALS( gResourceReadySignalFired, true, TEST_LOCATION ); + DALI_TEST_EQUALS( imageView.IsResourceReady(), true, TEST_LOCATION ); + DALI_TEST_EQUALS( imageView.GetVisualResourceStatus( ImageView::Property::IMAGE ), Visual::ResourceStatus::FAILED, TEST_LOCATION ); + } + + // Local svg file - invalid file + { + gResourceReadySignalFired = false; + + ImageView imageView = ImageView::New( TEST_RESOURCE_DIR "/invalid.svg" ); imageView.SetProperty( Actor::Property::SIZE, Vector2( 200.f, 200.f ) ); imageView.ResourceReadySignal().Connect( &ResourceReadySignal); @@ -2630,6 +2692,54 @@ int UtcDaliImageViewSvgLoadingFailure(void) END_TEST; } +int UtcDaliImageViewSvgRasterizationFailure(void) +{ + ToolkitTestApplication application; + + gResourceReadySignalFired = false; + + ImageView imageView = ImageView::New( TEST_RESOURCE_DIR "/svg1.svg" ); + imageView.SetProperty( Actor::Property::SIZE, Vector2( 200.f, 200.f ) ); + imageView.ResourceReadySignal().Connect( &ResourceReadySignal); + + DALI_TEST_EQUALS( imageView.IsResourceReady(), false, TEST_LOCATION ); + + application.GetScene().Add( imageView ); + + application.SendNotification(); + + // loading started, this waits for the loader thread + DALI_TEST_EQUALS( Test::WaitForEventThreadTrigger( 1 ), true, TEST_LOCATION ); + + application.SendNotification(); + application.Render(16); + + DALI_TEST_EQUALS( gResourceReadySignalFired, true, TEST_LOCATION ); + DALI_TEST_EQUALS( imageView.IsResourceReady(), true, TEST_LOCATION ); + DALI_TEST_EQUALS( imageView.GetVisualResourceStatus( ImageView::Property::IMAGE ), Visual::ResourceStatus::READY, TEST_LOCATION ); + + // Reset flag + gResourceReadySignalFired = false; + + // Change size + imageView.SetProperty( Actor::Property::SIZE, Vector2( 0.f, 0.f ) ); + + application.SendNotification(); + + // rasterization started, this waits for the rasterize thread + DALI_TEST_EQUALS( Test::WaitForEventThreadTrigger( 1 ), true, TEST_LOCATION ); + + application.SendNotification(); + application.Render(16); + + DALI_TEST_EQUALS( gResourceReadySignalFired, true, TEST_LOCATION ); + DALI_TEST_EQUALS( imageView.IsResourceReady(), true, TEST_LOCATION ); + // Fail to rasterize because the size is 0. + DALI_TEST_EQUALS( imageView.GetVisualResourceStatus( ImageView::Property::IMAGE ), Visual::ResourceStatus::FAILED, TEST_LOCATION ); + + END_TEST; +} + namespace {