`
haojinghua
  • 浏览: 54303 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

clean code

阅读更多
package fitnesse.html;
import fitnesse.responders.run.SuiteResponder;
import fitnesse.wiki.*;
public class SetupTeardownIncluder {
private PageData pageData;
private boolean isSuite;
private WikiPage testPage;
private StringBuffer newPageContent;
private PageCrawler pageCrawler;
public static String render(PageData pageData) throws Exception {
return render(pageData, false);
}
public static String render(PageData pageData, boolean isSuite)
throws Exception {
return new SetupTeardownIncluder(pageData).render(isSuite);
}
private SetupTeardownIncluder(PageData pageData) {
this.pageData = pageData;
testPage = pageData.getWikiPage();
pageCrawler = testPage.getPageCrawler();
newPageContent = new StringBuffer();
}
private String render(boolean isSuite) throws Exception {
this.isSuite = isSuite;
if (isTestPage())
includeSetupAndTeardownPages();
return pageData.getHtml();
}
private boolean isTestPage() throws Exception {
return pageData.hasAttribute("Test");
}
private void includeSetupAndTeardownPages() throws Exception {
includeSetupPages();
includePageContent();
includeTeardownPages();
updatePageContent();
}
private void includeSetupPages() throws Exception {
if (isSuite)
includeSuiteSetupPage();
includeSetupPage();
}
private void includeSuiteSetupPage() throws Exception {
include(SuiteResponder.SUITE_SETUP_NAME, "-setup");
}
private void includeSetupPage() throws Exception {
include("SetUp", "-setup");
}
private void includePageContent() throws Exception {
newPageContent.append(pageData.getContent());
}
private void includeTeardownPages() throws Exception {
includeTeardownPage();
if (isSuite)
includeSuiteTeardownPage();
}
private void includeTeardownPage() throws Exception {
include("TearDown", "-teardown");
}
private void includeSuiteTeardownPage() throws Exception {
include(SuiteResponder.SUITE_TEARDOWN_NAME, "-teardown");
}
private void updatePageContent() throws Exception {
pageData.setContent(newPageContent.toString());
}
private void include(String pageName, String arg) throws Exception {
WikiPage inheritedPage = findInheritedPage(pageName);
if (inheritedPage != null) {
String pagePathName = getPathNameForPage(inheritedPage);
buildIncludeDirective(pagePathName, arg);
}
}
private WikiPage findInheritedPage(String pageName) throws Exception {
return PageCrawlerImpl.getInheritedPage(pageName, testPage);
}
private String getPathNameForPage(WikiPage page) throws Exception {
WikiPagePath pagePath = pageCrawler.getFullPath(page);
return PathParser.render(pagePath);
}
private void buildIncludeDirective(String pagePathName, String arg) {
newPageContent
.append("\n!include ")
.append(arg)
.append(" .")
.append(pagePathName)
.append("\n");
}
}
分享到:
评论

相关推荐

    Write Clean Code Write Clean Code Write Clean Code Write Clean Code

    《Write Clean Code》是微软出版的一本专注于C语言编程实践的书籍,旨在帮助开发者提高代码质量,编写出更清晰、更可维护的程序。书中的内容涵盖了C编程的多个核心领域,包括基本语法、错误处理、内存管理、数据结构...

    Clean Code A Handbook of Agile Software Craftsmanship 无水印pdf

    Clean Code A Handbook of Agile Software Craftsmanship 英文无水印pdf pdf所有页面使用FoxitReader和PDF-XChangeViewer测试都可以打开 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自...

    clean code(中文完整版).7z

    《Clean Code(评注版)》提出一种观念:代码质量与其整洁度成正比。干净的代码,既在质量上较为可靠,也为后期维护、升级奠定了良好的基础。《Clean Code(评注版)》作者给出了一系列行之有效的整洁代码操作实践。这些...

    Writing Clean Code中文版

    ### 清晰编程的核心概念与实践 —— 《Writing Clean Code中文版》解析 #### 标题解析 - **标题**:“Writing Clean Code中文版”表明这是一本关于如何编写清晰、高质量代码的书籍,其内容是针对中文读者群体。 ##...

    Writing Clean Code.rar

    《编写整洁代码》是软件开发领域中一个至关重要的主题,旨在提高代码的可读性、可维护性和可扩展性。本文将深入探讨该主题,并基于...在《Writing Clean Code》中,你将找到更多关于如何实现这一目标的具体指导和示例。

    Clean Code Summary 无水印pdf

    Clean Code Summary 英文无水印pdf pdf所有页面使用FoxitReader和PDF-XChangeViewer测试都可以打开 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除

    Writing Clean Code(PDF版本)

    《Writing Clean Code》这本书由Steve Maguire撰写,姜静波、佟金荣翻译,麦中凡校对,由电子工业出版社出版。本书是关于如何编写高质量、无错误的C语言程序的专业指南。作者基于自己在微软的工作经验和教训,分享了...

    Clean Code A Handbook of Agile Software Craftsmanship

    《Clean Code》是由著名软件工程师Robert C. Martin(Uncle Bob)所著,是一本关于敏捷软件开发中编写高质量代码的指南。这本书以其深入浅出的写作风格,从实践出发,结合理论,再回归实践,揭示了编写“干净代码”...

    24 Patterns for Clean Code azw3

    24 Patterns for Clean Code 英文azw3 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除

    Clean Code A Handbook of Agile Software Craftsmanship英文版

    《Clean Code》是由著名软件工程师Robert C. Martin(也被称为Uncle Bob)撰写的一本经典著作,主要关注的是如何编写出可读性好、可维护性强的高质量代码,是敏捷软件开发领域的重要参考资料。这本书的核心理念是...

    完美模式设计指南(Write Clean Code)

    完美模式设计指南(Write Clean Code) CHM版 繁体中文

    24 Patterns for Clean Code mobi

    24 Patterns for Clean Code 英文mobi 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除

    《Clean Code》读后感

    《Clean Code》是软件开发领域一本非常经典的书籍,由Robert C. Martin(也被称为Uncle Bob)撰写。这本书深入探讨了编写整洁、可读、可维护代码的重要性,旨在提升软件开发人员的职业素养和代码质量。在阅读这本书...

    CleanCode ppt

    ### CleanCode概述 《CleanCode》是一本关于提高软件开发质量的经典著作,它不仅强调了良好的架构和项目管理的重要性,还特别突出了代码本身的质量对于软件成功的关键作用。书中提出了“整洁代码”的概念,即代码的...

    Clean Code A Handbook of Agile Software Craftsmanship epub

    Clean Code A Handbook of Agile Software Craftsmanship 英文epub 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除

    Writing Clean Code

    Writing Clean Code 不是 Solid Code

    clean_code(中文完整版).rar

    《Clean Code》中文完整版.pdf 这本书是软件开发领域中一本经典的著作,由著名软件工程师Robert C. Martin(Bob大叔)撰写。《Clean Code》强调编写整洁、可读性强的代码,这对于任何软件项目的长期维护和扩展至关...

    Clean Code Summary Agile Software Craftmanship Guidelines Developer mobi

    Clean Code Summary Agile Software Craftmanship Guidelines Developer Deconstructed 英文mobi 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除

Global site tag (gtag.js) - Google Analytics