def test_whole_050(temp_builds_dir): """watcher.SassProjectEventHandler: Routine using some events on various sources""" basedir = temp_builds_dir.join('watcher_success_050') bdir, logger, inspector, settings_object, watcher_opts = start_env(basedir) build_sample_structure(settings_object, basedir) # Init handler project_handler = UnitTestableProjectEventHandler(settings_object, logger, inspector, **watcher_opts) # Modify a partial source project_handler.on_modified(DummyBaseEvent(bdir('sass/_toinclude.scss'))) assert os.listdir(basedir.join("css").strpath) == [ 'main_usinglib.css', 'main.css', 'main_importing.css' ] # Create a new main source source = "\n".join(( """/* New main source */""", """#content{ padding: 10px; margin: 5px 0; }""", )) with open(basedir.join('sass/new_main.scss').strpath, 'w') as f: f.write(source) project_handler.on_created(DummyBaseEvent(bdir('sass/new_main.scss'))) assert os.listdir(basedir.join("css").strpath) == [ 'new_main.css', 'main_usinglib.css', 'main.css', 'main_importing.css' ] # Delete a main source os.remove(bdir('css/main_importing.css')) os.remove(bdir('sass/main_importing.scss')) project_handler.on_deleted(DummyBaseEvent( bdir('sass/main_importing.scss'))) assert os.listdir(basedir.join("css").strpath) == [ 'new_main.css', 'main_usinglib.css', 'main.css' ] # Simulate moved source project_handler.on_moved(DummyMoveEvent(bdir('sass/_toinclude.scss'))) assert os.listdir(basedir.join("css").strpath) == [ 'new_main.css', 'main_usinglib.css', 'main.css' ]
def test_move_011(temp_builds_dir): """watcher.SassProjectEventHandler: 'Move' event from a source depending from main sample""" basedir = temp_builds_dir.join('watcher_success_011') bdir, logger, inspector, settings_object, watcher_opts = start_env(basedir) build_sample_structure(settings_object, basedir) # Init handler project_handler = UnitTestableProjectEventHandler(settings_object, logger, inspector, **watcher_opts) project_handler.on_moved(DummyMoveEvent(bdir('sass/main_importing.scss'))) assert os.listdir(basedir.join("css").strpath) == ['main_importing.css']
def test_move_010(temp_builds_dir): """watcher.SassProjectEventHandler: 'Move' event on main sample""" basedir = temp_builds_dir.join('watcher_success_010') bdir, inspector, settings_object, watcher_opts = start_env(basedir) build_sample_structure(settings_object, basedir) # Init handler project_handler = UnitTestableProjectEventHandler(settings_object, inspector, **watcher_opts) project_handler.on_moved(DummyMoveEvent(bdir('sass/main.scss'))) results = os.listdir(basedir.join("css").strpath) results.sort() assert results == ['main.css', 'main_importing.css']
def test_move_scss_012(temp_builds_dir): """'Move' event on included partial source""" basedir = temp_builds_dir.join('watcher_move_scss_012') bdir, inspector, settings_object, watcher_opts = start_env(basedir) build_scss_sample_structure(settings_object, basedir) # Init handler project_handler = UnitTestableProjectEventHandler(settings_object, inspector, **watcher_opts) project_handler.on_moved(DummyMoveEvent(bdir('sass/_toinclude.scss'))) results = os.listdir(basedir.join("css").strpath) results.sort() assert results == [ 'main.css', 'main_importing.css', 'main_usinglib.css', ]