guard-play 0.1.3 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (5) hide show
  1. data/README_zh.md +127 -0
  2. data/VERSION +1 -1
  3. data/guard-play.gemspec +5 -3
  4. data/lib/guard/play.rb +2 -2
  5. metadata +15 -13
@@ -0,0 +1,127 @@
1
+ 目标
2
+ ===
3
+
4
+ Play单元测试是默认是通过浏览器执行的,在开发时需要不停的在IDE和浏览器之间切换,并点击按钮启动测试,十分不方便。
5
+
6
+ 而Play auto-test提供了无界面运行测试的方法,但启动时间比较长。
7
+
8
+ Guard是ruby界一个文件变更触发框架,可以在指定的文件发生修改后,执行相关的命令。
9
+
10
+ 为此,我实现了一个Play集成的Guard扩展: https://github.com/crazycode/guard-play
11
+
12
+ 安装准备
13
+ ======
14
+
15
+ Guard需要Ruby运行环境,并通过Bundler进行包管理,为此,需要确保安装有bundler包:
16
+
17
+ ```bash
18
+ sudo gem install bundler
19
+ ```
20
+
21
+ 配置说明
22
+ ======
23
+
24
+ 在Play应用目录,建立Gemfile,用于管理需要的gems包,内容如下:
25
+
26
+ ```ruby
27
+ source 'http://rubygems.org'
28
+ gem 'guard'
29
+ gem 'guard-play'
30
+ group :linux do
31
+ gem 'rb-inotify', require: nil
32
+ gem 'libnotify', require: nil
33
+ end
34
+ group :darwin do
35
+ gem 'rb-fsevent', require: nil
36
+ gem 'growl_notify', require: nil
37
+ end
38
+ ```
39
+
40
+ 同时,在reeb/trunk目录有Guardfile,定义了Guard规则,内容见最后附录,也不需要修改。
41
+
42
+
43
+ 第一次运行需要执行以下命令
44
+ ---------------------
45
+
46
+ 对于Linux系统:
47
+
48
+ ```bash
49
+ sudo bundle install --without darwin
50
+ ```
51
+
52
+ 对于Mac用户:
53
+
54
+ ```bash
55
+ sudo bundle install --without linux
56
+ ```
57
+
58
+ 运行
59
+ ===
60
+
61
+ 运行以下命令,打开Guard监视:
62
+
63
+ ```bash
64
+ bundle exec guard
65
+ ```
66
+ guard会进入到每一个Play应用,执行play auto-test,然后静默在后台;在发生文件修改时,guard会运行对应项目的auto-test。
67
+
68
+ 如果测试失败,桌面会出来提示信息
69
+ 如果出现编译问题,会提示编译错
70
+ 在修正上一次测试失败或编译问题时,会提示测试成功
71
+ 其它情况下,测试都通过,不会有提示信息干扰你
72
+ 请不要关闭Guard 让它一直在后台运行。
73
+
74
+
75
+
76
+ 附录
77
+ ---
78
+
79
+ 单Play!项目Guardfile样例:
80
+
81
+ ```ruby
82
+ # More info at https://github.com/guard/guard#readme
83
+ interactor :readline
84
+
85
+ case RbConfig::CONFIG['host_os'].downcase
86
+ when /linux/
87
+ # notification :libnotify
88
+ notification :notifysend
89
+ when /darwin/
90
+ notification :growl_notify
91
+ end
92
+
93
+ guard 'play' do
94
+ watch(%r{^app/})
95
+ watch(%r{^conf/})
96
+ watch(%r{^test/})
97
+ end
98
+ ````
99
+
100
+ 多Play!项目Guardfile样例,把Guardfile放到所有子项目的上级目录中,通过app_path指定具体项目的路径:
101
+
102
+ ```ruby
103
+ # More info at https://github.com/guard/guard#readme
104
+ interactor :readline
105
+
106
+ case RbConfig::CONFIG['host_os'].downcase
107
+ when /linux/
108
+ # notification :libnotify
109
+ notification :notifysend
110
+ when /darwin/
111
+ notification :growl_notify
112
+ end
113
+
114
+ guard 'play', app_path: "website/www" do
115
+ watch(%r{^website/www/app/})
116
+ watch(%r{^website/www/conf/})
117
+ watch(%r{^website/www/test/})
118
+ watch(%r{^module/})
119
+ end
120
+
121
+ guard 'play', app_path: "website/home" do
122
+ watch(%r{^website/home/app/})
123
+ watch(%r{^website/home/conf/})
124
+ watch(%r{^website/home/test/})
125
+ watch(%r{^module/})
126
+ end
127
+ ````
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.3
1
+ 0.1.4
@@ -5,16 +5,17 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "guard-play"
8
- s.version = "0.1.3"
8
+ s.version = "0.1.4"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["crazycode"]
12
- s.date = "2012-03-02"
12
+ s.date = "2012-03-22"
13
13
  s.description = "guard helper for play! framework 1.x"
