uispecrunner 0.4.5 → 0.4.6

Sign up to get free protection for your applications and to get access to all the features.
data/.gitmodules CHANGED
@@ -1,3 +1,3 @@
1
1
  [submodule "ext/WaxSim"]
2
2
  path = ext/WaxSim
3
- url = https://github.com/robholland/WaxSim.git
3
+ url = https://github.com/square/WaxSim.git
data/CHANGELOG CHANGED
@@ -1,3 +1,8 @@
1
+ v0.4.6
2
+ ------
3
+ - Fixed small bug in UISpecRunner::Options.from_file when supplying arguments containing a space
4
+ - Switched to Square's fork of WaxSim (https://github.com/square/WaxSim)
5
+
1
6
  v0.2.3
2
7
  -------
3
8
  - Added UISpecRunner::Options.from_file
data/Gemfile ADDED
@@ -0,0 +1,5 @@
1
+ source "http://rubygems.org"
2
+
3
+ gem "rake"
4
+ gem "jeweler"
5
+ gem "rspec"
data/Gemfile.lock ADDED
@@ -0,0 +1,26 @@
1
+ GEM
2
+ remote: http://rubygems.org/
3
+ specs:
4
+ diff-lcs (1.1.2)
5
+ git (1.2.5)
6
+ jeweler (1.6.4)
7
+ bundler (~> 1.0)
8
+ git (>= 1.2.5)
9
+ rake
10
+ rake (0.9.2)
11
+ rspec (2.6.0)
12
+ rspec-core (~> 2.6.0)
13
+ rspec-expectations (~> 2.6.0)
14
+ rspec-mocks (~> 2.6.0)
15
+ rspec-core (2.6.4)
16
+ rspec-expectations (2.6.0)
17
+ diff-lcs (~> 1.1.2)
18
+ rspec-mocks (2.6.0)
19
+
20
+ PLATFORMS
21
+ ruby
22
+
23
+ DEPENDENCIES
24
+ jeweler
25
+ rake
26
+ rspec
data/Rakefile CHANGED
@@ -20,31 +20,37 @@ begin
20
20
  end
21
21
  Jeweler::GemcutterTasks.new
22
22
  rescue LoadError
23
- puts "Jeweler (or a dependency) not available. Install it with: gem install jeweler"
23
+ puts "Jeweler (or a dependency) not available. Install it with: bundle"
24
24
  end
25
25
 
26
- require 'spec/rake/spectask'
27
- Spec::Rake::SpecTask.new(:spec) do |spec|
28
- spec.libs << 'lib' << 'spec'
29
- spec.spec_files = FileList['spec/**/*_spec.rb']
30
- end
26
+ begin
27
+ require 'rspec'
28
+
29
+ require 'spec/rake/spectask'
30
+ Spec::Rake::SpecTask.new(:spec) do |spec|
31
+ spec.libs << 'lib' << 'spec'
32
+ spec.spec_files = FileList['spec/**/*_spec.rb']
33
+ end
31
34
 
32
- Spec::Rake::SpecTask.new(:rcov) do |spec|
33
- spec.libs << 'lib' << 'spec'
34
- spec.pattern = 'spec/**/*_spec.rb'
35
- spec.rcov = true
36
- end
35
+ Spec::Rake::SpecTask.new(:rcov) do |spec|
36
+ spec.libs << 'lib' << 'spec'
37
+ spec.pattern = 'spec/**/*_spec.rb'
38
+ spec.rcov = true
39
+ end
37
40
 
38
- task :spec => :check_dependencies
41
+ task :spec => :check_dependencies
39
42
 
40
- task :default => :spec
43
+ task :default => :spec
41
44
 
42
- require 'rake/rdoctask'
43
- Rake::RDocTask.new do |rdoc|
44
- version = File.exist?('VERSION') ? File.read('VERSION') : ""
45
+ require 'rake/rdoctask'
46
+ Rake::RDocTask.new do |rdoc|
47
+ version = File.exist?('VERSION') ? File.read('VERSION') : ""
45
48
 
