import org.eclipse.core.resources.IFile; //导入方法依赖的package包/类

/**

*

* 01. Class0 uses Class1 in require statement and in isa function

* 02. Class1 file is renamed

* 05. Class0 should get error marker at require statement and at isa function

* 06. Class1 is renamed back

* 07. Class0 should have no error markers

*/

//@formatter:on

@Test

public void testSuperClassRenamed() throws Exception {

logger.info("BuilderParticipantPluginUITest.testSuperClassRenamed");

// create project and test files

final IProject project = createJSProject("testSuperClassRenamed");

IFolder folder = configureProjectWithXtext(project);

IFolder moduleFolder = createFolder(folder, InheritanceTestFiles.inheritanceModule());

IFile parentFile = createTestFile(moduleFolder, "Parent", InheritanceTestFiles.Parent());

assertMarkers("Parent file should have no errors", parentFile, 0);

IFile childFile = createTestFile(moduleFolder, "Child", InheritanceTestFiles.Child());

assertMarkers("Child file should have no errors", childFile, 0);

// open editors of test files

IWorkbenchPage page = getActivePage();

XtextEditor parentFileXtextEditor = openAndGetXtextEditor(parentFile, page);

List> errors = getEditorErrors(parentFileXtextEditor);

assertEquals("Editor of parent should have no errors", 0, errors.size());

XtextEditor childFileXtextEditor = openAndGetXtextEditor(childFile, page);

errors = getEditorErrors(childFileXtextEditor);

assertEquals("Editor of child should have no errors", 0, errors.size());

parentFileXtextEditor.close(true);

parentFile.move(new Path("Parent2" + F_EXT), true, true, monitor());

moduleFolder.refreshLocal(IResource.DEPTH_INFINITE, monitor());

waitForAutoBuild();

waitForUpdateEditorJob();

assertFalse("Parent.n4js doesn't exist anymore", moduleFolder.getFile(new Path("Parent" + F_EXT)).exists());

IFile movedParentFile = moduleFolder.getFile("Parent2" + F_EXT);

assertTrue("Parent2.n4js does exist", movedParentFile.exists());

errors = getEditorErrors(childFileXtextEditor);

assertEquals("Editor of child should have got error markers", 3, errors.size());

movedParentFile.move(new Path("Parent" + F_EXT), true, true, monitor());

moduleFolder.refreshLocal(IResource.DEPTH_INFINITE, monitor());

waitForAutoBuild();

waitForUpdateEditorJob();

assertTrue("Parent.n4js does exist", moduleFolder.getFile(new Path("Parent" + F_EXT)).exists());

errors = getEditorErrors(childFileXtextEditor);

assertEquals("Editor of child should have no errors", 0, errors.size());

}

java move 方法_Java IFile.move方法代码示例相关推荐

  1. java五子棋棋盘_java绘制五子棋棋盘代码示例

    本篇文章小编给大家分享一下java绘制五子棋棋盘代码示例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看. 代码如下: import javax.imag ...

  2. java中move用法_Java IFile.move方法代碼示例

    import org.eclipse.core.resources.IFile; //導入方法依賴的package包/類 /** * * 01. Class0 uses Class1 in requi ...

  3. java事件绑定,Java编程GUI中的事件绑定代码示例

    程序绑定的概念: 绑定指的是一个方法的调用与方法所在的类(方法主体)关联起来.对java来说,绑定分为静态绑定和动态绑定:或者叫做前期绑定和后期绑定 静态绑定: 在程序执行前方法已经被绑定,此时由编译 ...

  4. java 凌晨,java获取整点与凌晨的时间戳代码示例

    本篇文章小编给大家分享一下java获取整点与凌晨的时间戳代码示例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看. Java中获取整点时间戳 在实际的开发 ...

  5. java secretkey用法_Java SecretKeyFactory.generateSecret方法代码示例

    本文整理汇总了Java中javax.crypto.SecretKeyFactory.generateSecret方法的典型用法代码示例.如果您正苦于以下问题:Java SecretKeyFactory ...

  6. java set 包含_Java Set.contains()方法:判断Set集合是否包含指定的对象

    Java 集合类中的 Set.contains() 方法判断 Set 集合是否包含指定的对象.该方法返回值为 boolean 类型,如果 Set 集合包含指定的对象,则返回 true,否则返回 fal ...

  7. java show过时_Java中show() 方法被那个方法代替了? java编程 显示类中信

    你说的show是swing里的吧,在老版本中Component这个超类确实有show这个方法,而且这个方法也相当有用,使一个窗口可见,并放到最前面.在jdk5.0中阻止了这个方法,普遍用setVisi ...

  8. java方法重载和重载方法_Java 8的方法参考进一步限制了重载

    java方法重载和重载方法 方法重载一直是一个充满喜忧参半的话题. 我们已经在博客上介绍了它,并介绍了几次警告: 您会后悔对Lambdas应用重载! 保持干燥:方法重载 为什么每个人都讨厌操作员超载 ...

  9. java多态 覆盖_Java ------ 继承、方法覆盖、多态

    一.什么是继承 面向对象的三大特性: 封装. 继承.多态: 继承就是子类型将父类型的的属性继承到自己类中进行使用,通过继承的方式子类型可以使用父类型的属性和方法,并且,继承只能单重继承,无法多继承,但 ...

最新文章

  1. 380万播放量,也许是全网最火的机器学习视频
  2. iOS 应用程序的启动流程及其代理
  3. 这代码水平,连 Bug 王都甘拜下风 | 每日趣闻
  4. 字节跳动凌晨发半个月奖金,网友:我酸了,又是别人家的公司!
  5. 湖南网络推广浅谈网站首页降权怎么办?
  6. MAC安装iterm2及配置
  7. Mybatis动态的添加删除列
  8. spring cloud Alibaba 的 Nacos学习笔记
  9. 快速打开Github某个commit页面的方法
  10. android自定义图标下载,charts
  11. jquery-模态框的显示与消失操作
  12. Python 函数式编程(3) —— 闭包
  13. 对矩阵进行QR分解的Matlab代码
  14. php carbon,laravel Carbon函数
  15. Node.app让Nodejs平台在iOS和OS X系统上奔跑
  16. Unity3D资源分享
  17. 光缆厂家介绍OTDR测试仪使用方法(小白必看)
  18. 信号与系统——抽样信号的傅里叶变换
  19. linux 改成utc时间_linux – 如何将时区设置为UTC-8
  20. 电脑右下角音量键打不开,调不了音量大小的解决方法

热门文章

  1. Easy Connect for mac 无法下载
  2. 动态规划问题的一般解决方案
  3. 欢迎光临 https://github.com/zjcxc
  4. Username for 'https://github.com':
  5. 计算机专业科研成果有哪些,评职称的科研成果包括哪些
  6. ProtoBuf在中C++使用介绍
  7. 移动互联网的发展现状
  8. java键盘上下左右事件_键盘事件--按下键盘上的上下左右键会打印出来
  9. arguments,callee,caller
  10. 计算机音乐刚好遇见你乐谱,李玉刚《刚好遇见你》歌谱