l5m-tools 0.0.2.beta

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.
@@ -0,0 +1,69 @@
1
+ module L5MTools
2
+ module Tools
3
+ def send_mail to, subject="", body=""
4
+ require 'win32ole'
5
+ outlook = WIN32OLE.new('Outlook.Application')
6
+ mapi = outlook.GetNameSpace('MAPI')
7
+ message = outlook.CreateItem(0)
8
+ message.Subject = subject
9
+ message.Body = body
10
+ message.To = to
11
+ message.Save
12
+ message.Send
13
+ mapi.SyncObjects
14
+ end
15
+
16
+ require "fileutils"
17
+ include FileUtils
18
+ require 'pathname'
19
+
20
+ def replace(in_file, replacements)
21
+ contents = IO.read(in_file)
22
+ changed = false
23
+ replacements.each do | key, value |
24
+ if(contents.gsub!(key, value))
25
+ changed = true;
26
+ end
27
+ end
28
+ File.open(in_file, 'w') { | io | io.puts(contents) }
29
+ return changed
30
+ end
31
+ def copy_silently(from, to, replacements)
32
+ copy(from, to)
33
+ replace(to, replacements)
34
+ end
35
+ def change_directory(dir, &operation)
36
+ return Dir::chdir(dir, &operation) if File.exists? dir
37
+ end
38
+ def ask(default_answer, *question_lines)
39
+ puts question_lines
40
+ print "[#{default_answer}] => "
41
+ answer = STDIN.readline.strip
42
+ answer == '' ? default_answer.to_s : answer.to_s
43
+ end
44
+
45
+
46
+ def to_file(file, replacements = {})
47
+ dirname = File.dirname(file)
48
+ basename = File.basename(file)
49
+ replacements.each do | key, value |
50
+ basename.gsub!(key, value)
51
+ end
52
+ dirname + File::SEPARATOR + basename;
53
+ end
54
+
55
+ def duplicate_and_replace(file, replacements = {})
56
+ to = to_file(file, replacements)
57
+ yield to if block_given?
58
+ copy_silently(file, to, replacements)
59
+ end
60
+
61
+
62
+ def user_home
63
+ require 'etc'
64
+ Etc.getpwuid.dir
65
+ end
66
+
67
+ #module_function :send_mail, :replace, :copy_silently, :change_directory, :ask
68
+ end
69
+ end
data/lib/l5m-tools.rb ADDED
@@ -0,0 +1,20 @@
1
+ require 'l5m-tools/l5m-tools-module'
2
+ require 'l5m-tools/string'
3
+ require 'l5m-tools/svn'
4
+
5
+ module L5MTools
6
+ class Application
7
+ alias old_make_app make_app
8
+ def make_app(*args, &block)
9
+ package = ask("rem","Please input package name").downcase
10
+ application = ask("","Please input application name")
11
+ use_base_worker = ask("true","Use AbstractBaseWorker?").to_boolean
12
+ old_make_app(package, application, use_base_worker, &block)
13
+ end
14
+ alias :make :make_app
15
+ alias :dup :duplicate_app
16
+ def run(*args, &block)
17
+ send args.shift, *args, &block
18
+ end
19
+ end
20
+ end
data/test/helper.rb ADDED
@@ -0,0 +1,18 @@
1
+ require 'rubygems'
2
+ require 'bundler'
3
+ begin
4
+ Bundler.setup(:default, :development)
5
+ rescue Bundler::BundlerError => e
6
+ $stderr.puts e.message
7
+ $stderr.puts "Run `bundle install` to install missing gems"
8
+ exit e.status_code
9
+ end
10
+ require 'test/unit'
11
+ require 'shoulda'
12
+
13
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
14
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
15
+ require 'l5m-tools'
16
+
17
+ class Test::Unit::TestCase
18
+ end
@@ -0,0 +1,34 @@
1
+ require 'helper'
2
+
3
+ class TestL5mTools < Test::Unit::TestCase
4
+ # should "probably rename this file and start testing for real" do
5
+ # flunk "hey buddy, you should probably rename this file and start testing for real"
6
+ # end
7
+
8
+ #should "duplicate app test" do
9
+ # L5MTools.application.run('dup', 'c:/files.cvs', 'HelloWorld', 'Yahoo')
10
+ #end
11
+ #should "make app test" do
12
+ #L5MTools.application.make_app
13
+ #end
14
+ #should "svn update test" do
15
+ # puts L5MTools.svn.run('update', 'rem')
16
+ # end
17
+ #should "svn info test" do
18
+ # puts L5MTools.svn.run('info', '-s' ,'ronghai@me.com', '--title','test case' , '-e' , 'rei')
19
+ #end
20
+ # should "svn info test" do
21
+ # puts L5MTools.svn.run('help', 'rei')
22
+ # end
23
+ # should "svn info test" do
24
+ # puts L5MTools.svn.run('info', 'rei' , '--','--xml')
25
+ # end
26
+
27
+ # should "svn log test" do
28
+ # puts L5MTools.svn.run('log', 'rei')
29
+ # end
30
+
31
+ # should "svn status test" do
32
+ # puts L5MTools.svn.run('st', 'rei')
33
+ # end
34
+ end
metadata ADDED
@@ -0,0 +1,133 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: l5m-tools
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.2.beta
5
+ prerelease: 6
6
+ platform: ruby
7
+ authors:
8
+ - RONGHAI
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2013-02-07 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: shoulda
16
+ requirement: &70256627042100 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :development
23
+ prerelease: false
24
+ version_requirements: *70256627042100
25
+ - !ruby/object:Gem::Dependency
26
+ name: rdoc
27
+ requirement: &70256627041060 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ~>
31
+ - !ruby/object:Gem::Version
32
+ version: '3.12'
33
+ type: :development
34
+ prerelease: false
35
+ version_requirements: *70256627041060
36
+ - !ruby/object:Gem::Dependency
37
+ name: bundler
38
+ requirement: &70256627040220 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ~>
42
+ - !ruby/object:Gem::Version
43
+ version: 1.2.0
44
+ type: :development
45
+ prerelease: false
46
+ version_requirements: *70256627040220
47
+ - !ruby/object:Gem::Dependency
48
+ name: jeweler
49
+ requirement: &70256627038780 !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: 1.8.4
55
+ type: :development
56
+ prerelease: false
57
+ version_requirements: *70256627038780
58
+ description: A tool set for Lake5Media and QingheTech developer
59
+ email: ronghai.wei@outlook.com
60
+ executables:
61
+ - duplicate-app
62
+ - l5m
63
+ - make-app
64
+ - set_env.sh
65
+ - svn.tool
66
+ extensions: []
67
+ extra_rdoc_files:
68
+ - LICENSE.txt
69
+ - README
70
+ - README.rdoc
71
+ files:
72
+ - .document
73
+ - Gemfile
74
+ - LICENSE.txt
75
+ - README
76
+ - README.rdoc
77
+ - Rakefile
78
+ - VERSION
79
+ - bin/duplicate-app
80
+ - bin/l5m
81
+ - bin/make-app
82
+ - bin/set_env.sh
83
+ - bin/svn.tool
84
+ - info
85
+ - l5m-tools.gemspec
86
+ - lib/l5m-tools.rb
87
+ - lib/l5m-tools/application.rb
88
+ - lib/l5m-tools/array.rb
89
+ - lib/l5m-tools/env.rb
90
+ - lib/l5m-tools/ignore/svn_ingore.yaml
91
+ - lib/l5m-tools/l5m-tools-module.rb
92
+ - lib/l5m-tools/string.rb
93
+ - lib/l5m-tools/svn.rb
94
+ - lib/l5m-tools/template/Template.jsp
95
+ - lib/l5m-tools/template/TemplateBaseAbstractWorker.java
96
+ - lib/l5m-tools/template/TemplateServicerImpl.java
97
+ - lib/l5m-tools/template/TemplateWorker.java
98
+ - lib/l5m-tools/template/frt.jsp
99
+ - lib/l5m-tools/template/ms2.jsp
100
+ - lib/l5m-tools/template/rad.jsp
101
+ - lib/l5m-tools/template/ttv2.jsp
102
+ - lib/l5m-tools/tools.rb
103
+ - test/helper.rb
104
+ - test/test_l5m-tools.rb
105
+ homepage: http://github.com/RONGHAI/l5m-tools
106
+ licenses:
107
+ - MIT
108
+ post_install_message:
109
+ rdoc_options: []
110
+ require_paths:
111
+ - lib
112
+ required_ruby_version: !ruby/object:Gem::Requirement
113
+ none: false
114
+ requirements:
115
+ - - ! '>='
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ segments:
119
+ - 0
120
+ hash: 314583582771401735
121
+ required_rubygems_version: !ruby/object:Gem::Requirement
122
+ none: false
123
+ requirements:
124
+ - - ! '>'
125
+ - !ruby/object:Gem::Version
126
+ version: 1.3.1
127
+ requirements: []
128
+ rubyforge_project:
129
+ rubygems_version: 1.8.17
130
+ signing_key:
131
+ specification_version: 3
132
+ summary: A tool set for Lake5Media and QingheTech developer
133
+ test_files: []