46
- rdoc.rdoc_dir = 'rdoc'
47
- rdoc.title = "UISpecRunner #{version}"
48
- rdoc.rdoc_files.include('README*')
49
- rdoc.rdoc_files.include('lib/**/*.rb')
49
+ rdoc.rdoc_dir = 'rdoc'
50
+ rdoc.title = "UISpecRunner #{version}"
51
+ rdoc.rdoc_files.include('README*')
52
+ rdoc.rdoc_files.include('lib/**/*.rb')
53
+ end
54
+ rescue LoadError
55
+ puts "RSpec is not available. Install it with: bundle"
50
56
  end
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.4.5
1
+ 0.4.6
@@ -17,15 +17,20 @@
17
17
  NSNumber *_family;
18
18
  DTiPhoneSimulatorSession* _session;
19
19
  NSDictionary *_env;
20
+ NSString *_videoPath;
20
21
  NSArray *_args;
22
+ CGWindowID _windowID;
23
+ QTMovie *_movie;
24
+ NSTimeInterval _lastInterval;
21
25
  }
22
26
 
23
27
  @property (nonatomic, readonly) DTiPhoneSimulatorSession* session;
24
28
 
25
29
  + (NSArray *)availableSDKs;
26
30
 
27
- - (id)initWithAppPath:(NSString *)appPath sdk:(NSString *)sdk family:(NSString *)family env:(NSDictionary *)env args:(NSArray *)args;
31
+ - (id)initWithAppPath:(NSString *)appPath sdk:(NSString *)sdk family:(NSString *)family video:(NSString *)videoPath env:(NSDictionary *)env args:(NSArray *)args;
28
32
  - (int)launch;
33
+ - (void)addScreenshotToMovie;
29
34
  - (void)end;
30
35
 
31
36
  @end
@@ -7,6 +7,7 @@
7
7
  //
8
8
 
9
9
  #import "Simulator.h"
10
+ #import <QTKit/QTKit.h>
10
11
 
11
12
  #include <sys/param.h>
12
13
  #include <objc/runtime.h>
@@ -18,7 +19,8 @@
18
19
 
19
20
  @synthesize session=_session;
20
21
 
21
- - (id)initWithAppPath:(NSString *)appPath sdk:(NSString *)sdk family:(NSString *)family env:(NSDictionary *)env args:(NSArray *)args {
22
+ - (id)initWithAppPath:(NSString *)appPath sdk:(NSString *)sdk family:(NSString *)family video:(NSString *)videoPath env:(NSDictionary *)env args:(NSArray *)args;
23
+ {
22
24
  self = [super init];
23
25
 
24
26
  NSFileManager *fileManager = [NSFileManager defaultManager];
@@ -56,6 +58,7 @@
56
58
 
57
59
  _env = [env retain];
58
60
  _args = [args retain];
61
+ _videoPath = [videoPath retain];
59
62
 
60
63
  return self;
61
64
  }
@@ -87,7 +90,7 @@
87
90
  [config setSimulatedApplicationShouldWaitForDebugger:NO];
88
91
  [config setSimulatedApplicationLaunchArgs:_args];
89
92
  [config setSimulatedApplicationLaunchEnvironment:_env];
90
- [config setLocalizedClientName:@"iCuke"];
93
+ [config setLocalizedClientName:@"WaxSim"];
91
94
 
92
95
  // Make the simulator output to the current STDERR
93
96
  // We mix them together to avoid buffering issues on STDOUT
@@ -99,7 +102,6 @@
99
102
 
100
103
  _session = [[DTiPhoneSimulatorSession alloc] init];
101
104
  [_session setDelegate:self];
102
- [_session setSimulatedApplicationPID:[NSNumber numberWithInt:35]];
103
105
 
104
106
  NSError *error;
105
107
  if (![_session requestStartWithConfig:config timeout:30 error:&error]) {
@@ -114,6 +116,27 @@
114
116
  [_session requestEndWithTimeout:0];
115
117
  }
116
118
 
119
+ - (void)addScreenshotToMovie;
120
+ {
121
+ if (!_windowID || !_movie) {
122
+ return;
123
+ }
124
+
125
+ NSTimeInterval interval = [NSDate timeIntervalSinceReferenceDate];
126
+ QTTime duration = QTMakeTimeWithTimeInterval(interval - _lastInterval);
127
+ _lastInterval = interval;
128
+
129
+ CGImageRef imageRef = CGWindowListCreateImage(CGRectNull, kCGWindowListOptionIncludingWindow, _windowID, kCGWindowImageDefault);
130
+ NSImage *image = [[NSImage alloc] initWithCGImage:imageRef size:NSZeroSize];
131
+
132
+ if ([image size].width > 5.0f) {
133
+ NSDictionary *attributes = [NSDictionary dictionaryWithObjectsAndKeys:@"mp4v", QTAddImageCodecType, [NSNumber numberWithLong:codecLowQuality], QTAddImageCodecQuality, nil];
134
+ [_movie addImage:image forDuration:duration withAttributes:attributes];
135
+ }
136
+ [image release];
137
+ CGImageRelease(imageRef);
138
+ }
139
+
117
140
  // DTiPhoneSimulatorSession Delegate
118
141
  // ---------------------------------
119
142
  - (void)session:(DTiPhoneSimulatorSession *)session didStart:(BOOL)started withError:(NSError *)error {
@@ -121,11 +144,42 @@
121
144
  WaxLog(@"Session failed to start. %@", [error localizedDescription]);
122
145
  exit(EXIT_FAILURE);
123
146
  }
147
+
148
+ if (!_videoPath) {
149
+ return;
150
+ }
151
+
152
+ WaxLog(@"Getting window list");
153
+ NSArray *windowList = (NSArray *)CGWindowListCopyWindowInfo(kCGWindowListOptionOnScreenOnly, kCGNullWindowID);
154
+ for (NSDictionary *info in windowList) {
155
+ if ([[info objectForKey:(NSString *)kCGWindowOwnerName] isEqualToString:@"iOS Simulator"] && ![[info objectForKey:(NSString *)kCGWindowName] isEqualToString:@""]) {
156
+ _windowID = [[info objectForKey:(NSString *)kCGWindowNumber] unsignedIntValue];
157
+ }
158
+ }
159
+ [windowList release];
160
+ if (_windowID) {
161
+ _movie = [[QTMovie alloc] initToWritableFile:[NSString stringWithCString:tmpnam(nil) encoding:[NSString defaultCStringEncoding]] error:NULL];
162
+ _lastInterval = [NSDate timeIntervalSinceReferenceDate];;
163
+ [NSTimer scheduledTimerWithTimeInterval:1.0/30.0 target:self selector:@selector(addScreenshotToMovie) userInfo:nil repeats:YES];
164
+ }
124
165
  }