14
14
  s.email = "crazycode@gmail.com"
15
15
  s.extra_rdoc_files = [
16
16
  "LICENSE.txt",
17
- "README.rdoc"
17
+ "README.rdoc",
18
+ "README_zh.md"
18
19
  ]
19
20
  s.files = [
20
21
  ".document",
@@ -22,6 +23,7 @@ Gem::Specification.new do |s|
22
23
  "Gemfile.lock",
23
24
  "LICENSE.txt",
24
25
  "README.rdoc",
26
+ "README_zh.md",
25
27
  "Rakefile",
26
28
  "VERSION",
27
29
  "guard-play.gemspec",
@@ -18,8 +18,8 @@ module Guard
18
18
  @last_failed = false
19
19
  @app_path = @options[:app_path]
20
20
  @notify_title = @app_path.empty? ? "Play!" : "Play! on #{@app_path}"
21
- @cmd_auto_test_deps = "play auto-test #{@app_path} --deps"
22
- @cmd_auto_test = "play auto-test #{@app_path}"
21
+ @cmd_auto_test_deps = "cd #{@app_path}; play auto-test --deps; cd -"
22
+ @cmd_auto_test = "cd #{@app_path}; play auto-test; cd -"
23
23
  end
24
24
 
25
25
  # Call once when Guard starts. Please override initialize method to init stuff.
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: guard-play
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-03-02 00:00:00.000000000 Z
12
+ date: 2012-03-22 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: shoulda
16
- requirement: &10790440 !ruby/object:Gem::Requirement
16
+ requirement: &18132840 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *10790440
24
+ version_requirements: *18132840
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: rdoc
27
- requirement: &10789220 !ruby/object:Gem::Requirement
27
+ requirement: &18131880 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '3.12'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *10789220
35
+ version_requirements: *18131880
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: bundler
38
- requirement: &10029720 !ruby/object:Gem::Requirement
38
+ requirement: &18130960 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: 1.0.0
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *10029720
46
+ version_requirements: *18130960
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: jeweler
49
- requirement: &10029060 !ruby/object:Gem::Requirement
49
+ requirement: &18129760 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 1.8.3
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *10029060
57
+ version_requirements: *18129760
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: guard
60
- requirement: &10028400 !ruby/object:Gem::Requirement
60
+ requirement: &18128440 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,7 +65,7 @@ dependencies:
65
65
  version: '0'
66
66
  type: :runtime
67
67
  prerelease: false
68
- version_requirements: *10028400
68
+ version_requirements: *18128440
69
69
  description: guard helper for play! framework 1.x
70
70
  email: crazycode@gmail.com
71
71
  executables: []
@@ -73,12 +73,14 @@ extensions: []
73
73
  extra_rdoc_files:
74
74
  - LICENSE.txt
75
75
  - README.rdoc
76
+ - README_zh.md
76
77
  files:
77
78
  - .document
78
79
  - Gemfile
79
80
  - Gemfile.lock
80
81
  - LICENSE.txt
81
82
  - README.rdoc
83
+ - README_zh.md
82
84
  - Rakefile
83
85
  - VERSION
84
86
  - guard-play.gemspec
@@ -101,7 +103,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
101
103
  version: '0'
102
104
  segments:
103
105
  - 0
104
- hash: 4133938169752664196
106
+ hash: 3460943723590285304
105
107
  required_rubygems_version: !ruby/object:Gem::Requirement
106
108
  none: false
107
109
  requirements: