This PR contains all the work related to setting up this project as required to implement the [Assignment](https://repo.rock-n-code.com/rock-n-code/deep-linking-assignment/wiki/Assignment) on top, as intended. To summarise this work: - [x] created a new **Xcode** project; - [x] cloned the `Wikipedia` app and inserted it into the **Xcode** project; - [x] created the `Locations` app and also, its `Libraries` package; - [x] created the `Shared` package to share dependencies between the apps; - [x] added a `Makefile` file and implemented some **environment** and **help** commands. Co-authored-by: Javier Cicchelli <javier@rock-n-code.com> Reviewed-on: rock-n-code/deep-linking-assignment#1
45 lines
1.0 KiB
Objective-C
45 lines
1.0 KiB
Objective-C
#import <XCTest/XCTest.h>
|
|
|
|
@interface CodeFileLocationTests : XCTestCase
|
|
|
|
@end
|
|
|
|
@implementation CodeFileLocationTests
|
|
|
|
- (void)setUp {
|
|
[super setUp];
|
|
}
|
|
|
|
- (void)test_code_files_are_not_in_root_folder {
|
|
// There are project and testing "code" folders.
|
|
// This test ensures we keep code files out of the project's root directory.
|
|
NSArray *extensionsToKeepOutOfRoot =
|
|
@[
|
|
@"h",
|
|
@"m",
|
|
@"c",
|
|
@"mm",
|
|
@"cpp",
|
|
@"swift",
|
|
@"xib",
|
|
@"json",
|
|
@"storyboard",
|
|
@"plist",
|
|
@"xcdatamodeld"
|
|
];
|
|
|
|
NSPredicate *extensionsPredicate =
|
|
[NSPredicate predicateWithFormat:@"pathExtension IN %@", extensionsToKeepOutOfRoot];
|
|
|
|
NSArray *filesWhichShouldNotBeInRoot =
|
|
[[[NSFileManager defaultManager] contentsOfDirectoryAtPath:SOURCE_ROOT_DIR error:nil] filteredArrayUsingPredicate:extensionsPredicate];
|
|
|
|
XCTAssertEqual(filesWhichShouldNotBeInRoot.count, 0);
|
|
}
|
|
|
|
- (void)tearDown {
|
|
[super tearDown];
|
|
}
|
|
|
|
@end
|