125
166
 
126
167
  - (void)session:(DTiPhoneSimulatorSession *)session didEndWithError:(NSError *)error {
127
- WaxLog(@"Session ended with error. %@", [error localizedDescription]);
128
- if ([error code] != 2) exit(EXIT_FAILURE); // if it is a timeout error, that's cool. We are probably rebooting
168
+ if (_movie) {
169
+ NSDictionary *attributes = [NSDictionary dictionaryWithObject:[NSNumber numberWithBool:YES] forKey:QTMovieFlatten];
170
+ NSError *error = nil;
171
+ BOOL success = [_movie writeToFile:_videoPath withAttributes:attributes error:&error];
172
+ if (!success) {
173
+ WaxLog(@"Failed to write movie: %@", error);
174
+ }
175
+ [_movie release];
176
+ }
177
+ if (error) {
178
+ WaxLog(@"Session ended with error. %@", [error localizedDescription]);
179
+ if ([error code] != 2) exit(EXIT_FAILURE); // if it is a timeout error, that's cool. We are probably rebooting
180
+ } else {
181
+ exit(EXIT_SUCCESS);
182
+ }
129
183
  }
130
184
 
131
185
  @end
data/ext/WaxSim/WaxSim.m CHANGED
@@ -6,7 +6,6 @@
6
6
  static BOOL gReset = false;
7
7
 
8
8
  void printUsage();
9
- void simulate(NSString *sdk, NSString *family, NSString *appPath, NSDictionary *environment, NSArray *additionalArgs);
10
9
  void resetSignal(int sig);
11
10
 
