def test_undo_undoes_changes(app): resp = app.post_json( '/refactor/rename', { 'name': 'Llama', 'path': 'basic/foo.py', 'offset': 8, }) if resp.json['result'] != 'success': print(resp.json['message']) assert resp.json['result'] == 'success' resp = app.post_json( '/refactor/perform', resp.json) with pytest.raises(ValueError): common.compare_workspaces( paths.packages('basic'), paths.active('main', 'basic')) resp = app.post_json( '/history/undo', {'index': 0}) assert resp.json['result'] == 'success' common.compare_workspaces( paths.packages('basic'), paths.active('main', 'basic'))
def test_cross_add_argument(workspace): changes = workspace.add_argument('basic/bar.py', 163, 3, 'newarg', "\"default\"", "\"value\"") workspace.perform(changes) common.compare_workspaces(paths.approved('cross_basic_add_argument'), paths.active('main', 'basic'))
def test_simple_move(activate_package, make_workspace): activate_package(package='basic', into='main') workspace = make_workspace('main') changes = workspace.move('basic/bar.py', 31, 'basic/foo.py') workspace.perform(changes) common.compare_workspaces(paths.approved('simple_move'), paths.active('main', 'basic'))
def test_cross_remove_argument(workspace): changes = workspace.remove_argument('basic/bar.py', 163, 1) workspace.perform(changes) common.compare_workspaces(paths.approved('cross_basic_remove_argument'), paths.active('main', 'basic')) common.compare_workspaces(paths.approved('cross_use_bar_remove_argument'), paths.active('cross', 'use_bar'))
def test_undo_undoes_changes(workspace): workspace.perform(workspace.rename('basic/foo.py', 8, 'Llama')) with pytest.raises(ValueError): common.compare_workspaces(paths.packages('basic'), paths.active('main', 'basic')) workspace.undo() common.compare_workspaces(paths.packages('basic'), paths.active('main', 'basic'))
def test_cross_remove_argument(workspace): changes = workspace.remove_argument('basic/bar.py', 163, 1) workspace.perform(changes) common.compare_workspaces( paths.approved('cross_basic_remove_argument'), paths.active('main', 'basic')) common.compare_workspaces( paths.approved('cross_use_bar_remove_argument'), paths.active('cross', 'use_bar'))
def test_rename(app): resp = app.post_json('/refactor/rename', { 'name': 'Llama', 'path': 'basic/foo.py', 'offset': 8 }) assert resp.json['result'] == 'success' app.post_json('/refactor/perform', resp.json) common.compare_workspaces(paths.approved('basic_rename_llama'), paths.active('main', 'basic'))
def test_cross_normalize_arguments(workspace): changes = workspace.normalize_arguments( 'basic/bar.py', 163) # 163 offset = cursor position on "a_free_func" workspace.perform(changes) common.compare_workspaces( paths.approved('cross_basic_normalize_arguments'), paths.active('main', 'basic')) common.compare_workspaces( paths.approved('cross_use_bar_normalize_arguments'), paths.active('cross', 'use_bar'))
def test_simple_rename(activate_package, make_workspace): activate_package(package='basic', into='main') workspace = make_workspace('main') changes = workspace.rename( 'basic/foo.py', 8, 'Llama') workspace.perform(changes) common.compare_workspaces( paths.approved('basic_rename_llama'), paths.active('main', 'basic'))
def test_simple_move(activate_package, make_workspace): activate_package(package='basic', into='main') workspace = make_workspace('main') changes = workspace.move( 'basic/bar.py', 31, 'basic/foo.py') workspace.perform(changes) common.compare_workspaces( paths.approved('simple_move'), paths.active('main', 'basic'))
def test_cross_add_argument(workspace): changes = workspace.add_argument( 'basic/bar.py', 163, 3, 'newarg', "\"default\"", "\"value\"") workspace.perform(changes) common.compare_workspaces( paths.approved('cross_basic_add_argument'), paths.active('main', 'basic'))
def test_cross_normalize_arguments(workspace): changes = workspace.normalize_arguments( 'basic/bar.py', 163) # 163 offset = cursor position on "a_free_func" workspace.perform(changes) common.compare_workspaces( paths.approved('cross_basic_normalize_arguments'), paths.active('main', 'basic')) common.compare_workspaces( paths.approved('cross_use_bar_normalize_arguments'), paths.active('cross', 'use_bar'))
def test_undo_undoes_changes(workspace): workspace.perform( workspace.rename( 'basic/foo.py', 8, 'Llama')) with pytest.raises(ValueError): common.compare_workspaces( paths.packages('basic'), paths.active('main', 'basic')) workspace.undo() common.compare_workspaces( paths.packages('basic'), paths.active('main', 'basic'))