lesspainful 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile.lock ADDED
@@ -0,0 +1,21 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ lesspainful (0.0.2)
5
+ bundler (~> 1.2)
6
+ json
7
+ rest-client
8
+
9
+ GEM
10
+ remote: http://rubygems.org/
11
+ specs:
12
+ json (1.7.5)
13
+ mime-types (1.19)
14
+ rest-client (1.6.7)
15
+ mime-types (>= 1.16)
16
+
17
+ PLATFORMS
18
+ ruby
19
+
20
+ DEPENDENCIES
21
+ lesspainful!
data/bin/lesspainful CHANGED
@@ -2,9 +2,10 @@
2
2
  require 'digest'
3
3
  require 'rest_client'
4
4
  require 'json'
5
+ require 'rbconfig'
5
6
 
6
7
  def host
7
- ENV["lp_host"] || "https://www.lesspainful.com"
8
+ ENV["LP_HOST"] || "https://www.lesspainful.com"
8
9
  end
9
10
 
10
11
  def digest(file)
@@ -41,10 +42,10 @@ end
41
42
  def all_files
42
43
  files = Dir.glob("#{workspace}features/**/*")
43
44
  files += Dir.glob("#{workspace}vendor/**/*")
44
- files << "Gemfile"
45
45
  if is_android?
46
46
  files << test_server_path
47
47
  end
48
+ files << "Gemfile"
48
49
  files.find_all { |file_or_dir| File.file? file_or_dir }
49
50
  end
50
51
 
@@ -53,10 +54,47 @@ def http_post(address, args)
53
54
  response.body
54
55
  end
55
56
 
57
+ def is_windows?
58
+ (RbConfig::CONFIG['host_os'] =~ /mswin|mingw|cygwin/)
59
+ end
60
+
61
+ def self.log(message)
62
+ puts "#{Time.now } #{message}"
63
+ $stdout.flush
64
+ end
65
+
66
+ def self.log_header(message)
67
+ if is_windows?
68
+ puts "\n### #{message} ###"
69
+ else
70
+ puts "\n\e[#{35}m### #{message} ###\e[0m"
71
+ end
72
+ end
73
+
74
+ start_at = Time.now
75
+
76
+ log_header("Checking for Gemfile")
77
+ unless File.exist?("Gemfile")
78
+ log("Gemfile missing.")
79
+ if is_android?
80
+ log("Creating Gemfile for Android")
81
+ tgt = File.join(File.dirname(__FILE__),"..","lib","GemfileAndroid")
82
+ else
83
+ log("Creating Gemfile for iOS")
84
+ tgt = File.join(File.dirname(__FILE__),"..","lib","GemfileIOS")
85
+ end
86
+ FileUtils.cp(File.expand_path(tgt), "Gemfile")
87
+ end
88
+
89
+ log_header("Packaging")
90
+ raise "Bundler failed. Please check command: bundle package" unless system("bundle package")
91
+
92
+ log_header("Collecting files")
56
93
  hashes = all_files.collect { |f| digest(f) }
57
94
  hashes << digest(app)
58
95
 
59
- puts "Checking files"
96
+
97
+ log_header("Negotiating upload")
60
98
  response = http_post("check_hash", {"hashes" => hashes})
61
99
 
62
100
  cache_status = JSON.parse(response)
@@ -77,6 +115,11 @@ end
77
115
 
78
116
  app_file = cache_status[digest(app)] ? digest(app) : File.new(app)
79
117
 
80
- puts "Uploading files"
118
+ log_header("Uploading negotiated files")
81
119
  response = http_post("upload", {"files" => files, "paths" => paths, "app" => app_file, "api_key" => api_key, "app_filename" => File.basename(app)})
82
- puts response
120
+
121
+ end_at = Time.now
122
+
123
+ log_header("Done (took #{(end_at - start_at).round(1)}s)")
124
+ log response
125
+
data/lesspainful.gemspec CHANGED
@@ -15,6 +15,7 @@ Gem::Specification.new do |s|
15
15
  s.executables = "lesspainful"
16
16
  s.require_paths = ["lib"]
17
17
 
18
+ s.add_dependency( "bundler","~> 1.2")
18
19
  s.add_dependency( "json")
19
20
  s.add_dependency( "rest-client")
20
21
  end
File without changes
data/lib/GemfileIOS ADDED
@@ -0,0 +1,3 @@
1
+ source 'http://rubygems.org'
2
+ gem 'calabash-cucumber'
3
+
data/lib/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module LessPainful
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lesspainful
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,8 +9,24 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-09-03 00:00:00.000000000 Z
12
+ date: 2012-09-12 00:00:00.000000000 Z
13
13
  dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: bundler
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ~>
20
+ - !ruby/object:Gem::Version
21
+ version: '1.2'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ version: '1.2'
14
30
  - !ruby/object:Gem::Dependency
15
31
  name: json
16
32
  requirement: !ruby/object:Gem::Requirement
@@ -53,10 +69,12 @@ extensions: []
53
69
  extra_rdoc_files: []
54
70
  files:
55
71
  - Gemfile
72
+ - Gemfile.lock
56
73
  - Rakefile
57
74
  - bin/lesspainful
58
75
  - lesspainful.gemspec
59
- - lib/GemfileTemplate
76
+ - lib/GemfileAndroid
77
+ - lib/GemfileIOS
60
78
  - lib/version.rb
61
79
  homepage: http://www.lesspainful.com
62
80
  licenses: []
@@ -78,7 +96,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
78
96
  version: '0'
79
97
  requirements: []
80
98
  rubyforge_project:
81
- rubygems_version: 1.8.24
99
+ rubygems_version: 1.8.23
82
100
  signing_key:
83
101
  specification_version: 3
84
102
  summary: Client for uploading calabash test to www.lesspainful.com