12
11
  int main(int argc, char *argv[]) {
@@ -16,12 +15,13 @@ int main(int argc, char *argv[]) {
16
15
  char *sdk = nil;
17
16
  char *family = nil;
18
17
  char *appPath = nil;
18
+ char *videoPath = nil;
19
19
  NSMutableArray *additionalArgs = [NSMutableArray array];
20
20
  NSMutableDictionary *environment = [NSMutableDictionary dictionary];
21
21
  NSString *environment_variable;
22
22
  NSArray *environment_variable_parts;
23
23
 
24
- while ((c = getopt(argc, argv, "e:s:f:ah")) != -1) {
24
+ while ((c = getopt(argc, argv, "e:s:f:v:ah")) != -1) {
25
25
  switch(c) {
26
26
  case 'e':
27
27
  environment_variable = [NSString stringWithCString:optarg encoding:NSUTF8StringEncoding];
@@ -36,7 +36,7 @@ int main(int argc, char *argv[]) {
36
36
  family = optarg;
37
37
  break;
38
38
  case 'a':
39
- fprintf(stdout, "Available SDK Versions.\n", optopt);
39
+ fprintf(stdout, "Available SDK Versions.\n");
40
40
  for (NSString *sdkVersion in [Simulator availableSDKs]) {
41
41
  fprintf(stderr, " %s\n", [sdkVersion UTF8String]);
42
42
  }
@@ -44,6 +44,9 @@ int main(int argc, char *argv[]) {
44
44
  case 'h':
45
45
  printUsage();
46
46
  return 1;
47
+ case 'v':
48
+ videoPath = optarg;
49
+ break;
47
50
  case '?':
48
51
  if (optopt == 's' || optopt == 'f') {
49
52
  fprintf(stderr, "Option -%c requires an argument.\n", optopt);
@@ -79,21 +82,15 @@ int main(int argc, char *argv[]) {
79
82
  NSString *sdkString = sdk ? [NSString stringWithUTF8String:sdk] : nil;
80
83
  NSString *familyString = family ? [NSString stringWithUTF8String:family] : nil;
81
84
  NSString *appPathString = [NSString stringWithUTF8String:appPath];
85
+ NSString *videoPathString = videoPath ? [NSString stringWithUTF8String:videoPath] : nil;
82
86
 
83
- simulate(sdkString, familyString, appPathString, environment, additionalArgs);
87
+ Simulator *simulator = [[Simulator alloc] initWithAppPath:appPathString sdk:sdkString family:familyString video:videoPathString env:environment args:additionalArgs];
88
+ [simulator launch];
84
89
 
90
+ [[NSRunLoop mainRunLoop] run];
85
91
  return 0;
86
92
  }
87
93
 
88
- void simulate(NSString *sdk, NSString *family, NSString *appPath, NSDictionary *environment, NSArray *additionalArgs) {
89
- Simulator *simulator = [[Simulator alloc] initWithAppPath:appPath sdk:sdk family:family env:environment args:additionalArgs];
90
- [simulator launch];
91
-
92
- while (!gReset && [[NSRunLoop mainRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate dateWithTimeIntervalSinceNow:-1]]) ;
93
-
94
- [simulator end];
95
- }
96
-
97
94
  void printUsage() {
98
95
  fprintf(stderr, "usage: waxsim [options] app-path\n");
99
96
  fprintf(stderr, "example: waxsim -s 2.2 /path/to/app.app\n");
@@ -101,7 +98,8 @@ void printUsage() {
101
98
  fprintf(stderr, "\t-s sdk\tVersion number of sdk to use (-s 3.1)\n");
102
99
  fprintf(stderr, "\t-f family\tDevice to use (-f ipad)\n");
103
100
  fprintf(stderr, "\t-e VAR=value\tEnvironment variable to set (-e CFFIXED_HOME=/tmp/iphonehome)\n");
104
- fprintf(stderr, "\t-a \tAvailable SDK's\n");
101
+ fprintf(stderr, "\t-a \tAvailable SDKs\n");
102
+ fprintf(stderr, "\t-v path\tOutput video recording at path\n");
105
103
  fprintf(stderr, "\t-h \tPrints out this wonderful documentation!\n");
106
104
  }
107
105
 
@@ -12,6 +12,7 @@
12
12
  048275C011263A74003DFACB /* iPhoneSimulatorRemoteClient.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 048275BF11263A74003DFACB /* iPhoneSimulatorRemoteClient.framework */; };
13
13
  8DD76F9A0486AA7600D96B5E /* WaxSim.m in Sources */ = {isa = PBXBuildFile; fileRef = 08FB7796FE84155DC02AAC07 /* WaxSim.m */; settings = {ATTRIBUTES = (); }; };
14
14
  8DD76F9C0486AA7600D96B5E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08FB779EFE84155DC02AAC07 /* Foundation.framework */; };
15
+ A8BC32E4139825EB00BDDB2A /* QTKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A8BC32E3139825EA00BDDB2A /* QTKit.framework */; };
15
16
  /* End PBXBuildFile section */
16
17
 
17
18
  /* Begin PBXCopyFilesBuildPhase section */
@@ -36,6 +37,7 @@
36
37
  08FB779EFE84155DC02AAC07 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
37
38
  32A70AAB03705E1F00C91783 /* WaxSim_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WaxSim_Prefix.pch; sourceTree = "<group>"; };
38
39
  8DD76FA10486AA7600D96B5E /* waxsim */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = waxsim; sourceTree = BUILT_PRODUCTS_DIR; };
40
+ A8BC32E3139825EA00BDDB2A /* QTKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QTKit.framework; path = System/Library/Frameworks/QTKit.framework; sourceTree = SDKROOT; };
39
41
  /* End PBXFileReference section */
40
42
 
41
43
  /* Begin PBXFrameworksBuildPhase section */
@@ -43,6 +45,7 @@
43
45
  isa = PBXFrameworksBuildPhase;
44
46
  buildActionMask = 2147483647;
45
47
  files = (
48
+ A8BC32E4139825EB00BDDB2A /* QTKit.framework in Frameworks */,
46
49
  8DD76F9C0486AA7600D96B5E /* Foundation.framework in Frameworks */,
47
50
  048274F11126398C003DFACB /* AppKit.framework in Frameworks */,
48
51
  048275C011263A74003DFACB /* iPhoneSimulatorRemoteClient.framework in Frameworks */,
@@ -55,6 +58,7 @@
55
58
  08FB7794FE84155DC02AAC07 /* WaxSim */ = {
56
59
  isa = PBXGroup;
57
60
  children = (
61
+ A8BC32E3139825EA00BDDB2A /* QTKit.framework */,
58
62
  08FB7795FE84155DC02AAC07 /* Source */,
59
63
  08FB779DFE84155DC02AAC07 /* External Frameworks and Libraries */,
60
64
  1AB674ADFE9D54B511CA2CBB /* Products */,
@@ -120,7 +124,11 @@
120
124
  isa = PBXProject;
121
125
  buildConfigurationList = 1DEB927808733DD40010E9CD /* Build configuration list for PBXProject "WaxSim" */;
122
126
  compatibilityVersion = "Xcode 3.1";
127
+ developmentRegion = English;
123
128
  hasScannedForEncodings = 1;
129
+ knownRegions = (
130
+ en,
131
+ );
124
132
  mainGroup = 08FB7794FE84155DC02AAC07 /* WaxSim */;
125
133
  projectDirPath = "";
126
134
  projectRoot = "";
@@ -3,7 +3,7 @@ class UISpecRunner
3
3
  attr_reader :opts, :orig_args
4
4
 
5
5
  def self.from_file(options_file)
6
- args = File.readlines(options_file).map {|l| l.chomp.split " "}.flatten
6
+ args = File.readlines(options_file).map { |l| l.chomp.split(" ", 2)}.flatten
7
7
  UISpecRunner::Options.new(args)
8
8
  end
9
9
 
data/uispecrunner.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{uispecrunner}
8
- s.version = "0.4.5"
8
+ s.version = "0.4.6"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Blake Watters"]
12
- s.date = %q{2011-04-20}
12
+ s.date = %q{2011-08-22}
13
13
  s.default_executable = %q{uispec}
14
14
  s.description = %q{Provides a simple Ruby interface for running UISpec iPhone tests}
15
15
  s.email = %q{blake@twotoasters.com}
@@ -22,6 +22,8 @@ Gem::Specification.new do |s|
22
22
  s.files = [
23
23
  ".gitmodules",
24
24
  "CHANGELOG",
25
+ "Gemfile",
26
+ "Gemfile.lock",
25
27
  "LICENSE",
26
28
  "README.md",
27
29
  "Rakefile",
@@ -32,10 +34,6 @@ Gem::Specification.new do |s|
32
34
  "ext/WaxSim/Simulator.m",
33
35
  "ext/WaxSim/WaxSim.m",
34
36
  "ext/WaxSim/WaxSim.xcodeproj/project.pbxproj",
35
- "ext/WaxSim/WaxSim.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
36
- "ext/WaxSim/WaxSim.xcodeproj/project.xcworkspace/xcuserdata/blake.xcuserdatad/UserInterfaceState.xcuserstate",
37
- "ext/WaxSim/WaxSim.xcodeproj/xcuserdata/blake.xcuserdatad/xcschemes/WaxSim.xcscheme",
38
- "ext/WaxSim/WaxSim.xcodeproj/xcuserdata/blake.xcuserdatad/xcschemes/xcschememanagement.plist",
39
37
  "ext/WaxSim/WaxSim_Prefix.pch",
40
38
  "ext/WaxSim/iPhoneSimulatorRemoteClient/iPhoneSimulatorRemoteClient.h",
41
39
  "lib/uispecrunner.rb",
@@ -57,26 +55,29 @@ Gem::Specification.new do |s|
57
55
  ]
58
56
  s.homepage = %q{http://github.com/twotoasters/UISpecRunner}
59
57
  s.require_paths = ["lib"]
60
- s.rubygems_version = %q{1.3.7}
58
+ s.rubygems_version = %q{1.6.2}
61
59
  s.summary = %q{Flexible spec runner for UISpec on iOS}
62
- s.test_files = [
63
- "spec/options_spec.rb",
64
- "spec/spec_helper.rb",
65
- "spec/uispecrunner_spec.rb"
66
- ]
67
60
 
68
61
  if s.respond_to? :specification_version then
69
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
70
62
  s.specification_version = 3
71
63
 
72
64
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
65
+ s.add_runtime_dependency(%q<rake>, [">= 0"])
66
+ s.add_runtime_dependency(%q<jeweler>, [">= 0"])
67
+ s.add_runtime_dependency(%q<rspec>, [">= 0"])
73
68
  s.add_development_dependency(%q<rspec>, [">= 1.2.9"])
74
69
  s.add_runtime_dependency(%q<open4>, ["= 1.0.1"])
75
70
  else
71
+ s.add_dependency(%q<rake>, [">= 0"])
72
+ s.add_dependency(%q<jeweler>, [">= 0"])
73
+ s.add_dependency(%q<rspec>, [">= 0"])
76
74
  s.add_dependency(%q<rspec>, [">= 1.2.9"])
77
75
  s.add_dependency(%q<open4>, ["= 1.0.1"])
78
76
  end
79
77
  else
78
+ s.add_dependency(%q<rake>, [">= 0"])
79
+ s.add_dependency(%q<jeweler>, [">= 0"])
80
+ s.add_dependency(%q<rspec>, [">= 0"])
80
81
  s.add_dependency(%q<rspec>, [">= 1.2.9"])
81
82
  s.add_dependency(%q<open4>, ["= 1.0.1"])
82
83
  end
metadata CHANGED
@@ -1,67 +1,86 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: uispecrunner
3
- version: !ruby/object:Gem::Version
4
- hash: 5
5
- prerelease: false
6
- segments:
7
- - 0
8
- - 4
9
- - 5
10
- version: 0.4.5
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.4.6
5
+ prerelease:
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Blake Watters
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2011-04-20 00:00:00 -04:00
12
+ date: 2011-08-22 00:00:00.000000000 -04:00
19
13
  default_executable: uispec
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: rake
17
+ requirement: &2151514480 !ruby/object:Gem::Requirement
18
+ none: false
19
+ requirements:
20
+ - - ! '>='
21
+ - !ruby/object:Gem::Version
22
+ version: '0'
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: *2151514480
26
+ - !ruby/object:Gem::Dependency
27
+ name: jeweler
28
+ requirement: &2151513120 !ruby/object:Gem::Requirement
29
+ none: false
30
+ requirements:
31
+ - - ! '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: *2151513120
37
+ - !ruby/object:Gem::Dependency
22
38
  name: rspec
39
+ requirement: &2151511980 !ruby/object:Gem::Requirement
40
+ none: false
41
+ requirements:
42
+ - - ! '>='
43
+ - !ruby/object:Gem::Version
44
+ version: '0'
45
+ type: :runtime
23
46
  prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
47
+ version_requirements: *2151511980
48
+ - !ruby/object:Gem::Dependency
49
+ name: rspec
50
+ requirement: &2151511020 !ruby/object:Gem::Requirement
25
51
  none: false
26
- requirements:
27
- - - ">="
28
- - !ruby/object:Gem::Version
29
- hash: 13
30
- segments:
31
- - 1
32
- - 2
33
- - 9
52
+ requirements:
53
+ - - ! '>='
54
+ - !ruby/object:Gem::Version
34
55
  version: 1.2.9
35
56
  type: :development
36
- version_requirements: *id001
37
- - !ruby/object:Gem::Dependency
38
- name: open4
39
57
  prerelease: false
40
- requirement: &id002 !ruby/object:Gem::Requirement
58
+ version_requirements: *2151511020
59
+ - !ruby/object:Gem::Dependency
60
+ name: open4
61
+ requirement: &2151509840 !ruby/object:Gem::Requirement
41
62
  none: false
42
- requirements:
43
- - - "="
44
- - !ruby/object:Gem::Version
45
- hash: 21
46
- segments:
47
- - 1
48
- - 0
49
- - 1
63
+ requirements:
64
+ - - =
65
+ - !ruby/object:Gem::Version
50
66
  version: 1.0.1
51
67
  type: :runtime
52
- version_requirements: *id002
68
+ prerelease: false
69
+ version_requirements: *2151509840
53
70
  description: Provides a simple Ruby interface for running UISpec iPhone tests
54
71
  email: blake@twotoasters.com
55
- executables:
72
+ executables:
56
73
  - uispec
57
- extensions:
74
+ extensions:
58
75
  - ext/Rakefile
59
- extra_rdoc_files:
76
+ extra_rdoc_files:
60
77
  - LICENSE
61
78
  - README.md
62
- files:
79
+ files:
63
80
  - .gitmodules
64
81
  - CHANGELOG
82
+ - Gemfile
83
+ - Gemfile.lock
65
84
  - LICENSE
66
85
  - README.md
67
86
  - Rakefile
@@ -72,10 +91,6 @@ files:
72
91
  - ext/WaxSim/Simulator.m
73
92
  - ext/WaxSim/WaxSim.m
74
93
  - ext/WaxSim/WaxSim.xcodeproj/project.pbxproj
75
- - ext/WaxSim/WaxSim.xcodeproj/project.xcworkspace/contents.xcworkspacedata
76
- - ext/WaxSim/WaxSim.xcodeproj/project.xcworkspace/xcuserdata/blake.xcuserdatad/UserInterfaceState.xcuserstate
77
- - ext/WaxSim/WaxSim.xcodeproj/xcuserdata/blake.xcuserdatad/xcschemes/WaxSim.xcscheme
78
- - ext/WaxSim/WaxSim.xcodeproj/xcuserdata/blake.xcuserdatad/xcschemes/xcschememanagement.plist
79
94
  - ext/WaxSim/WaxSim_Prefix.pch
80
95
  - ext/WaxSim/iPhoneSimulatorRemoteClient/iPhoneSimulatorRemoteClient.h
81
96
  - lib/uispecrunner.rb
@@ -97,38 +112,26 @@ files:
97
112
  has_rdoc: true
98
113
  homepage: http://github.com/twotoasters/UISpecRunner
99
114
  licenses: []
100
-
101
115
  post_install_message:
102
116
  rdoc_options: []
103
-
104
- require_paths:
117
+ require_paths:
105
118
  - lib
106
- required_ruby_version: !ruby/object:Gem::Requirement
119
+ required_ruby_version: !ruby/object:Gem::Requirement
107
120
  none: false
108
- requirements:
109
- - - ">="
110
- - !ruby/object:Gem::Version
111
- hash: 3
112
- segments:
113
- - 0
114
- version: "0"
115
- required_rubygems_version: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ! '>='
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ required_rubygems_version: !ruby/object:Gem::Requirement
116
126
  none: false
117
- requirements:
118
- - - ">="
119
- - !ruby/object:Gem::Version
120
- hash: 3
121
- segments:
122
- - 0
123
- version: "0"
127
+ requirements:
128
+ - - ! '>='
129
+ - !ruby/object:Gem::Version
130
+ version: '0'
124
131
  requirements: []
125
-
126
132
  rubyforge_project:
127
- rubygems_version: 1.3.7
133
+ rubygems_version: 1.6.2
128
134
  signing_key:
129
135
  specification_version: 3
130
136
  summary: Flexible spec runner for UISpec on iOS
131
- test_files:
132
- - spec/options_spec.rb
133
- - spec/spec_helper.rb
134
- - spec/uispecrunner_spec.rb
137
+ test_files: []
@@ -1,7 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <Workspace
3
- version = "1.0">
4
- <FileRef
5
- location = "self:WaxSim.xcodeproj">
6
- </FileRef>
7
- </Workspace>