Spock - Document -05 - Extensions】的更多相关文章

Extensions Peter Niederwieser, The Spock Framework TeamVersion 1.1 Spock comes with a powerful extension mechanism, which allows to hook into a spec’s lifecycle to enrich or alter its behavior. In this chapter, we will first learn about Spock’s built…
Spock Primer Peter Niederwieser, The Spock Framework TeamVersion 1.1 This chapter assumes that you have a basic knowledge of Groovy and unit testing. If you are a Java developer but haven’t heard about Groovy, don’t worry - Groovy will feel very fami…
Modules Peter Niederwieser, The Spock Framework TeamVersion 1.1 Guice Module Integration with the Guice IoC container. For examples see the specs in the codebase. Spring Module The Spring module enables integration with Spring TestContext Framework.…
Interaction Based Testing Peter Niederwieser, The Spock Framework TeamVersion 1.1 Interaction-based testing is a design and testing technique that emerged in the Extreme Programming (XP) community in the early 2000’s. Focusing on the behavior of obje…
Data Driven Testing Peter Niederwieser, The Spock Framework TeamVersion 1.1 Oftentimes, it is useful to exercise the same test code multiple times, with varying inputs and expected results. Spock’s data driven testing support makes this a first class…
Introduction Peter Niederwieser, The Spock Framework TeamVersion 1.1 Spock is a testing and specification framework for Java and Groovy applications. What makes it stand out from the crowd is its beautiful and highly expressive specification language…
本文转载自 http://www.ietf.org/rfc/rfc3261.txt 中文翻译可参考 http://wenku.baidu.com/view/3e59517b1711cc7931b71654.html Network Working Group J. Rosenberg Request for Comments: 3261 dynamicsoft Obsoletes: 2543 H. Schulzrinne Category: Standards Track Columbia U.…
总结:本文总结了web移动端的常见问题并附上解决方案,包括:Meta标签.获取滚动条的值.禁止选择文本.屏蔽阴影.css之border-box.css3多文本换行.Retina屏幕高清图片.html5重力感应事件.移动端touch事件.单击延迟等 ... Meta标签: 1 <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0;" name="vi…
[ISUX转译]iOS 8人机界面指南(一):UI设计基础 糖箔糊2014.09.23 文章索引 1.1 为iOS而设计(Designing for iOS) 1.1.1 以内容为核心(Defer to Content) 1.1.2 保证清晰度(Provide Clarity) 1.1.3 用深度来体现层次(Use Depth to Communicate) 1.2 iOS应用解析(iOS App Anatomy) 1.3 适应性和布局(Adaptivity and Layout) 1.3.1…
9.REINDEX API Reindex要求为源索引中的所有文档启用_source. reindex 不会配置目标索引,不会复制源索引的设置.你需要在reindex之前先指定mapping,分片数量,副本数量等选项. _reindex最常用的一种方式是复制一个索引.下例会将twitter索引中的文档复制到new_twitter索引中: POST _reindex { "source": { "index": "twitter" }, "…
5. UPDATE API 更新操作可以使用脚本来更新.更新的时候会先从索引中获取文档数据(在每个分片中的集合),然后运行脚本(使用可选的脚本语言和参数),再果进行索引(还允许删除或忽略该操作).它使用版本号保证在读取文档和重新索引期间,被更新的文档不会发生任何修改操作. 注意,update操作会重新索引文档,它可以减少网络往返次数和降低在获取文档和索引文档之间发生版本号冲突的可能.要支持这一特性,需要开启_source字段(因为要读取旧数据,和替换操作不一样,替换操作不需要读旧数据). 例如,…
Single document APIs Index API Get API Delete API Update API Multi-document APIs Multi Get API Bulk API Delete By Query API Update By Query API Reindex API 所有CRUD api都是单索引api.索引参数接受单个索引名,或指向单个索引的别名. 1.Index API index API 可以添加或者更新特定索引的文档,并使其可搜索.下面的例子插…
8.Bulk API 可以把多个index或delete操作放在单个bulk API中执行.这样可以极大地提高索引速度. /_bulkAPI使用如下的JSON结构: action_and_meta_data\n optional_source\n action_and_meta_data\n optional_source\n .... action_and_meta_data\n optional_source\n 注意,最后一行数据必须要以\n结尾.发送请求时,Content-Type 标头…
7.Multi Get API(Multi Get API) multi GET API 允许你一次性获取多个文档,你需要指定docs数组,其中包含了所有你需要查询的文档,每个查询结构至少包含索引,类型和文档id.如果操作过程中遇到错误将会返回错误信息.返回的结果与 GET API 的结果结构类似. 如下例所示: GET /_mget { "docs" : [ { "_index" : "test", "_type" : &q…
6.Update By Query API _update_by_query 接口可以在不改变 source 的情况下对 index 中的每个文档进行更新.这对于获取新属性或其他联机映射更改很有用.以下是 API: POST twitter/_update_by_query?conflicts=proceed 这将返回如下内容: { "took" : 147, "timed_out": false, "updated": 120, "d…
4.Delete By Query API _delete_by_query API可以删除某个匹配条件的文档: POST twitter/_delete_by_query { "query": { "match": { "message": "some message" } } } query字段的语法规则和 Search API一样.你也可以传递和search API一样的q参数 返回结果: { "took&qu…
3.Delete API delete API 可以让你删除一个特定id的文档,下面例子删除twitter索引中_doc类型.id为1的文档: DELETE /twitter/_doc/1 返回结果: { "_shards" : { "total" : 2, "failed" : 0, "successful" : 2 }, "_index" : "twitter", "_ty…
2.GET API get API 可以通过文档id从索引中获取json格式的文档,以下示例从twitter索引中获取type为_doc,id值为0为的JSON文档: GET twitter/_doc/0 返回结果: { "_index" : "twitter", "_type" : "_doc", "_id" : "0", "_version" : 1, "…
data replication model 本节首先简要介绍Elasticsearch的data replication model,然后详细描述以下CRUD api: 1.读写文档(Reading and Writing documents) 1.1 介绍(Introduction) 在es中的每个索引都会被划分成一组分片,并且每个分片都有多个副本.这些副本是一组副本分片并且当删除或者添加文档的时候必须同步到各个副本.如果我们没有做到这点,从不同副本中读取的数据会不一致.我们把分片副本同步和…
本文将从个人经验出发,讲述为什么需要Chrome插件,如何开发,如何调试,到哪里找资料,会遇到怎样的问题以及如何解决等,同时给出一个个人认为的比较典型的例子——获取网页内容,和服务器交互,再把信息反馈给用户.OK,准备开始吧,我尽量把文章写得好看点,以免读者打瞌睡. 目录 为什么需要 为什么是Chrome 需要准备什么 如何开始 Page Action Chrome插件结构 学习资料 我的例子 调试 调试Content Scripts 调试Background 调试Popup 一些问题 总结 为…
   本文由海水的味道收集整理,欢迎转载    当前版本 0.0.1  iOS 8 Extensions 一.扩展概述 扩展(Extension)是iOS 8中引入的一个非常重要的新特性.扩展让app之间的数据交互成为可能.用户可以在app中使用其他应用提供的功能,而无需离开当前的应用. 在iOS 8系统之前,每一个app在物理上都是彼此独立的,app之间不能互访彼此的私有数据. 而在引入扩展之后,其他app可以与扩展进行数据交换.基于安全和性能的考虑,每一个扩展运行在一个单独的进程中,它拥有自…
javascript基础05 1.变量的作用域 变量既可以是全局,也可以是局部的. 全局变量:可以在脚本中的任何位置被引用,一旦你在某个脚本里声明了全局变量,你就可以 在这个脚本的任何位置(包括函数内部)引用它,全局变量的作用域是整个脚本; 局部变量:只存在于对它做出声明的函数内部,在函数的外部无法相用它,局部变量的作用域 仅限于函数内部; function square(num){ var total; total = num * num; return total; } var total…
JavaScript学习05 定时器 定时器1 用以指定在一段特定的时间后执行某段程序. setTimeout(): 格式:[定时器对象名=] setTimeout(“<表达式>”,毫秒) 功能:执行<表达式>一次. 例子: <!DOCTYPE html> <html> <head> <title>timer1.html</title> <meta http-equiv="keywords" co…
做 Programming Windows with MFC 2nd 的例子 MyWord 的时候. 发现启动的时候总是报错: Fail to create empty document. 搜索了一下. 参考: http://bbs.csdn.net/topics/60364077 jiangsheng 回复于: 2004-11-06 05:46:36 建立空文档失败的同时在调试输出窗口应该有更详细的错误报告 去看了一下: 顺藤摸瓜, 原来是 RC 文件的问题. 后续补充 -----------…
MIME(Multipurpose Internet Mail Extensions)多用途互联网邮件扩展类型.是设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开.多用于指定一些客户端自定义的文件名,以及一些媒体文件打开方式. 它是一个互联网标准,扩展了电子邮件标准,使其能够支持: 非ASCII字符文本:非文本格式附件(二进制.声音.图像等):由多部分(multiple parts)组成的消息体:包含非ASCII字符的头信息(He…
导读:一个控件在设计时的ID往往不同于生成页面后的ID,为了获得控件客户端ID,我们可以从生成的页面入手,冷静思考,把握主次,从底层框架入手 本文将为大家介绍一下 ASP.NET中在创建母版页时引来的麻烦,并分析了问题产生的实质,大家在实际操作中多多注意一下. 一.问题提出 由于总体排版和设计的需要,我们往往创建母版页来实现整个网站的统一性,最近我由于统一性的需要,把原来整个项目单独的页面全部套用了母版页.但是出现了一个错误……在我的Blog中记录一下,方便大家参考. 二. 抽象模型 由于整个页…
TF/IDF(term frequency/inverse document frequency) 的概念被公认为信息检索中最重要的发明. 一. TF/IDF描述单个term与特定document的相关性 TF(Term Frequency): 表示一个term与某个document的相关性.公式为: 这个term在document中出现的次数除以该document中所有term出现的总次数. IDF(Inverse Document Frequency)表示一个term表示document的主…
首先是用于显示分词信息的HelloCustomAnalyzer.java package com.jadyer.lucene; import java.io.IOException; import java.io.StringReader; import org.apache.lucene.analysis.Analyzer; import org.apache.lucene.analysis.TokenStream; import org.apache.lucene.analysis.toke…
学习zeptoajax之前需要先脑补下,强烈推荐此文http://www.cnblogs.com/heyuquan/archive/2013/05/13/js-jquery-ajax.html 还有Aaron 的jquery源码分析系列,讲jquery的ajax的部分,当然其他也可以看,很值得学习. zepto ajax部分的设计相对简单,毕竟zepto就是轻量级的库,没有jqeury那样复杂,jquery ajax是依赖于Deferred模块的,整个代码一千多行.而zepto只有几百行,整体设…
单页应用里整个页面只会在第一次完全刷新,后面只会局部刷新(一般不包括head及里面的title),所以无法在服务器端控制title,只能在页面刷新的时候通过js修改title.常规做法如下,可惜在iOS微信浏览器无效. 问题原因: 因为微信浏览器首次加载页面初始化title后,就再也不监听 document.title的change事件. 解决方案: 修改title之后,给页面加上一个内容为空的iframe,随后立即删除这个iframe,这时候会刷新title.但是如果简单的这样设置,一般是会有…