TEST_FIXTURE(InteractorTestFixture, TaskSelection_MouseRightMove) { MyDoorway platform; LibraryScope libraryScope(cout, &platform); libraryScope.set_default_fonts_path(TESTLIB_FONTS_PATH); SpDocument spDoc( new Document(libraryScope) ); spDoc->create_empty(); GraphicView* pView = Injector::inject_SimpleView(libraryScope, spDoc.get()); SpInteractor pIntor(Injector::inject_Interactor(libraryScope, WpDocument(spDoc), pView, NULL)); pView->set_interactor(pIntor.get()); MyTaskSelection task(pIntor.get()); task.init_task(); task.process_event( Event(Event::k_mouse_right_down, 10, 33, k_mouse_right) ); task.process_event( Event(Event::k_mouse_move, 11, 35, k_mouse_right) ); CHECK( task.is_waiting_for_point_2_right() == true ); }
TEST_FIXTURE(InteractorTestFixture, TaskSelection_Creation) { MyDoorway platform; LibraryScope libraryScope(cout, &platform); libraryScope.set_default_fonts_path(TESTLIB_FONTS_PATH); SpDocument spDoc( new Document(libraryScope) ); spDoc->create_empty(); GraphicView* pView = Injector::inject_SimpleView(libraryScope, spDoc.get()); SpInteractor pIntor(Injector::inject_Interactor(libraryScope, WpDocument(spDoc), pView, NULL)); pView->set_interactor(pIntor.get()); MyTaskSelection task(pIntor.get()); task.init_task(); CHECK( task.is_waiting_for_first_point() == true ); CHECK( task.first_point_x() == 0 ); CHECK( task.first_point_y() == 0 ); }
TEST_FIXTURE(InteractorTestFixture, TaskSelection_MouseRightUp) { MyDoorway platform; LibraryScope libraryScope(cout, &platform); libraryScope.set_default_fonts_path(TESTLIB_FONTS_PATH); SpDocument spDoc( new Document(libraryScope) ); spDoc->create_empty(); GraphicView* pView = Injector::inject_SimpleView(libraryScope, spDoc.get()); MyInteractor* pIntor = LOMSE_NEW MyInteractor(libraryScope, WpDocument(spDoc), pView); SpInteractor sp(pIntor); pView->set_interactor(pIntor); MyTaskSelection task(pIntor); task.init_task(); task.process_event( Event(Event::k_mouse_right_down, 10, 33, k_mouse_right) ); task.process_event( Event(Event::k_mouse_move, 11, 35, k_mouse_right) ); CHECK( pIntor->select_object_invoked() == false ); task.process_event( Event(Event::k_mouse_right_up, 12, 34, k_mouse_right) ); CHECK( task.is_waiting_for_first_point() == true ); CHECK( pIntor->select_object_invoked() == true ); CHECK( pIntor->sel_point_is(10, 33) == true ); }