Skip to content

Commit c597a6d

Browse files
committed
Add unit tests for sorting algorithms
1 parent 27b2410 commit c597a6d

File tree

23 files changed

+3829
-0
lines changed

23 files changed

+3829
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,398 @@
1+
// !$*UTF8*$!
2+
{
3+
archiveVersion = 1;
4+
classes = {
5+
};
6+
objectVersion = 46;
7+
objects = {
8+
9+
/* Begin PBXBuildFile section */
10+
7B18E0971C5BFA2E005A2B8E /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B18E0961C5BFA2E005A2B8E /* AppDelegate.swift */; };
11+
7B18E0991C5BFA2E005A2B8E /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 7B18E0981C5BFA2E005A2B8E /* Assets.xcassets */; };
12+
7B18E09C1C5BFA2E005A2B8E /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7B18E09A1C5BFA2E005A2B8E /* MainMenu.xib */; };
13+
7B18E0A71C5BFA2E005A2B8E /* InsertionSortTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B18E0A61C5BFA2E005A2B8E /* InsertionSortTests.swift */; };
14+
7B18E0B21C5BFA4B005A2B8E /* SortingTestHelpers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B18E0B11C5BFA4B005A2B8E /* SortingTestHelpers.swift */; };
15+
7B18E0B41C5BFA5F005A2B8E /* InsertionSort.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B18E0B31C5BFA5F005A2B8E /* InsertionSort.swift */; };
16+
/* End PBXBuildFile section */
17+
18+
/* Begin PBXContainerItemProxy section */
19+
7B18E0A31C5BFA2E005A2B8E /* PBXContainerItemProxy */ = {
20+
isa = PBXContainerItemProxy;
21+
containerPortal = 7B18E08B1C5BFA2E005A2B8E /* Project object */;
22+
proxyType = 1;
23+
remoteGlobalIDString = 7B18E0921C5BFA2E005A2B8E;
24+
remoteInfo = InsertionSort;
25+
};
26+
/* End PBXContainerItemProxy section */
27+
28+
/* Begin PBXFileReference section */
29+
7B18E0931C5BFA2E005A2B8E /* InsertionSort.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = InsertionSort.app; sourceTree = BUILT_PRODUCTS_DIR; };
30+
7B18E0961C5BFA2E005A2B8E /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
31+
7B18E0981C5BFA2E005A2B8E /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
32+
7B18E09B1C5BFA2E005A2B8E /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = "<group>"; };
33+
7B18E09D1C5BFA2E005A2B8E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
34+
7B18E0A21C5BFA2E005A2B8E /* InsertionSortTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = InsertionSortTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
35+
7B18E0A61C5BFA2E005A2B8E /* InsertionSortTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = InsertionSortTests.swift; sourceTree = "<group>"; };
36+
7B18E0A81C5BFA2E005A2B8E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
37+
7B18E0B11C5BFA4B005A2B8E /* SortingTestHelpers.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = SortingTestHelpers.swift; path = "../../../Quicksort/Quicksort Tests/QuicksortTests/SortingTestHelpers.swift"; sourceTree = "<group>"; };
38+
7B18E0B31C5BFA5F005A2B8E /* InsertionSort.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = InsertionSort.swift; path = ../../InsertionSort.swift; sourceTree = "<group>"; };
39+
/* End PBXFileReference section */
40+
41+
/* Begin PBXFrameworksBuildPhase section */
42+
7B18E0901C5BFA2E005A2B8E /* Frameworks */ = {
43+
isa = PBXFrameworksBuildPhase;
44+
buildActionMask = 2147483647;
45+
files = (
46+
);
47+
runOnlyForDeploymentPostprocessing = 0;
48+
};
49+
7B18E09F1C5BFA2E005A2B8E /* Frameworks */ = {
50+
isa = PBXFrameworksBuildPhase;
51+
buildActionMask = 2147483647;
52+
files = (
53+
);
54+
runOnlyForDeploymentPostprocessing = 0;
55+
};
56+
/* End PBXFrameworksBuildPhase section */
57+
58+
/* Begin PBXGroup section */
59+
7B18E08A1C5BFA2E005A2B8E = {
60+
isa = PBXGroup;
61+
children = (
62+
7B18E0951C5BFA2E005A2B8E /* InsertionSort */,
63+
7B18E0A51C5BFA2E005A2B8E /* InsertionSortTests */,
64+
7B18E0941C5BFA2E005A2B8E /* Products */,
65+
);
66+
sourceTree = "<group>";
67+
};
68+
7B18E0941C5BFA2E005A2B8E /* Products */ = {
69+
isa = PBXGroup;
70+
children = (
71+
7B18E0931C5BFA2E005A2B8E /* InsertionSort.app */,
72+
7B18E0A21C5BFA2E005A2B8E /* InsertionSortTests.xctest */,
73+
);
74+
name = Products;
75+
sourceTree = "<group>";
76+
};
77+
7B18E0951C5BFA2E005A2B8E /* InsertionSort */ = {
78+
isa = PBXGroup;
79+
children = (
80+
7B18E0961C5BFA2E005A2B8E /* AppDelegate.swift */,
81+
7B18E0981C5BFA2E005A2B8E /* Assets.xcassets */,
82+
7B18E09D1C5BFA2E005A2B8E /* Info.plist */,
83+
7B18E0B31C5BFA5F005A2B8E /* InsertionSort.swift */,
84+
7B18E09A1C5BFA2E005A2B8E /* MainMenu.xib */,
85+
);
86+
path = InsertionSort;
87+
sourceTree = "<group>";
88+
};
89+
7B18E0A51C5BFA2E005A2B8E /* InsertionSortTests */ = {
90+
isa = PBXGroup;
91+
children = (
92+
7B18E0A81C5BFA2E005A2B8E /* Info.plist */,
93+
7B18E0A61C5BFA2E005A2B8E /* InsertionSortTests.swift */,
94+
7B18E0B11C5BFA4B005A2B8E /* SortingTestHelpers.swift */,
95+
);
96+
path = InsertionSortTests;
97+
sourceTree = "<group>";
98+
};
99+
/* End PBXGroup section */
100+
101+
/* Begin PBXNativeTarget section */
102+
7B18E0921C5BFA2E005A2B8E /* InsertionSort */ = {
103+
isa = PBXNativeTarget;
104+
buildConfigurationList = 7B18E0AB1C5BFA2E005A2B8E /* Build configuration list for PBXNativeTarget "InsertionSort" */;
105+
buildPhases = (
106+
7B18E08F1C5BFA2E005A2B8E /* Sources */,
107+
7B18E0901C5BFA2E005A2B8E /* Frameworks */,
108+
7B18E0911C5BFA2E005A2B8E /* Resources */,
109+
);
110+
buildRules = (
111+
);
112+
dependencies = (
113+
);
114+
name = InsertionSort;
115+
productName = InsertionSort;
116+
productReference = 7B18E0931C5BFA2E005A2B8E /* InsertionSort.app */;
117+
productType = "com.apple.product-type.application";
118+
};
119+
7B18E0A11C5BFA2E005A2B8E /* InsertionSortTests */ = {
120+
isa = PBXNativeTarget;
121+
buildConfigurationList = 7B18E0AE1C5BFA2E005A2B8E /* Build configuration list for PBXNativeTarget "InsertionSortTests" */;
122+
buildPhases = (
123+
7B18E09E1C5BFA2E005A2B8E /* Sources */,
124+
7B18E09F1C5BFA2E005A2B8E /* Frameworks */,
125+
7B18E0A01C5BFA2E005A2B8E /* Resources */,
126+
);
127+
buildRules = (
128+
);
129+
dependencies = (
130+
7B18E0A41C5BFA2E005A2B8E /* PBXTargetDependency */,
131+
);
132+
name = InsertionSortTests;
133+
productName = InsertionSortTests;
134+
productReference = 7B18E0A21C5BFA2E005A2B8E /* InsertionSortTests.xctest */;
135+
productType = "com.apple.product-type.bundle.unit-test";
136+
};
137+
/* End PBXNativeTarget section */
138+
139+
/* Begin PBXProject section */
140+
7B18E08B1C5BFA2E005A2B8E /* Project object */ = {
141+
isa = PBXProject;
142+
attributes = {
143+
LastSwiftUpdateCheck = 0720;
144+
LastUpgradeCheck = 0720;
145+
ORGANIZATIONNAME = "Swift Algorithm Club";
146+
TargetAttributes = {
147+
7B18E0921C5BFA2E005A2B8E = {
148+
CreatedOnToolsVersion = 7.2;
149+
};
150+
7B18E0A11C5BFA2E005A2B8E = {
151+
CreatedOnToolsVersion = 7.2;
152+
TestTargetID = 7B18E0921C5BFA2E005A2B8E;
153+
};
154+
};
155+
};
156+
buildConfigurationList = 7B18E08E1C5BFA2E005A2B8E /* Build configuration list for PBXProject "InsertionSort" */;
157+
compatibilityVersion = "Xcode 3.2";
158+
developmentRegion = English;
159+
hasScannedForEncodings = 0;
160+
knownRegions = (
161+
en,
162+
Base,
163+
);
164+
mainGroup = 7B18E08A1C5BFA2E005A2B8E;
165+
productRefGroup = 7B18E0941C5BFA2E005A2B8E /* Products */;
166+
projectDirPath = "";
167+
projectRoot = "";
168+
targets = (
169+
7B18E0921C5BFA2E005A2B8E /* InsertionSort */,
170+
7B18E0A11C5BFA2E005A2B8E /* InsertionSortTests */,
171+
);
172+
};
173+
/* End PBXProject section */
174+
175+
/* Begin PBXResourcesBuildPhase section */
176+
7B18E0911C5BFA2E005A2B8E /* Resources */ = {
177+
isa = PBXResourcesBuildPhase;
178+
buildActionMask = 2147483647;
179+
files = (
180+
7B18E0991C5BFA2E005A2B8E /* Assets.xcassets in Resources */,
181+
7B18E09C1C5BFA2E005A2B8E /* MainMenu.xib in Resources */,
182+
);
183+
runOnlyForDeploymentPostprocessing = 0;
184+
};
185+
7B18E0A01C5BFA2E005A2B8E /* Resources */ = {
186+
isa = PBXResourcesBuildPhase;
187+
buildActionMask = 2147483647;
188+
files = (
189+
);
190+
runOnlyForDeploymentPostprocessing = 0;
191+
};
192+
/* End PBXResourcesBuildPhase section */
193+
194+
/* Begin PBXSourcesBuildPhase section */
195+
7B18E08F1C5BFA2E005A2B8E /* Sources */ = {
196+
isa = PBXSourcesBuildPhase;
197+
buildActionMask = 2147483647;
198+
files = (
199+
7B18E0971C5BFA2E005A2B8E /* AppDelegate.swift in Sources */,
200+
7B18E0B41C5BFA5F005A2B8E /* InsertionSort.swift in Sources */,
201+
);
202+
runOnlyForDeploymentPostprocessing = 0;
203+
};
204+
7B18E09E1C5BFA2E005A2B8E /* Sources */ = {
205+
isa = PBXSourcesBuildPhase;
206+
buildActionMask = 2147483647;
207+
files = (
208+
7B18E0B21C5BFA4B005A2B8E /* SortingTestHelpers.swift in Sources */,
209+
7B18E0A71C5BFA2E005A2B8E /* InsertionSortTests.swift in Sources */,
210+
);
211+
runOnlyForDeploymentPostprocessing = 0;
212+
};
213+
/* End PBXSourcesBuildPhase section */
214+
215+
/* Begin PBXTargetDependency section */
216+
7B18E0A41C5BFA2E005A2B8E /* PBXTargetDependency */ = {
217+
isa = PBXTargetDependency;
218+
target = 7B18E0921C5BFA2E005A2B8E /* InsertionSort */;
219+
targetProxy = 7B18E0A31C5BFA2E005A2B8E /* PBXContainerItemProxy */;
220+
};
221+
/* End PBXTargetDependency section */
222+
223+
/* Begin PBXVariantGroup section */
224+
7B18E09A1C5BFA2E005A2B8E /* MainMenu.xib */ = {
225+
isa = PBXVariantGroup;
226+
children = (
227+
7B18E09B1C5BFA2E005A2B8E /* Base */,
228+
);
229+
name = MainMenu.xib;
230+
sourceTree = "<group>";
231+
};
232+
/* End PBXVariantGroup section */
233+
234+
/* Begin XCBuildConfiguration section */
235+
7B18E0A91C5BFA2E005A2B8E /* Debug */ = {
236+
isa = XCBuildConfiguration;
237+
buildSettings = {
238+
ALWAYS_SEARCH_USER_PATHS = NO;
239+
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
240+
CLANG_CXX_LIBRARY = "libc++";
241+
CLANG_ENABLE_MODULES = YES;
242+
CLANG_ENABLE_OBJC_ARC = YES;
243+
CLANG_WARN_BOOL_CONVERSION = YES;
244+
CLANG_WARN_CONSTANT_CONVERSION = YES;
245+
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
246+
CLANG_WARN_EMPTY_BODY = YES;
247+
CLANG_WARN_ENUM_CONVERSION = YES;
248+
CLANG_WARN_INT_CONVERSION = YES;
249+
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
250+
CLANG_WARN_UNREACHABLE_CODE = YES;
251+
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
252+
CODE_SIGN_IDENTITY = "-";
253+
COPY_PHASE_STRIP = NO;
254+
DEBUG_INFORMATION_FORMAT = dwarf;
255+
ENABLE_STRICT_OBJC_MSGSEND = YES;
256+
ENABLE_TESTABILITY = YES;
257+
GCC_C_LANGUAGE_STANDARD = gnu99;
258+
GCC_DYNAMIC_NO_PIC = NO;
259+
GCC_NO_COMMON_BLOCKS = YES;
260+
GCC_OPTIMIZATION_LEVEL = 0;
261+
GCC_PREPROCESSOR_DEFINITIONS = (
262+
"DEBUG=1",
263+
"$(inherited)",
264+
);
265+
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
266+
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
267+
GCC_WARN_UNDECLARED_SELECTOR = YES;
268+
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
269+
GCC_WARN_UNUSED_FUNCTION = YES;
270+
GCC_WARN_UNUSED_VARIABLE = YES;
271+
MACOSX_DEPLOYMENT_TARGET = 10.11;
272+
MTL_ENABLE_DEBUG_INFO = YES;
273+
ONLY_ACTIVE_ARCH = YES;
274+
SDKROOT = macosx;
275+
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
276+
};
277+
name = Debug;
278+
};
279+
7B18E0AA1C5BFA2E005A2B8E /* Release */ = {
280+
isa = XCBuildConfiguration;
281+
buildSettings = {
282+
ALWAYS_SEARCH_USER_PATHS = NO;
283+
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
284+
CLANG_CXX_LIBRARY = "libc++";
285+
CLANG_ENABLE_MODULES = YES;
286+
CLANG_ENABLE_OBJC_ARC = YES;
287+
CLANG_WARN_BOOL_CONVERSION = YES;
288+
CLANG_WARN_CONSTANT_CONVERSION = YES;
289+
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
290+
CLANG_WARN_EMPTY_BODY = YES;
291+
CLANG_WARN_ENUM_CONVERSION = YES;
292+
CLANG_WARN_INT_CONVERSION = YES;
293+
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
294+
CLANG_WARN_UNREACHABLE_CODE = YES;
295+
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
296+
CODE_SIGN_IDENTITY = "-";
297+
COPY_PHASE_STRIP = NO;
298+
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
299+
ENABLE_NS_ASSERTIONS = NO;
300+
ENABLE_STRICT_OBJC_MSGSEND = YES;
301+
GCC_C_LANGUAGE_STANDARD = gnu99;
302+
GCC_NO_COMMON_BLOCKS = YES;
303+
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
304+
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
305+
GCC_WARN_UNDECLARED_SELECTOR = YES;
306+
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
307+
GCC_WARN_UNUSED_FUNCTION = YES;
308+
GCC_WARN_UNUSED_VARIABLE = YES;
309+
MACOSX_DEPLOYMENT_TARGET = 10.11;
310+
MTL_ENABLE_DEBUG_INFO = NO;
311+
SDKROOT = macosx;
312+
};
313+
name = Release;
314+
};
315+
7B18E0AC1C5BFA2E005A2B8E /* Debug */ = {
316+
isa = XCBuildConfiguration;
317+
buildSettings = {
318+
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
319+
COMBINE_HIDPI_IMAGES = YES;
320+
INFOPLIST_FILE = InsertionSort/Info.plist;
321+
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks";
322+
PRODUCT_BUNDLE_IDENTIFIER = swift.algorithm.club.InsertionSort;
323+
PRODUCT_NAME = "$(TARGET_NAME)";
324+
};
325+
name = Debug;
326+
};
327+
7B18E0AD1C5BFA2E005A2B8E /* Release */ = {
328+
isa = XCBuildConfiguration;
329+
buildSettings = {
330+
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
331+
COMBINE_HIDPI_IMAGES = YES;
332+
INFOPLIST_FILE = InsertionSort/Info.plist;
333+
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks";
334+
PRODUCT_BUNDLE_IDENTIFIER = swift.algorithm.club.InsertionSort;
335+
PRODUCT_NAME = "$(TARGET_NAME)";
336+
};
337+
name = Release;
338+
};
339+
7B18E0AF1C5BFA2E005A2B8E /* Debug */ = {
340+
isa = XCBuildConfiguration;
341+
buildSettings = {
342+
BUNDLE_LOADER = "$(TEST_HOST)";
343+
COMBINE_HIDPI_IMAGES = YES;
344+
INFOPLIST_FILE = InsertionSortTests/Info.plist;
345+
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks";
346+
PRODUCT_BUNDLE_IDENTIFIER = swift.algorithm.club.InsertionSortTests;
347+
PRODUCT_NAME = "$(TARGET_NAME)";
348+
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/InsertionSort.app/Contents/MacOS/InsertionSort";
349+
};
350+
name = Debug;
351+
};
352+
7B18E0B01C5BFA2E005A2B8E /* Release */ = {
353+
isa = XCBuildConfiguration;
354+
buildSettings = {
355+
BUNDLE_LOADER = "$(TEST_HOST)";
356+
COMBINE_HIDPI_IMAGES = YES;
357+
INFOPLIST_FILE = InsertionSortTests/Info.plist;
358+
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks";
359+
PRODUCT_BUNDLE_IDENTIFIER = swift.algorithm.club.InsertionSortTests;
360+
PRODUCT_NAME = "$(TARGET_NAME)";
361+
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/InsertionSort.app/Contents/MacOS/InsertionSort";
362+
};
363+
name = Release;
364+
};
365+
/* End XCBuildConfiguration section */
366+
367+
/* Begin XCConfigurationList section */
368+
7B18E08E1C5BFA2E005A2B8E /* Build configuration list for PBXProject "InsertionSort" */ = {
369+
isa = XCConfigurationList;
370+
buildConfigurations = (
371+
7B18E0A91C5BFA2E005A2B8E /* Debug */,
372+
7B18E0AA1C5BFA2E005A2B8E /* Release */,
373+
);
374+
defaultConfigurationIsVisible = 0;
375+
defaultConfigurationName = Release;
376+
};
377+
7B18E0AB1C5BFA2E005A2B8E /* Build configuration list for PBXNativeTarget "InsertionSort" */ = {
378+
isa = XCConfigurationList;
379+
buildConfigurations = (
380+
7B18E0AC1C5BFA2E005A2B8E /* Debug */,
381+
7B18E0AD1C5BFA2E005A2B8E /* Release */,
382+
);
383+
defaultConfigurationIsVisible = 0;
384+
defaultConfigurationName = Release;
385+
};
386+
7B18E0AE1C5BFA2E005A2B8E /* Build configuration list for PBXNativeTarget "InsertionSortTests" */ = {
387+
isa = XCConfigurationList;
388+
buildConfigurations = (
389+
7B18E0AF1C5BFA2E005A2B8E /* Debug */,
390+
7B18E0B01C5BFA2E005A2B8E /* Release */,
391+
);
392+
defaultConfigurationIsVisible = 0;
393+
defaultConfigurationName = Release;
394+
};
395+
/* End XCConfigurationList section */
396+
};
397+
rootObject = 7B18E08B1C5BFA2E005A2B8E /* Project object */;
398+
}

0 commit comments

Comments
 (0)