-// Scenarios 1: ImageView from regular image
-int UtcDaliImageViewSetImageBufferImage(void)
-{
- ToolkitTestApplication application;
-
- ImageView imageView = ImageView::New();
- Stage::GetCurrent().Add( imageView );
-
- TestGlAbstraction& gl = application.GetGlAbstraction();
- gl.EnableTextureCallTrace( true );
-
- std::vector< GLuint > ids;
- ids.push_back( 23 );
- application.GetGlAbstraction().SetNextTextureIds( ids );
-
- int width = 300;
- int height = 400;
- BufferImage image = CreateBufferImage( width, height, Color::WHITE );
-
- imageView.SetImage( image );
-
- application.SendNotification();
- application.Render();
-
- DALI_TEST_CHECK( gl.GetTextureTrace().FindMethod("BindTexture") );
-
- std::stringstream params;
- params << GL_TEXTURE_2D << ", " << 23;
- DALI_TEST_CHECK( gl.GetTextureTrace().FindMethodAndParams("BindTexture", params.str()) );
-
- END_TEST;
-}
-
-// Scenarios 2: ImageView from Native image
-int UtcDaliImageViewSetImageNativeImage(void)
-{
- ToolkitTestApplication application;
-
- ImageView imageView = ImageView::New();
- Stage::GetCurrent().Add( imageView );
-
- TestGlAbstraction& gl = application.GetGlAbstraction();
- gl.EnableTextureCallTrace( true );
-
- std::vector< GLuint > ids;
- ids.push_back( 23 );
- application.GetGlAbstraction().SetNextTextureIds( ids );
-
- int width = 200;
- int height = 500;
- TestNativeImagePointer nativeImageInterface = TestNativeImage::New( width, height );
- NativeImage nativeImage = NativeImage::New( *(nativeImageInterface.Get()) );
-
- imageView.SetImage( nativeImage );
- application.SendNotification();
- application.Render();
-
- DALI_TEST_CHECK( gl.GetTextureTrace().FindMethod("BindTexture") );
-
- std::stringstream params;
- params << GL_TEXTURE_EXTERNAL_OES << ", " << 23;
- DALI_TEST_CHECK( gl.GetTextureTrace().FindMethodAndParams("BindTexture", params.str()) );
-
- END_TEST;
-}
-
-// Scenarios 3: ImageView initially from regular image but then SetImage called with Native image
-int UtcDaliImageViewSetImageBufferImageToNativeImage(void)
-{
- ToolkitTestApplication application;
-
- int width = 300;
- int height = 400;
- BufferImage image = CreateBufferImage( width, height, Color::WHITE );
-
- ImageView imageView = ImageView::New( image );
- Stage::GetCurrent().Add( imageView );
-
- TestGlAbstraction& gl = application.GetGlAbstraction();
- gl.EnableTextureCallTrace( true );
-
- std::vector< GLuint > ids;
- ids.push_back( 23 );
- application.GetGlAbstraction().SetNextTextureIds( ids );
-
- application.SendNotification();
- application.Render();
-
- DALI_TEST_CHECK( gl.GetTextureTrace().FindMethod("BindTexture") );
-
- std::stringstream params;
- params << GL_TEXTURE_2D << ", " << 23;
- DALI_TEST_CHECK( gl.GetTextureTrace().FindMethodAndParams("BindTexture", params.str()) );
-
- width = 200;
- height = 500;
- TestNativeImagePointer nativeImageInterface = TestNativeImage::New( width, height );
- NativeImage nativeImage = NativeImage::New( *(nativeImageInterface.Get()) );
- imageView.SetImage( nativeImage );
-
- ids.clear();
- ids.push_back( 24 );
- application.GetGlAbstraction().SetNextTextureIds( ids );
-
- application.SendNotification();
- application.Render();
-
- DALI_TEST_CHECK( gl.GetTextureTrace().FindMethod("BindTexture") );
-
- std::stringstream nextTextureParams;
- nextTextureParams << GL_TEXTURE_EXTERNAL_OES << ", " << 24;
- DALI_TEST_CHECK( gl.GetTextureTrace().FindMethodAndParams("BindTexture", nextTextureParams.str()) );
-
- END_TEST;
-}
-
-// Scenarios 4: ImageView initially from Native image but then SetImage called with regular image
-int UtcDaliImageViewSetImageNativeImageToBufferImage(void)
-{
- ToolkitTestApplication application;
-
- int width = 300;
- int height = 400;
- TestNativeImagePointer nativeImageInterface = TestNativeImage::New( width, height );
- NativeImage nativeImage = NativeImage::New( *(nativeImageInterface.Get()) );
-
- ImageView imageView = ImageView::New( nativeImage );
- Stage::GetCurrent().Add( imageView );
-
- TestGlAbstraction& gl = application.GetGlAbstraction();
- gl.EnableTextureCallTrace( true );
-
- std::vector< GLuint > ids;
- ids.push_back( 23 );
- application.GetGlAbstraction().SetNextTextureIds( ids );
-
- application.SendNotification();
- application.Render();
-
- DALI_TEST_CHECK( gl.GetTextureTrace().FindMethod("BindTexture") );
-
- std::stringstream params;
- params << GL_TEXTURE_EXTERNAL_OES << ", " << 23;
- DALI_TEST_CHECK( gl.GetTextureTrace().FindMethodAndParams("BindTexture", params.str()) );
-
- width = 200;
- height = 500;
- BufferImage image = CreateBufferImage( width, height, Color::WHITE );
- imageView.SetImage( image );
-
- ids.clear();
- ids.push_back( 24 );
- application.GetGlAbstraction().SetNextTextureIds( ids );
-
- application.SendNotification();
- application.Render();
-
- DALI_TEST_CHECK( gl.GetTextureTrace().FindMethod("BindTexture") );
-
- std::stringstream nextTextureParams;
- nextTextureParams << GL_TEXTURE_2D << ", " << 24;
- DALI_TEST_CHECK( gl.GetTextureTrace().FindMethodAndParams("BindTexture", nextTextureParams.str()) );
-
- END_TEST;
-}
-
-// Scenarios 5: ImageView from Native image with custom shader
-int UtcDaliImageViewSetImageNativeImageWithCustomShader(void)
-{
- ToolkitTestApplication application;
-
- int width = 300;
- int height = 400;
-
- Property::Map customShader;
- customShader.Insert( "vertexShader", VERTEX_SHADER );
- customShader.Insert( "fragmentShader", FRAGMENT_SHADER );
-
- Property::Array shaderHints;
- shaderHints.PushBack( "requiresSelfDepthTest" );
- shaderHints.PushBack( "outputIsTransparent" );
- shaderHints.PushBack( "outputIsOpaque" );
- shaderHints.PushBack( "modifiesGeometry" );
-
- customShader.Insert( "hints", shaderHints );
-
- Property::Map map;
- map.Insert( "shader", customShader );
-
- TestNativeImagePointer nativeImageInterface = TestNativeImage::New( width, height );
- NativeImage nativeImage = NativeImage::New( *(nativeImageInterface.Get()) );
-
- ImageView imageView = ImageView::New( nativeImage );
- imageView.SetProperty( ImageView::Property::IMAGE, map );
- Stage::GetCurrent().Add( imageView );
-
- TestGlAbstraction& gl = application.GetGlAbstraction();
- gl.EnableTextureCallTrace( true );
-
- std::vector< GLuint > ids;
- ids.push_back( 23 );
- application.GetGlAbstraction().SetNextTextureIds( ids );
-
- application.SendNotification();
- application.Render();
-
- DALI_TEST_CHECK( gl.GetTextureTrace().FindMethod("BindTexture") );
-
- std::stringstream params;
- params << GL_TEXTURE_EXTERNAL_OES << ", " << 23;
- DALI_TEST_CHECK( gl.GetTextureTrace().FindMethodAndParams("BindTexture", params.str()) );
-
- END_TEST;
-}
-
-// Scenarios 6: ImageView initially from regular image with custom shader but then SetImage called with Native
-int UtcDaliImageViewSetImageBufferImageWithCustomShaderToNativeImage(void)
-{
- ToolkitTestApplication application;
-
- int width = 300;
- int height = 400;
-
- Property::Map customShader;
- customShader.Insert( "vertexShader", VERTEX_SHADER );
- customShader.Insert( "fragmentShader", FRAGMENT_SHADER );
-
- Property::Array shaderHints;
- shaderHints.PushBack( "requiresSelfDepthTest" );
- shaderHints.PushBack( "outputIsTransparent" );
- shaderHints.PushBack( "outputIsOpaque" );
- shaderHints.PushBack( "modifiesGeometry" );
-
- customShader.Insert( "hints", shaderHints );
-
- Property::Map map;
- map.Insert( "shader", customShader );
-
- BufferImage image = CreateBufferImage( width, height, Color::WHITE );
-
- ImageView imageView = ImageView::New( image );
- imageView.SetProperty( ImageView::Property::IMAGE, map );
- Stage::GetCurrent().Add( imageView );
-
- TestGlAbstraction& gl = application.GetGlAbstraction();
- gl.EnableTextureCallTrace( true );
-
- std::vector< GLuint > ids;
- ids.push_back( 23 );
- application.GetGlAbstraction().SetNextTextureIds( ids );
-
- application.SendNotification();
- application.Render();
-
- DALI_TEST_CHECK( gl.GetTextureTrace().FindMethod("BindTexture") );
-
- std::stringstream params;
- params << GL_TEXTURE_2D << ", " << 23;
- DALI_TEST_CHECK( gl.GetTextureTrace().FindMethodAndParams("BindTexture", params.str()) );
-
- TestNativeImagePointer nativeImageInterface = TestNativeImage::New( width, height );
- NativeImage nativeImage = NativeImage::New( *(nativeImageInterface.Get()) );
- imageView.SetImage( nativeImage );
-
- ids.clear();
- ids.push_back( 24 );
- application.GetGlAbstraction().SetNextTextureIds( ids );
-
- application.SendNotification();
- application.Render();
-
- DALI_TEST_CHECK( gl.GetTextureTrace().FindMethod("BindTexture") );
-
- std::stringstream nativeImageParams;
- nativeImageParams << GL_TEXTURE_EXTERNAL_OES << ", " << 24;
- DALI_TEST_CHECK( gl.GetTextureTrace().FindMethodAndParams("BindTexture", nativeImageParams.str()) );
-
-
- END_TEST;
-}
-
-int UtcDaliImageViewGetImageP1(void)
-{
- ToolkitTestApplication application;
-
- ImageView imageView = ImageView::New();
- DALI_TEST_CHECK( ! imageView.GetImage() );
-
- Image image = CreateBufferImage();
- imageView.SetImage( image );
- DALI_TEST_CHECK( imageView.GetImage() == image );
-
- END_TEST;
-}
-
-int UtcDaliImageViewGetImageP2(void)
-{
- ToolkitTestApplication application;
-
- BufferImage image = CreateBufferImage();
- ImageView imageView = ImageView::New( image );
- DALI_TEST_CHECK( imageView.GetImage() == image );
-
- END_TEST;
-}
-
-int UtcDaliImageViewGetImageN(void)
-{
- ToolkitTestApplication application;
-
- ImageView imageView = ImageView::New( TEST_IMAGE_FILE_NAME );
- DALI_TEST_CHECK( ! imageView.GetImage() );
-
- Image image = CreateBufferImage();
- imageView.SetImage( image );
- DALI_TEST_CHECK( imageView.GetImage() == image );
-
- imageView.SetImage( TEST_IMAGE_FILE_NAME );
- DALI_TEST_CHECK( ! imageView.GetImage() );
-
- END_TEST;
-}
-
-