cukunity 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.document +5 -0
- data/.gitmodules +0 -0
- data/.rspec +1 -0
- data/Gemfile +15 -0
- data/Gemfile.lock +60 -0
- data/LICENSE.txt +20 -0
- data/README.md +214 -0
- data/Rakefile +51 -0
- data/Unity/Assets/Demo/Art/Buttons/down.png +0 -0
- data/Unity/Assets/Demo/Art/Buttons/down.png.meta +28 -0
- data/Unity/Assets/Demo/Art/Buttons/left.png +0 -0
- data/Unity/Assets/Demo/Art/Buttons/left.png.meta +28 -0
- data/Unity/Assets/Demo/Art/Buttons/ok.png +0 -0
- data/Unity/Assets/Demo/Art/Buttons/ok.png.meta +28 -0
- data/Unity/Assets/Demo/Art/Buttons/options.png +0 -0
- data/Unity/Assets/Demo/Art/Buttons/options.png.meta +28 -0
- data/Unity/Assets/Demo/Art/Buttons/play.png +0 -0
- data/Unity/Assets/Demo/Art/Buttons/play.png.meta +28 -0
- data/Unity/Assets/Demo/Art/Buttons/quit.png +0 -0
- data/Unity/Assets/Demo/Art/Buttons/quit.png.meta +28 -0
- data/Unity/Assets/Demo/Art/Buttons/retry.png +0 -0
- data/Unity/Assets/Demo/Art/Buttons/retry.png.meta +28 -0
- data/Unity/Assets/Demo/Art/Buttons/right.png +0 -0
- data/Unity/Assets/Demo/Art/Buttons/right.png.meta +28 -0
- data/Unity/Assets/Demo/Art/Buttons/up.png +0 -0
- data/Unity/Assets/Demo/Art/Buttons/up.png.meta +28 -0
- data/Unity/Assets/Demo/Art/Buttons.meta +2 -0
- data/Unity/Assets/Demo/Art/clear.png +0 -0
- data/Unity/Assets/Demo/Art/clear.png.meta +28 -0
- data/Unity/Assets/Demo/Art/options.png +0 -0
- data/Unity/Assets/Demo/Art/options.png.meta +28 -0
- data/Unity/Assets/Demo/Art/sokoban.png +0 -0
- data/Unity/Assets/Demo/Art/sokoban.png.meta +28 -0
- data/Unity/Assets/Demo/Art.meta +2 -0
- data/Unity/Assets/Demo/Cubes/CrateCube.mat +0 -0
- data/Unity/Assets/Demo/Cubes/CrateCube.mat.meta +2 -0
- data/Unity/Assets/Demo/Cubes/CrateCube.prefab +0 -0
- data/Unity/Assets/Demo/Cubes/CrateCube.prefab.meta +2 -0
- data/Unity/Assets/Demo/Cubes/FloorCube.mat +0 -0
- data/Unity/Assets/Demo/Cubes/FloorCube.mat.meta +2 -0
- data/Unity/Assets/Demo/Cubes/FloorCube.prefab +0 -0
- data/Unity/Assets/Demo/Cubes/FloorCube.prefab.meta +2 -0
- data/Unity/Assets/Demo/Cubes/GoalCube.mat +0 -0
- data/Unity/Assets/Demo/Cubes/GoalCube.mat.meta +2 -0
- data/Unity/Assets/Demo/Cubes/GoalCube.prefab +0 -0
- data/Unity/Assets/Demo/Cubes/GoalCube.prefab.meta +2 -0
- data/Unity/Assets/Demo/Cubes/PlayerCube.mat +0 -0
- data/Unity/Assets/Demo/Cubes/PlayerCube.mat.meta +2 -0
- data/Unity/Assets/Demo/Cubes/PlayerCube.prefab +0 -0
- data/Unity/Assets/Demo/Cubes/PlayerCube.prefab.meta +2 -0
- data/Unity/Assets/Demo/Cubes/WallCube.mat +0 -0
- data/Unity/Assets/Demo/Cubes/WallCube.mat.meta +2 -0
- data/Unity/Assets/Demo/Cubes/WallCube.prefab +0 -0
- data/Unity/Assets/Demo/Cubes/WallCube.prefab.meta +2 -0
- data/Unity/Assets/Demo/Cubes.meta +2 -0
- data/Unity/Assets/Demo/Resources/MainMenu.prefab +0 -0
- data/Unity/Assets/Demo/Resources/MainMenu.prefab.meta +2 -0
- data/Unity/Assets/Demo/Resources/OptionsMenu.prefab +0 -0
- data/Unity/Assets/Demo/Resources/OptionsMenu.prefab.meta +2 -0
- data/Unity/Assets/Demo/Resources.meta +2 -0
- data/Unity/Assets/Demo/Scripts/CameraController.js +18 -0
- data/Unity/Assets/Demo/Scripts/CameraController.js.meta +2 -0
- data/Unity/Assets/Demo/Scripts/EnterPlayerName.js +21 -0
- data/Unity/Assets/Demo/Scripts/EnterPlayerName.js.meta +2 -0
- data/Unity/Assets/Demo/Scripts/GameLeftButton.js +18 -0
- data/Unity/Assets/Demo/Scripts/GameLeftButton.js.meta +2 -0
- data/Unity/Assets/Demo/Scripts/GameQuitButton.js +6 -0
- data/Unity/Assets/Demo/Scripts/GameQuitButton.js.meta +2 -0
- data/Unity/Assets/Demo/Scripts/GameRetryButton.js +7 -0
- data/Unity/Assets/Demo/Scripts/GameRetryButton.js.meta +2 -0
- data/Unity/Assets/Demo/Scripts/GameRightButton.js +18 -0
- data/Unity/Assets/Demo/Scripts/GameRightButton.js.meta +2 -0
- data/Unity/Assets/Demo/Scripts/GameUpButton.js +18 -0
- data/Unity/Assets/Demo/Scripts/GameUpButton.js.meta +2 -0
- data/Unity/Assets/Demo/Scripts/OnTouchGUIElementDown.js +34 -0
- data/Unity/Assets/Demo/Scripts/OnTouchGUIElementDown.js.meta +2 -0
- data/Unity/Assets/Demo/Scripts/PlayerData.js +3 -0
- data/Unity/Assets/Demo/Scripts/PlayerData.js.meta +2 -0
- data/Unity/Assets/Demo/Scripts/SokobanController.js +240 -0
- data/Unity/Assets/Demo/Scripts/SokobanController.js.meta +2 -0
- data/Unity/Assets/Demo/Scripts/TakeScreenShot.js +26 -0
- data/Unity/Assets/Demo/Scripts/TakeScreenShot.js.meta +2 -0
- data/Unity/Assets/Demo/Scripts/TitleOptionsButton.js +8 -0
- data/Unity/Assets/Demo/Scripts/TitleOptionsButton.js.meta +2 -0
- data/Unity/Assets/Demo/Scripts/TitleOptionsOkButton.js +8 -0
- data/Unity/Assets/Demo/Scripts/TitleOptionsOkButton.js.meta +2 -0
- data/Unity/Assets/Demo/Scripts/TitlePlayButton.js +6 -0
- data/Unity/Assets/Demo/Scripts/TitlePlayButton.js.meta +2 -0
- data/Unity/Assets/Demo/Scripts/TitleQuitButton.js +7 -0
- data/Unity/Assets/Demo/Scripts/TitleQuitButton.js.meta +2 -0
- data/Unity/Assets/Demo/Scripts/UpdateMovesLabel.js +26 -0
- data/Unity/Assets/Demo/Scripts/UpdateMovesLabel.js.meta +2 -0
- data/Unity/Assets/Demo/Scripts/UpdatePlayerName.js +14 -0
- data/Unity/Assets/Demo/Scripts/UpdatePlayerName.js.meta +2 -0
- data/Unity/Assets/Demo/Scripts.meta +2 -0
- data/Unity/Assets/Demo/demo_game.unity +0 -0
- data/Unity/Assets/Demo/demo_game.unity.meta +2 -0
- data/Unity/Assets/Demo/demo_title.unity +0 -0
- data/Unity/Assets/Demo/demo_title.unity.meta +2 -0
- data/Unity/Assets/Demo.meta +2 -0
- data/Unity/Assets/Plugins/CukunityInstance.prefab +0 -0
- data/Unity/Assets/Plugins/CukunityInstance.prefab.meta +2 -0
- data/Unity/Assets/Plugins/CukunityServer.cs +871 -0
- data/Unity/Assets/Plugins/CukunityServer.cs.meta +2 -0
- data/Unity/Assets/Plugins/JsonFx.Json.dll +0 -0
- data/Unity/Assets/Plugins/JsonFx.Json.dll.meta +2 -0
- data/Unity/Assets/Plugins/iOS/CukunityServer.mm +242 -0
- data/Unity/Assets/Plugins/iOS/CukunityServer.mm.meta +2 -0
- data/Unity/Assets/Plugins/iOS.meta +2 -0
- data/Unity/Assets/Plugins.meta +2 -0
- data/Unity/Library/AudioManager.asset +0 -0
- data/Unity/Library/BuildSettings.asset +0 -0
- data/Unity/Library/DynamicsManager.asset +0 -0
- data/Unity/Library/EditorBuildSettings.asset +0 -0
- data/Unity/Library/EditorSettings.asset +0 -0
- data/Unity/Library/EditorUserBuildSettings.asset +0 -0
- data/Unity/Library/EditorUserSettings.asset +0 -0
- data/Unity/Library/InputManager.asset +0 -0
- data/Unity/Library/InspectorExpandedItems.asset +0 -0
- data/Unity/Library/MonoManager.asset +0 -0
- data/Unity/Library/NetworkManager.asset +0 -0
- data/Unity/Library/ProjectSettings.asset +0 -0
- data/Unity/Library/QualitySettings.asset +0 -0
- data/Unity/Library/TagManager.asset +0 -0
- data/Unity/Library/TimeManager.asset +0 -0
- data/Unity/ProjectSettings/AudioManager.asset +0 -0
- data/Unity/ProjectSettings/DynamicsManager.asset +0 -0
- data/Unity/ProjectSettings/EditorBuildSettings.asset +0 -0
- data/Unity/ProjectSettings/EditorSettings.asset +0 -0
- data/Unity/ProjectSettings/InputManager.asset +0 -0
- data/Unity/ProjectSettings/NavMeshLayers.asset +0 -0
- data/Unity/ProjectSettings/NetworkManager.asset +0 -0
- data/Unity/ProjectSettings/ProjectSettings.asset +0 -0
- data/Unity/ProjectSettings/QualitySettings.asset +0 -0
- data/Unity/ProjectSettings/TagManager.asset +0 -0
- data/Unity/ProjectSettings/TimeManager.asset +0 -0
- data/VERSION +1 -0
- data/bin/cukunity +7 -0
- data/cukunity.gemspec +298 -0
- data/features/get_scene_command.feature +39 -0
- data/features/i18n/ja/sokoban_clear.feature +109 -0
- data/features/install.feature +23 -0
- data/features/keyboard_input.feature +26 -0
- data/features/load_level_command.feature +36 -0
- data/features/run.feature +33 -0
- data/features/select_visible.feature +29 -0
- data/features/support/env.rb +11 -0
- data/features/touch_input.feature +96 -0
- data/lib/cukunity/cli/argument_parser.rb +103 -0
- data/lib/cukunity/cli/bootstrap_command.rb +39 -0
- data/lib/cukunity/cli/doctor_command.rb +150 -0
- data/lib/cukunity/cli/features_command.rb +35 -0
- data/lib/cukunity/cli/main.rb +18 -0
- data/lib/cukunity/cli/options.rb +8 -0
- data/lib/cukunity/cli.rb +11 -0
- data/lib/cukunity/cucumber/step_definitions/get_scene_command_steps.rb +37 -0
- data/lib/cukunity/cucumber/step_definitions/i18n/ja/get_scene_command_steps.rb +37 -0
- data/lib/cukunity/cucumber/step_definitions/i18n/ja/install_steps.rb +25 -0
- data/lib/cukunity/cucumber/step_definitions/i18n/ja/keyboard_input_steps.rb +17 -0
- data/lib/cukunity/cucumber/step_definitions/i18n/ja/load_level_command_steps.rb +17 -0
- data/lib/cukunity/cucumber/step_definitions/i18n/ja/run_steps.rb +25 -0
- data/lib/cukunity/cucumber/step_definitions/i18n/ja/select_visible_steps.rb +9 -0
- data/lib/cukunity/cucumber/step_definitions/i18n/ja/touch_input_steps.rb +19 -0
- data/lib/cukunity/cucumber/step_definitions/i18n/ja.rb +9 -0
- data/lib/cukunity/cucumber/step_definitions/install_steps.rb +33 -0
- data/lib/cukunity/cucumber/step_definitions/keyboard_input_steps.rb +13 -0
- data/lib/cukunity/cucumber/step_definitions/load_level_command_steps.rb +17 -0
- data/lib/cukunity/cucumber/step_definitions/run_steps.rb +32 -0
- data/lib/cukunity/cucumber/step_definitions/select_visible_steps.rb +15 -0
- data/lib/cukunity/cucumber/step_definitions/touch_input_steps.rb +18 -0
- data/lib/cukunity/cucumber/support/platform_helpers.rb +105 -0
- data/lib/cukunity/cucumber/support/spec_helpers.rb +21 -0
- data/lib/cukunity/cucumber/support/transforms.rb +5 -0
- data/lib/cukunity/cucumber/support/unity_helpers.rb +35 -0
- data/lib/cukunity/cucumber.rb +28 -0
- data/lib/cukunity/drivers/android/app.rb +43 -0
- data/lib/cukunity/drivers/android/appkiller/.gitignore +9 -0
- data/lib/cukunity/drivers/android/appkiller/AndroidManifest.xml +17 -0
- data/lib/cukunity/drivers/android/appkiller/ant.properties +17 -0
- data/lib/cukunity/drivers/android/appkiller/build.xml +85 -0
- data/lib/cukunity/drivers/android/appkiller/proguard.cfg +40 -0
- data/lib/cukunity/drivers/android/appkiller/project.properties +11 -0
- data/lib/cukunity/drivers/android/appkiller/res/layout/main.xml +13 -0
- data/lib/cukunity/drivers/android/appkiller/res/values/strings.xml +4 -0
- data/lib/cukunity/drivers/android/appkiller/src/cukunity/appkiller/AppKiller.java +29 -0
- data/lib/cukunity/drivers/android/keyboard_input.rb +149 -0
- data/lib/cukunity/drivers/android/keycodes.rb +531 -0
- data/lib/cukunity/drivers/android/monkey_client.rb +65 -0
- data/lib/cukunity/drivers/android/process.rb +103 -0
- data/lib/cukunity/drivers/android/touch_input.rb +24 -0
- data/lib/cukunity/drivers/android/tunnel_client_methods.rb +22 -0
- data/lib/cukunity/drivers/android/unity_client.rb +27 -0
- data/lib/cukunity/drivers/android/utils.rb +50 -0
- data/lib/cukunity/drivers/android.rb +9 -0
- data/lib/cukunity/drivers/iOS/app.rb +32 -0
- data/lib/cukunity/drivers/iOS/keyboard_input.rb +104 -0
- data/lib/cukunity/drivers/iOS/process.rb +42 -0
- data/lib/cukunity/drivers/iOS/touch_input.rb +18 -0
- data/lib/cukunity/drivers/iOS/tunnel_client_methods.rb +27 -0
- data/lib/cukunity/drivers/iOS/uiautomation.rb +97 -0
- data/lib/cukunity/drivers/iOS/uiautomation_master.rb +152 -0
- data/lib/cukunity/drivers/iOS/uiautomation_slave.js +238 -0
- data/lib/cukunity/drivers/iOS/uiautomation_slave.rb +41 -0
- data/lib/cukunity/drivers/iOS/unity_client.rb +27 -0
- data/lib/cukunity/drivers/iOS/utils.rb +46 -0
- data/lib/cukunity/drivers/iOS.rb +9 -0
- data/lib/cukunity/exceptions.rb +24 -0
- data/lib/cukunity/keyboard_input_methods.rb +35 -0
- data/lib/cukunity/request_line_response_client_methods.rb +80 -0
- data/lib/cukunity/tasks/cucumber.rake +22 -0
- data/lib/cukunity/touch_input_methods.rb +19 -0
- data/lib/cukunity/unity/client_methods.rb +46 -0
- data/lib/cukunity/unity/command_facade.rb +67 -0
- data/lib/cukunity/unity/component.rb +39 -0
- data/lib/cukunity/unity/gameobject.rb +53 -0
- data/lib/cukunity/unity/hint.rb +27 -0
- data/lib/cukunity/unity/json_container.rb +48 -0
- data/lib/cukunity/unity/level.rb +6 -0
- data/lib/cukunity/unity/scene.rb +18 -0
- data/lib/cukunity/unity/screen.rb +45 -0
- data/lib/cukunity/unity/screen_hint_methods.rb +61 -0
- data/lib/cukunity/unity/text_hint_methods.rb +17 -0
- data/lib/cukunity/unity.rb +11 -0
- data/lib/cukunity/utils.rb +56 -0
- data/lib/cukunity.rb +19 -0
- metadata +411 -0
Binary file
|
@@ -0,0 +1,242 @@
|
|
1
|
+
/*
|
2
|
+
* CukunityServer.mm
|
3
|
+
* CukunityServer
|
4
|
+
*
|
5
|
+
* Created by Mario Freitas (imkira@gmail.com) on 2012/03/02.
|
6
|
+
* Copyright 2012 Mario Freitas (imkira@gmail.com). All rights reserved.
|
7
|
+
*
|
8
|
+
* Touch synthesization code adapted from:
|
9
|
+
* http://cocoawithlove.com/2008/10/synthesizing-touch-event-on-iphone.html
|
10
|
+
*
|
11
|
+
*/
|
12
|
+
|
13
|
+
#import <Foundation/Foundation.h>
|
14
|
+
#import <UIKit/UIKit.h>
|
15
|
+
|
16
|
+
//
|
17
|
+
// TouchSynthesis.m
|
18
|
+
// SelfTesting
|
19
|
+
//
|
20
|
+
// Created by Matt Gallagher on 23/11/08.
|
21
|
+
// Copyright 2008 Matt Gallagher. All rights reserved.
|
22
|
+
//
|
23
|
+
// Permission is given to use this source code file, free of charge, in any
|
24
|
+
// project, commercial or otherwise, entirely at your risk, with the condition
|
25
|
+
// that any redistribution (in part or whole) of source code must retain
|
26
|
+
// this copyright and permission notice. Attribution in compiled projects is
|
27
|
+
// appreciated but not required.
|
28
|
+
//
|
29
|
+
|
30
|
+
//
|
31
|
+
// UITouch (Synthesize)
|
32
|
+
//
|
33
|
+
// Category to allow creation and modification of UITouch objects.
|
34
|
+
//
|
35
|
+
@interface UITouch (Synthesize)
|
36
|
+
|
37
|
+
- (id)initInView:(UIView *)view;
|
38
|
+
- (void)setPhase:(UITouchPhase)phase;
|
39
|
+
- (void)setLocationInWindow:(CGPoint)location;
|
40
|
+
|
41
|
+
@end
|
42
|
+
|
43
|
+
//
|
44
|
+
// UIEvent (Synthesize)
|
45
|
+
//
|
46
|
+
// A category to allow creation of a touch event.
|
47
|
+
//
|
48
|
+
@interface UIEvent (Synthesize)
|
49
|
+
|
50
|
+
- (id)initWithTouch:(UITouch *)touch;
|
51
|
+
|
52
|
+
@end
|
53
|
+
|
54
|
+
@implementation UITouch (Synthesize)
|
55
|
+
|
56
|
+
|
57
|
+
//
|
58
|
+
// initInView:phase:
|
59
|
+
//
|
60
|
+
// Creats a UITouch, centered on the specified view, in the view's window.
|
61
|
+
// Sets the phase as specified.
|
62
|
+
//
|
63
|
+
- (id)initInView:(UIView *)view at:(CGPoint)point tapCount:(NSUInteger)tapCount
|
64
|
+
{
|
65
|
+
self = [super init];
|
66
|
+
if (self != nil)
|
67
|
+
{
|
68
|
+
_tapCount = tapCount;
|
69
|
+
_locationInWindow = [view.window convertPoint:point fromView:view];
|
70
|
+
_previousLocationInWindow = _locationInWindow;
|
71
|
+
|
72
|
+
UIView *target = [view.window hitTest:_locationInWindow withEvent:nil];
|
73
|
+
_window = [view.window retain];
|
74
|
+
_view = [target retain];
|
75
|
+
_phase = UITouchPhaseBegan;
|
76
|
+
_touchFlags._firstTouchForView = 1;
|
77
|
+
_touchFlags._isTap = 1;
|
78
|
+
_timestamp = [NSDate timeIntervalSinceReferenceDate];
|
79
|
+
_gestureView = [view retain];
|
80
|
+
}
|
81
|
+
return self;
|
82
|
+
}
|
83
|
+
|
84
|
+
- (id)initInView:(UIView *)view
|
85
|
+
{
|
86
|
+
CGRect frameInWindow;
|
87
|
+
if ([view isKindOfClass:[UIWindow class]])
|
88
|
+
{
|
89
|
+
frameInWindow = view.frame;
|
90
|
+
}
|
91
|
+
else
|
92
|
+
{
|
93
|
+
frameInWindow =
|
94
|
+
[view.window convertRect:view.frame fromView:view.superview];
|
95
|
+
}
|
96
|
+
CGPoint point = CGPointMake(frameInWindow.origin.x + 0.5 * frameInWindow.size.width,
|
97
|
+
frameInWindow.origin.y + 0.5 * frameInWindow.size.height);
|
98
|
+
return [self initInView:view at:point tapCount:1];
|
99
|
+
}
|
100
|
+
|
101
|
+
//
|
102
|
+
// setPhase:
|
103
|
+
//
|
104
|
+
// Setter to allow access to the _phase member.
|
105
|
+
//
|
106
|
+
- (void)setPhase:(UITouchPhase)phase
|
107
|
+
{
|
108
|
+
_phase = phase;
|
109
|
+
_timestamp = [NSDate timeIntervalSinceReferenceDate];
|
110
|
+
}
|
111
|
+
|
112
|
+
//
|
113
|
+
// setPhase:
|
114
|
+
//
|
115
|
+
// Setter to allow access to the _locationInWindow member.
|
116
|
+
//
|
117
|
+
- (void)setLocationInWindow:(CGPoint)location
|
118
|
+
{
|
119
|
+
_previousLocationInWindow = _locationInWindow;
|
120
|
+
_locationInWindow = location;
|
121
|
+
_timestamp = [NSDate timeIntervalSinceReferenceDate];
|
122
|
+
}
|
123
|
+
|
124
|
+
@end
|
125
|
+
|
126
|
+
//
|
127
|
+
// GSEvent is an undeclared object. We don't need to use it ourselves but some
|
128
|
+
// Apple APIs (UIScrollView in particular) require the x and y fields to be present.
|
129
|
+
//
|
130
|
+
@interface GSEventProxy : NSObject
|
131
|
+
{
|
132
|
+
@public
|
133
|
+
unsigned int flags;
|
134
|
+
unsigned int type;
|
135
|
+
unsigned int ignored1;
|
136
|
+
float x1;
|
137
|
+
float y1;
|
138
|
+
float x2;
|
139
|
+
float y2;
|
140
|
+
unsigned int ignored2[10];
|
141
|
+
unsigned int ignored3[7];
|
142
|
+
float sizeX;
|
143
|
+
float sizeY;
|
144
|
+
float x3;
|
145
|
+
float y3;
|
146
|
+
unsigned int ignored4[3];
|
147
|
+
}
|
148
|
+
@end
|
149
|
+
@implementation GSEventProxy
|
150
|
+
@end
|
151
|
+
|
152
|
+
//
|
153
|
+
// PublicEvent
|
154
|
+
//
|
155
|
+
// A dummy class used to gain access to UIEvent's private member variables.
|
156
|
+
// If UIEvent changes at all, this will break.
|
157
|
+
//
|
158
|
+
@interface PublicEvent : NSObject
|
159
|
+
{
|
160
|
+
@public
|
161
|
+
GSEventProxy *_event;
|
162
|
+
NSTimeInterval _timestamp;
|
163
|
+
NSMutableSet *_touches;
|
164
|
+
CFMutableDictionaryRef _keyedTouches;
|
165
|
+
}
|
166
|
+
@end
|
167
|
+
|
168
|
+
@implementation PublicEvent
|
169
|
+
@end
|
170
|
+
|
171
|
+
@interface UIEvent (Creation)
|
172
|
+
|
173
|
+
- (id)_initWithEvent:(GSEventProxy *)fp8 touches:(id)fp12;
|
174
|
+
|
175
|
+
@end
|
176
|
+
|
177
|
+
//
|
178
|
+
// UIEvent (Synthesize)
|
179
|
+
//
|
180
|
+
// A category to allow creation of a touch event.
|
181
|
+
//
|
182
|
+
@implementation UIEvent (Synthesize)
|
183
|
+
|
184
|
+
- (id)initWithTouch:(UITouch *)touch
|
185
|
+
{
|
186
|
+
CGPoint location = [touch locationInView:touch.window];
|
187
|
+
GSEventProxy *gsEventProxy = [[GSEventProxy alloc] init];
|
188
|
+
gsEventProxy->x1 = location.x;
|
189
|
+
gsEventProxy->y1 = location.y;
|
190
|
+
gsEventProxy->x2 = location.x;
|
191
|
+
gsEventProxy->y2 = location.y;
|
192
|
+
gsEventProxy->x3 = location.x;
|
193
|
+
gsEventProxy->y3 = location.y;
|
194
|
+
gsEventProxy->sizeX = 1.0;
|
195
|
+
gsEventProxy->sizeY = 1.0;
|
196
|
+
gsEventProxy->flags = ([touch phase] == UITouchPhaseEnded) ? 0x1010180 : 0x3010180;
|
197
|
+
gsEventProxy->type = 3001;
|
198
|
+
|
199
|
+
//
|
200
|
+
// On SDK versions 3.0 and greater, we need to reallocate as a
|
201
|
+
// UITouchesEvent.
|
202
|
+
//
|
203
|
+
Class touchesEventClass = NSClassFromString(@"UITouchesEvent");
|
204
|
+
if (touchesEventClass && ![[self class] isEqual:touchesEventClass])
|
205
|
+
{
|
206
|
+
[self release];
|
207
|
+
self = [touchesEventClass alloc];
|
208
|
+
}
|
209
|
+
|
210
|
+
self = [self _initWithEvent:gsEventProxy touches:[NSSet setWithObject:touch]];
|
211
|
+
if (self != nil)
|
212
|
+
{
|
213
|
+
}
|
214
|
+
return self;
|
215
|
+
}
|
216
|
+
|
217
|
+
@end
|
218
|
+
|
219
|
+
extern UIViewController *UnityGetGLViewController();
|
220
|
+
|
221
|
+
extern "C"
|
222
|
+
{
|
223
|
+
extern UIViewController *sGLViewController;
|
224
|
+
|
225
|
+
void CukunityScreenInstantTap(int x, int y, int tapCount)
|
226
|
+
{
|
227
|
+
UIView *view = UnityGetGLViewController().view;
|
228
|
+
UITouch *touch = [[UITouch alloc] initInView:view at:CGPointMake(x, y) tapCount:tapCount];
|
229
|
+
UIEvent *eventDown = [[UIEvent alloc] initWithTouch:touch];
|
230
|
+
|
231
|
+
[touch.view touchesBegan:[eventDown allTouches] withEvent:eventDown];
|
232
|
+
|
233
|
+
[touch setPhase:UITouchPhaseEnded];
|
234
|
+
UIEvent *eventUp = [[UIEvent alloc] initWithTouch:touch];
|
235
|
+
|
236
|
+
[touch.view touchesEnded:[eventUp allTouches] withEvent:eventUp];
|
237
|
+
|
238
|
+
[eventDown release];
|
239
|
+
[eventUp release];
|
240
|
+
[touch release];
|
241
|
+
}
|
242
|
+
}
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/VERSION
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
0.1.0
|
data/bin/cukunity
ADDED
data/cukunity.gemspec
ADDED
@@ -0,0 +1,298 @@
|
|
1
|
+
# Generated by jeweler
|
2
|
+
# DO NOT EDIT THIS FILE DIRECTLY
|
3
|
+
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
|
+
# -*- encoding: utf-8 -*-
|
5
|
+
|
6
|
+
Gem::Specification.new do |s|
|
7
|
+
s.name = "cukunity"
|
8
|
+
s.version = "0.1.0"
|
9
|
+
|
10
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
|
+
s.authors = ["Mario Freitas"]
|
12
|
+
s.date = "2012-04-02"
|
13
|
+
s.description = "cukunity is a tool inspired by the principles of Behaviour Driven Development. Cukunity is a portmanteau of \"Cucumber\" and \"Unity\", and as so it provides helpers to play nicely with cucumber, although it can be used standalone for automation. "
|
14
|
+
s.email = "imkira@gmail.com"
|
15
|
+
s.executables = ["cukunity"]
|
16
|
+
s.extra_rdoc_files = [
|
17
|
+
"LICENSE.txt",
|
18
|
+
"README.md"
|
19
|
+
]
|
20
|
+
s.files = [
|
21
|
+
".document",
|
22
|
+
".gitmodules",
|
23
|
+
".rspec",
|
24
|
+
"Gemfile",
|
25
|
+
"Gemfile.lock",
|
26
|
+
"LICENSE.txt",
|
27
|
+
"README.md",
|
28
|
+
"Rakefile",
|
29
|
+
"Unity/Assets/Demo.meta",
|
30
|
+
"Unity/Assets/Demo/Art.meta",
|
31
|
+
"Unity/Assets/Demo/Art/Buttons.meta",
|
32
|
+
"Unity/Assets/Demo/Art/Buttons/down.png",
|
33
|
+
"Unity/Assets/Demo/Art/Buttons/down.png.meta",
|
34
|
+
"Unity/Assets/Demo/Art/Buttons/left.png",
|
35
|
+
"Unity/Assets/Demo/Art/Buttons/left.png.meta",
|
36
|
+
"Unity/Assets/Demo/Art/Buttons/ok.png",
|
37
|
+
"Unity/Assets/Demo/Art/Buttons/ok.png.meta",
|
38
|
+
"Unity/Assets/Demo/Art/Buttons/options.png",
|
39
|
+
"Unity/Assets/Demo/Art/Buttons/options.png.meta",
|
40
|
+
"Unity/Assets/Demo/Art/Buttons/play.png",
|
41
|
+
"Unity/Assets/Demo/Art/Buttons/play.png.meta",
|
42
|
+
"Unity/Assets/Demo/Art/Buttons/quit.png",
|
43
|
+
"Unity/Assets/Demo/Art/Buttons/quit.png.meta",
|
44
|
+
"Unity/Assets/Demo/Art/Buttons/retry.png",
|
45
|
+
"Unity/Assets/Demo/Art/Buttons/retry.png.meta",
|
46
|
+
"Unity/Assets/Demo/Art/Buttons/right.png",
|
47
|
+
"Unity/Assets/Demo/Art/Buttons/right.png.meta",
|
48
|
+
"Unity/Assets/Demo/Art/Buttons/up.png",
|
49
|
+
"Unity/Assets/Demo/Art/Buttons/up.png.meta",
|
50
|
+
"Unity/Assets/Demo/Art/clear.png",
|
51
|
+
"Unity/Assets/Demo/Art/clear.png.meta",
|
52
|
+
"Unity/Assets/Demo/Art/options.png",
|
53
|
+
"Unity/Assets/Demo/Art/options.png.meta",
|
54
|
+
"Unity/Assets/Demo/Art/sokoban.png",
|
55
|
+
"Unity/Assets/Demo/Art/sokoban.png.meta",
|
56
|
+
"Unity/Assets/Demo/Cubes.meta",
|
57
|
+
"Unity/Assets/Demo/Cubes/CrateCube.mat",
|
58
|
+
"Unity/Assets/Demo/Cubes/CrateCube.mat.meta",
|
59
|
+
"Unity/Assets/Demo/Cubes/CrateCube.prefab",
|
60
|
+
"Unity/Assets/Demo/Cubes/CrateCube.prefab.meta",
|
61
|
+
"Unity/Assets/Demo/Cubes/FloorCube.mat",
|
62
|
+
"Unity/Assets/Demo/Cubes/FloorCube.mat.meta",
|
63
|
+
"Unity/Assets/Demo/Cubes/FloorCube.prefab",
|
64
|
+
"Unity/Assets/Demo/Cubes/FloorCube.prefab.meta",
|
65
|
+
"Unity/Assets/Demo/Cubes/GoalCube.mat",
|
66
|
+
"Unity/Assets/Demo/Cubes/GoalCube.mat.meta",
|
67
|
+
"Unity/Assets/Demo/Cubes/GoalCube.prefab",
|
68
|
+
"Unity/Assets/Demo/Cubes/GoalCube.prefab.meta",
|
69
|
+
"Unity/Assets/Demo/Cubes/PlayerCube.mat",
|
70
|
+
"Unity/Assets/Demo/Cubes/PlayerCube.mat.meta",
|
71
|
+
"Unity/Assets/Demo/Cubes/PlayerCube.prefab",
|
72
|
+
"Unity/Assets/Demo/Cubes/PlayerCube.prefab.meta",
|
73
|
+
"Unity/Assets/Demo/Cubes/WallCube.mat",
|
74
|
+
"Unity/Assets/Demo/Cubes/WallCube.mat.meta",
|
75
|
+
"Unity/Assets/Demo/Cubes/WallCube.prefab",
|
76
|
+
"Unity/Assets/Demo/Cubes/WallCube.prefab.meta",
|
77
|
+
"Unity/Assets/Demo/Resources.meta",
|
78
|
+
"Unity/Assets/Demo/Resources/MainMenu.prefab",
|
79
|
+
"Unity/Assets/Demo/Resources/MainMenu.prefab.meta",
|
80
|
+
"Unity/Assets/Demo/Resources/OptionsMenu.prefab",
|
81
|
+
"Unity/Assets/Demo/Resources/OptionsMenu.prefab.meta",
|
82
|
+
"Unity/Assets/Demo/Scripts.meta",
|
83
|
+
"Unity/Assets/Demo/Scripts/CameraController.js",
|
84
|
+
"Unity/Assets/Demo/Scripts/CameraController.js.meta",
|
85
|
+
"Unity/Assets/Demo/Scripts/EnterPlayerName.js",
|
86
|
+
"Unity/Assets/Demo/Scripts/EnterPlayerName.js.meta",
|
87
|
+
"Unity/Assets/Demo/Scripts/GameLeftButton.js",
|
88
|
+
"Unity/Assets/Demo/Scripts/GameLeftButton.js.meta",
|
89
|
+
"Unity/Assets/Demo/Scripts/GameQuitButton.js",
|
90
|
+
"Unity/Assets/Demo/Scripts/GameQuitButton.js.meta",
|
91
|
+
"Unity/Assets/Demo/Scripts/GameRetryButton.js",
|
92
|
+
"Unity/Assets/Demo/Scripts/GameRetryButton.js.meta",
|
93
|
+
"Unity/Assets/Demo/Scripts/GameRightButton.js",
|
94
|
+
"Unity/Assets/Demo/Scripts/GameRightButton.js.meta",
|
95
|
+
"Unity/Assets/Demo/Scripts/GameUpButton.js",
|
96
|
+
"Unity/Assets/Demo/Scripts/GameUpButton.js.meta",
|
97
|
+
"Unity/Assets/Demo/Scripts/OnTouchGUIElementDown.js",
|
98
|
+
"Unity/Assets/Demo/Scripts/OnTouchGUIElementDown.js.meta",
|
99
|
+
"Unity/Assets/Demo/Scripts/PlayerData.js",
|
100
|
+
"Unity/Assets/Demo/Scripts/PlayerData.js.meta",
|
101
|
+
"Unity/Assets/Demo/Scripts/SokobanController.js",
|
102
|
+
"Unity/Assets/Demo/Scripts/SokobanController.js.meta",
|
103
|
+
"Unity/Assets/Demo/Scripts/TakeScreenShot.js",
|
104
|
+
"Unity/Assets/Demo/Scripts/TakeScreenShot.js.meta",
|
105
|
+
"Unity/Assets/Demo/Scripts/TitleOptionsButton.js",
|
106
|
+
"Unity/Assets/Demo/Scripts/TitleOptionsButton.js.meta",
|
107
|
+
"Unity/Assets/Demo/Scripts/TitleOptionsOkButton.js",
|
108
|
+
"Unity/Assets/Demo/Scripts/TitleOptionsOkButton.js.meta",
|
109
|
+
"Unity/Assets/Demo/Scripts/TitlePlayButton.js",
|
110
|
+
"Unity/Assets/Demo/Scripts/TitlePlayButton.js.meta",
|
111
|
+
"Unity/Assets/Demo/Scripts/TitleQuitButton.js",
|
112
|
+
"Unity/Assets/Demo/Scripts/TitleQuitButton.js.meta",
|
113
|
+
"Unity/Assets/Demo/Scripts/UpdateMovesLabel.js",
|
114
|
+
"Unity/Assets/Demo/Scripts/UpdateMovesLabel.js.meta",
|
115
|
+
"Unity/Assets/Demo/Scripts/UpdatePlayerName.js",
|
116
|
+
"Unity/Assets/Demo/Scripts/UpdatePlayerName.js.meta",
|
117
|
+
"Unity/Assets/Demo/demo_game.unity",
|
118
|
+
"Unity/Assets/Demo/demo_game.unity.meta",
|
119
|
+
"Unity/Assets/Demo/demo_title.unity",
|
120
|
+
"Unity/Assets/Demo/demo_title.unity.meta",
|
121
|
+
"Unity/Assets/Plugins.meta",
|
122
|
+
"Unity/Assets/Plugins/CukunityInstance.prefab",
|
123
|
+
"Unity/Assets/Plugins/CukunityInstance.prefab.meta",
|
124
|
+
"Unity/Assets/Plugins/CukunityServer.cs",
|
125
|
+
"Unity/Assets/Plugins/CukunityServer.cs.meta",
|
126
|
+
"Unity/Assets/Plugins/JsonFx.Json.dll",
|
127
|
+
"Unity/Assets/Plugins/JsonFx.Json.dll.meta",
|
128
|
+
"Unity/Assets/Plugins/iOS.meta",
|
129
|
+
"Unity/Assets/Plugins/iOS/CukunityServer.mm",
|
130
|
+
"Unity/Assets/Plugins/iOS/CukunityServer.mm.meta",
|
131
|
+
"Unity/Library/AudioManager.asset",
|
132
|
+
"Unity/Library/BuildSettings.asset",
|
133
|
+
"Unity/Library/DynamicsManager.asset",
|
134
|
+
"Unity/Library/EditorBuildSettings.asset",
|
135
|
+
"Unity/Library/EditorSettings.asset",
|
136
|
+
"Unity/Library/EditorUserBuildSettings.asset",
|
137
|
+
"Unity/Library/EditorUserSettings.asset",
|
138
|
+
"Unity/Library/InputManager.asset",
|
139
|
+
"Unity/Library/InspectorExpandedItems.asset",
|
140
|
+
"Unity/Library/MonoManager.asset",
|
141
|
+
"Unity/Library/NetworkManager.asset",
|
142
|
+
"Unity/Library/ProjectSettings.asset",
|
143
|
+
"Unity/Library/QualitySettings.asset",
|
144
|
+
"Unity/Library/TagManager.asset",
|
145
|
+
"Unity/Library/TimeManager.asset",
|
146
|
+
"Unity/ProjectSettings/AudioManager.asset",
|
147
|
+
"Unity/ProjectSettings/DynamicsManager.asset",
|
148
|
+
"Unity/ProjectSettings/EditorBuildSettings.asset",
|
149
|
+
"Unity/ProjectSettings/EditorSettings.asset",
|
150
|
+
"Unity/ProjectSettings/InputManager.asset",
|
151
|
+
"Unity/ProjectSettings/NavMeshLayers.asset",
|
152
|
+
"Unity/ProjectSettings/NetworkManager.asset",
|
153
|
+
"Unity/ProjectSettings/ProjectSettings.asset",
|
154
|
+
"Unity/ProjectSettings/QualitySettings.asset",
|
155
|
+
"Unity/ProjectSettings/TagManager.asset",
|
156
|
+
"Unity/ProjectSettings/TimeManager.asset",
|
157
|
+
"VERSION",
|
158
|
+
"bin/cukunity",
|
159
|
+
"cukunity.gemspec",
|
160
|
+
"features/get_scene_command.feature",
|
161
|
+
"features/i18n/ja/sokoban_clear.feature",
|
162
|
+
"features/install.feature",
|
163
|
+
"features/keyboard_input.feature",
|
164
|
+
"features/load_level_command.feature",
|
165
|
+
"features/run.feature",
|
166
|
+
"features/select_visible.feature",
|
167
|
+
"features/support/env.rb",
|
168
|
+
"features/touch_input.feature",
|
169
|
+
"lib/cukunity.rb",
|
170
|
+
"lib/cukunity/cli.rb",
|
171
|
+
"lib/cukunity/cli/argument_parser.rb",
|
172
|
+
"lib/cukunity/cli/bootstrap_command.rb",
|
173
|
+
"lib/cukunity/cli/doctor_command.rb",
|
174
|
+
"lib/cukunity/cli/features_command.rb",
|
175
|
+
"lib/cukunity/cli/main.rb",
|
176
|
+
"lib/cukunity/cli/options.rb",
|
177
|
+
"lib/cukunity/cucumber.rb",
|
178
|
+
"lib/cukunity/cucumber/step_definitions/get_scene_command_steps.rb",
|
179
|
+
"lib/cukunity/cucumber/step_definitions/i18n/ja.rb",
|
180
|
+
"lib/cukunity/cucumber/step_definitions/i18n/ja/get_scene_command_steps.rb",
|
181
|
+
"lib/cukunity/cucumber/step_definitions/i18n/ja/install_steps.rb",
|
182
|
+
"lib/cukunity/cucumber/step_definitions/i18n/ja/keyboard_input_steps.rb",
|
183
|
+
"lib/cukunity/cucumber/step_definitions/i18n/ja/load_level_command_steps.rb",
|
184
|
+
"lib/cukunity/cucumber/step_definitions/i18n/ja/run_steps.rb",
|
185
|
+
"lib/cukunity/cucumber/step_definitions/i18n/ja/select_visible_steps.rb",
|
186
|
+
"lib/cukunity/cucumber/step_definitions/i18n/ja/touch_input_steps.rb",
|
187
|
+
"lib/cukunity/cucumber/step_definitions/install_steps.rb",
|
188
|
+
"lib/cukunity/cucumber/step_definitions/keyboard_input_steps.rb",
|
189
|
+
"lib/cukunity/cucumber/step_definitions/load_level_command_steps.rb",
|
190
|
+
"lib/cukunity/cucumber/step_definitions/run_steps.rb",
|
191
|
+
"lib/cukunity/cucumber/step_definitions/select_visible_steps.rb",
|
192
|
+
"lib/cukunity/cucumber/step_definitions/touch_input_steps.rb",
|
193
|
+
"lib/cukunity/cucumber/support/platform_helpers.rb",
|
194
|
+
"lib/cukunity/cucumber/support/spec_helpers.rb",
|
195
|
+
"lib/cukunity/cucumber/support/transforms.rb",
|
196
|
+
"lib/cukunity/cucumber/support/unity_helpers.rb",
|
197
|
+
"lib/cukunity/drivers/android.rb",
|
198
|
+
"lib/cukunity/drivers/android/app.rb",
|
199
|
+
"lib/cukunity/drivers/android/appkiller/.gitignore",
|
200
|
+
"lib/cukunity/drivers/android/appkiller/AndroidManifest.xml",
|
201
|
+
"lib/cukunity/drivers/android/appkiller/ant.properties",
|
202
|
+
"lib/cukunity/drivers/android/appkiller/build.xml",
|
203
|
+
"lib/cukunity/drivers/android/appkiller/proguard.cfg",
|
204
|
+
"lib/cukunity/drivers/android/appkiller/project.properties",
|
205
|
+
"lib/cukunity/drivers/android/appkiller/res/layout/main.xml",
|
206
|
+
"lib/cukunity/drivers/android/appkiller/res/values/strings.xml",
|
207
|
+
"lib/cukunity/drivers/android/appkiller/src/cukunity/appkiller/AppKiller.java",
|
208
|
+
"lib/cukunity/drivers/android/keyboard_input.rb",
|
209
|
+
"lib/cukunity/drivers/android/keycodes.rb",
|
210
|
+
"lib/cukunity/drivers/android/monkey_client.rb",
|
211
|
+
"lib/cukunity/drivers/android/process.rb",
|
212
|
+
"lib/cukunity/drivers/android/touch_input.rb",
|
213
|
+
"lib/cukunity/drivers/android/tunnel_client_methods.rb",
|
214
|
+
"lib/cukunity/drivers/android/unity_client.rb",
|
215
|
+
"lib/cukunity/drivers/android/utils.rb",
|
216
|
+
"lib/cukunity/drivers/iOS.rb",
|
217
|
+
"lib/cukunity/drivers/iOS/app.rb",
|
218
|
+
"lib/cukunity/drivers/iOS/keyboard_input.rb",
|
219
|
+
"lib/cukunity/drivers/iOS/process.rb",
|
220
|
+
"lib/cukunity/drivers/iOS/touch_input.rb",
|
221
|
+
"lib/cukunity/drivers/iOS/tunnel_client_methods.rb",
|
222
|
+
"lib/cukunity/drivers/iOS/uiautomation.rb",
|
223
|
+
"lib/cukunity/drivers/iOS/uiautomation_master.rb",
|
224
|
+
"lib/cukunity/drivers/iOS/uiautomation_slave.js",
|
225
|
+
"lib/cukunity/drivers/iOS/uiautomation_slave.rb",
|
226
|
+
"lib/cukunity/drivers/iOS/unity_client.rb",
|
227
|
+
"lib/cukunity/drivers/iOS/utils.rb",
|
228
|
+
"lib/cukunity/exceptions.rb",
|
229
|
+
"lib/cukunity/keyboard_input_methods.rb",
|
230
|
+
"lib/cukunity/request_line_response_client_methods.rb",
|
231
|
+
"lib/cukunity/tasks/cucumber.rake",
|
232
|
+
"lib/cukunity/touch_input_methods.rb",
|
233
|
+
"lib/cukunity/unity.rb",
|
234
|
+
"lib/cukunity/unity/client_methods.rb",
|
235
|
+
"lib/cukunity/unity/command_facade.rb",
|
236
|
+
"lib/cukunity/unity/component.rb",
|
237
|
+
"lib/cukunity/unity/gameobject.rb",
|
238
|
+
"lib/cukunity/unity/hint.rb",
|
239
|
+
"lib/cukunity/unity/json_container.rb",
|
240
|
+
"lib/cukunity/unity/level.rb",
|
241
|
+
"lib/cukunity/unity/scene.rb",
|
242
|
+
"lib/cukunity/unity/screen.rb",
|
243
|
+
"lib/cukunity/unity/screen_hint_methods.rb",
|
244
|
+
"lib/cukunity/unity/text_hint_methods.rb",
|
245
|
+
"lib/cukunity/utils.rb"
|
246
|
+
]
|
247
|
+
s.homepage = "http://github.com/imkira/cukunity"
|
248
|
+
s.licenses = ["MIT"]
|
249
|
+
s.require_paths = ["lib"]
|
250
|
+
s.rubygems_version = "1.8.11"
|
251
|
+
s.summary = "cukunity is an automation/testing framework that simplifies BDD testing of Unity 3D games."
|
252
|
+
|
253
|
+
if s.respond_to? :specification_version then
|
254
|
+
s.specification_version = 3
|
255
|
+
|
256
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
257
|
+
s.add_runtime_dependency(%q<json>, [">= 1.6.5"])
|
258
|
+
s.add_runtime_dependency(%q<term-ansicolor>, [">= 1.0.6"])
|
259
|
+
s.add_development_dependency(%q<rspec>, ["~> 2.8.0"])
|
260
|
+
s.add_development_dependency(%q<yard>, ["~> 0.7"])
|
261
|
+
s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
|
262
|
+
s.add_development_dependency(%q<cucumber>, [">= 0"])
|
263
|
+
s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
|
264
|
+
s.add_development_dependency(%q<jeweler>, ["~> 1.8.3"])
|
265
|
+
s.add_development_dependency(%q<reek>, ["~> 1.2.8"])
|
266
|
+
s.add_development_dependency(%q<roodi>, ["~> 2.1.0"])
|
267
|
+
s.add_runtime_dependency(%q<json>, [">= 1.6.5"])
|
268
|
+
s.add_runtime_dependency(%q<term-ansicolor>, [">= 1.0.6"])
|
269
|
+
else
|
270
|
+
s.add_dependency(%q<json>, [">= 1.6.5"])
|
271
|
+
s.add_dependency(%q<term-ansicolor>, [">= 1.0.6"])
|
272
|
+
s.add_dependency(%q<rspec>, ["~> 2.8.0"])
|
273
|
+
s.add_dependency(%q<yard>, ["~> 0.7"])
|
274
|
+
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
275
|
+
s.add_dependency(%q<cucumber>, [">= 0"])
|
276
|
+
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
277
|
+
s.add_dependency(%q<jeweler>, ["~> 1.8.3"])
|
278
|
+
s.add_dependency(%q<reek>, ["~> 1.2.8"])
|
279
|
+
s.add_dependency(%q<roodi>, ["~> 2.1.0"])
|
280
|
+
s.add_dependency(%q<json>, [">= 1.6.5"])
|
281
|
+
s.add_dependency(%q<term-ansicolor>, [">= 1.0.6"])
|
282
|
+
end
|
283
|
+
else
|
284
|
+
s.add_dependency(%q<json>, [">= 1.6.5"])
|
285
|
+
s.add_dependency(%q<term-ansicolor>, [">= 1.0.6"])
|
286
|
+
s.add_dependency(%q<rspec>, ["~> 2.8.0"])
|
287
|
+
s.add_dependency(%q<yard>, ["~> 0.7"])
|
288
|
+
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
289
|
+
s.add_dependency(%q<cucumber>, [">= 0"])
|
290
|
+
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
291
|
+
s.add_dependency(%q<jeweler>, ["~> 1.8.3"])
|
292
|
+
s.add_dependency(%q<reek>, ["~> 1.2.8"])
|
293
|
+
s.add_dependency(%q<roodi>, ["~> 2.1.0"])
|
294
|
+
s.add_dependency(%q<json>, [">= 1.6.5"])
|
295
|
+
s.add_dependency(%q<term-ansicolor>, [">= 1.0.6"])
|
296
|
+
end
|
297
|
+
end
|
298
|
+
|