{"action":"created","comment":{"url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/pulls/comments/40260330","id":40260330,"diff_hunk":"@@ -2,5 +2,87 @@\n \n ## Objectives\n \n+1. Use a familiar problem to introduce yourself to Xcode's testing interface.\n+2. Compare the \"expected\" versus the \"got\" of each test failure to gain insight towards how to solve the problem.\n+3. Solve the problem step by step, relying on the tests to ensure yourself of forward progress.\n+4. Verify that Learn detected your successful solution by looking at the \"Local Build\" light.\n+\n+## Introduction\n+\n+Instead of relying on `NSLog()` statements to inspect our palindrome detector, lets rely on a testing suite that uses Specta and Expecta! The test file is already set up for you with the test strings and the method calls. You'll have to write out the method implementations a second time, but now you'll have the test failures and successes to guide you instead of doing it yourself from the `application:didFinishLaunchingWithOptions:` methods.\n+\n ## Instructions\n \n+Fork and clone this lab.\n+\n+Open the `objc-palindrome-inspector.xcworkspace` file. **Note:** *This the workspace, not the project. The workspace contains a second project that holds the testing library that we use.*\n+\n+1 — Try to run the tests with `⌘` `U`. You should experience a build failure that generates a collection of errors because of missing method definitions.\n+\n+![](https://curriculum-content.s3.amazonaws.com/ios/ios-objc-fundamentals-unit/palindrome_no_method_errors.png)\n+\n+Don't panic! This is because the test file `FISAppDelegateSpec.m` is looking for the methods that you're going to write. Objective-C doesn't have a `NoMethodError` like some other languages such as Ruby, so instead the pre-compiler simply keeps the build from succeeding in order to avoid a definite crash. The fix for this is simple: write the methods the test file is instructed to call!\n+\n+2 — Navigate to the `FISAppDelegate.h` header file and declare the same two methods from the previous lab:\n+\n+  * `stringIsPalindrome:` which takes one `NSString` argument called `string` and returns a `BOOL`, and\n+  * `stringByReversingString:` which takes on `NSString` argument called `string` and returns an `NSString`.\n+\n+3 — Now Navigate to the `FISAppDelegate.m` implementation file and use autocomplete to define the implementation of `stringIsPalindrome:` to `return NO;` and the implementation of `stringByReversingString:` to `return nil;`.","path":"README.md","position":30,"original_position":30,"commit_id":"882871eff9c24ecbf517313cf4d1ef6375c00c5e","original_commit_id":"882871eff9c24ecbf517313cf4d1ef6375c00c5e","user":{"login":"jmburges","id":58342,"avatar_url":"https://avatars.githubusercontent.com/u/58342?v=3","gravatar_id":"","url":"https://api.github.com/users/jmburges","html_url":"https://github.com/jmburges","followers_url":"https://api.github.com/users/jmburges/followers","following_url":"https://api.github.com/users/jmburges/following{/other_user}","gists_url":"https://api.github.com/users/jmburges/gists{/gist_id}","starred_url":"https://api.github.com/users/jmburges/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jmburges/subscriptions","organizations_url":"https://api.github.com/users/jmburges/orgs","repos_url":"https://api.github.com/users/jmburges/repos","events_url":"https://api.github.com/users/jmburges/events{/privacy}","received_events_url":"https://api.github.com/users/jmburges/received_events","type":"User","site_admin":false},"body":"lower case Navigate","created_at":"2015-09-23T21:30:39Z","updated_at":"2015-09-23T21:30:39Z","html_url":"https://github.com/learn-co-curriculum/objc-palindrome-inspector/pull/1#discussion_r40260330","pull_request_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/pulls/1","_links":{"self":{"href":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/pulls/comments/40260330"},"html":{"href":"https://github.com/learn-co-curriculum/objc-palindrome-inspector/pull/1#discussion_r40260330"},"pull_request":{"href":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/pulls/1"}}},"pull_request":{"url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/pulls/1","id":45609737,"html_url":"https://github.com/learn-co-curriculum/objc-palindrome-inspector/pull/1","diff_url":"https://github.com/learn-co-curriculum/objc-palindrome-inspector/pull/1.diff","patch_url":"https://github.com/learn-co-curriculum/objc-palindrome-inspector/pull/1.patch","issue_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/issues/1","number":1,"state":"open","locked":false,"title":"Wip development","user":{"login":"markedwardmurray","id":10505365,"avatar_url":"https://avatars.githubusercontent.com/u/10505365?v=3","gravatar_id":"","url":"https://api.github.com/users/markedwardmurray","html_url":"https://github.com/markedwardmurray","followers_url":"https://api.github.com/users/markedwardmurray/followers","following_url":"https://api.github.com/users/markedwardmurray/following{/other_user}","gists_url":"https://api.github.com/users/markedwardmurray/gists{/gist_id}","starred_url":"https://api.github.com/users/markedwardmurray/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/markedwardmurray/subscriptions","organizations_url":"https://api.github.com/users/markedwardmurray/orgs","repos_url":"https://api.github.com/users/markedwardmurray/repos","events_url":"https://api.github.com/users/markedwardmurray/events{/privacy}","received_events_url":"https://api.github.com/users/markedwardmurray/received_events","type":"User","site_admin":false},"body":"@misterfifths @jmburges \r\n\r\nNew walkthrough to follow Using Tests. This is a companion to objc-palindrome-detector but using Specta instead of NSLog()ing.\r\n\r\nPlease review by Tue 9/22\r\n\r\nregarding https://github.com/learn-co-curriculum/mobile-development-with-ios-track/issues/23","created_at":"2015-09-21T22:44:38Z","updated_at":"2015-09-23T21:30:39Z","closed_at":null,"merged_at":null,"merge_commit_sha":"abee5bfff249df8883b95cb1c59afd14217d9d64","assignee":{"login":"jmburges","id":58342,"avatar_url":"https://avatars.githubusercontent.com/u/58342?v=3","gravatar_id":"","url":"https://api.github.com/users/jmburges","html_url":"https://github.com/jmburges","followers_url":"https://api.github.com/users/jmburges/followers","following_url":"https://api.github.com/users/jmburges/following{/other_user}","gists_url":"https://api.github.com/users/jmburges/gists{/gist_id}","starred_url":"https://api.github.com/users/jmburges/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jmburges/subscriptions","organizations_url":"https://api.github.com/users/jmburges/orgs","repos_url":"https://api.github.com/users/jmburges/repos","events_url":"https://api.github.com/users/jmburges/events{/privacy}","received_events_url":"https://api.github.com/users/jmburges/received_events","type":"User","site_admin":false},"milestone":null,"commits_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/pulls/1/commits","review_comments_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/pulls/1/comments","review_comment_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/pulls/comments{/number}","comments_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/issues/1/comments","statuses_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/statuses/882871eff9c24ecbf517313cf4d1ef6375c00c5e","head":{"label":"learn-co-curriculum:wip-development","ref":"wip-development","sha":"882871eff9c24ecbf517313cf4d1ef6375c00c5e","user":{"login":"learn-co-curriculum","id":6208017,"avatar_url":"https://avatars.githubusercontent.com/u/6208017?v=3","gravatar_id":"","url":"https://api.github.com/users/learn-co-curriculum","html_url":"https://github.com/learn-co-curriculum","followers_url":"https://api.github.com/users/learn-co-curriculum/followers","following_url":"https://api.github.com/users/learn-co-curriculum/following{/other_user}","gists_url":"https://api.github.com/users/learn-co-curriculum/gists{/gist_id}","starred_url":"https://api.github.com/users/learn-co-curriculum/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/learn-co-curriculum/subscriptions","organizations_url":"https://api.github.com/users/learn-co-curriculum/orgs","repos_url":"https://api.github.com/users/learn-co-curriculum/repos","events_url":"https://api.github.com/users/learn-co-curriculum/events{/privacy}","received_events_url":"https://api.github.com/users/learn-co-curriculum/received_events","type":"Organization","site_admin":false},"repo":{"id":42548455,"name":"objc-palindrome-inspector","full_name":"learn-co-curriculum/objc-palindrome-inspector","owner":{"login":"learn-co-curriculum","id":6208017,"avatar_url":"https://avatars.githubusercontent.com/u/6208017?v=3","gravatar_id":"","url":"https://api.github.com/users/learn-co-curriculum","html_url":"https://github.com/learn-co-curriculum","followers_url":"https://api.github.com/users/learn-co-curriculum/followers","following_url":"https://api.github.com/users/learn-co-curriculum/following{/other_user}","gists_url":"https://api.github.com/users/learn-co-curriculum/gists{/gist_id}","starred_url":"https://api.github.com/users/learn-co-curriculum/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/learn-co-curriculum/subscriptions","organizations_url":"https://api.github.com/users/learn-co-curriculum/orgs","repos_url":"https://api.github.com/users/learn-co-curriculum/repos","events_url":"https://api.github.com/users/learn-co-curriculum/events{/privacy}","received_events_url":"https://api.github.com/users/learn-co-curriculum/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/learn-co-curriculum/objc-palindrome-inspector","description":"","fork":false,"url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector","forks_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/forks","keys_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/keys{/key_id}","collaborators_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/teams","hooks_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/hooks","issue_events_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/issues/events{/number}","events_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/events","assignees_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/assignees{/user}","branches_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/branches{/branch}","tags_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/tags","blobs_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/git/refs{/sha}","trees_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/git/trees{/sha}","statuses_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/statuses/{sha}","languages_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/languages","stargazers_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/stargazers","contributors_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/contributors","subscribers_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/subscribers","subscription_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/subscription","commits_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/commits{/sha}","git_commits_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/git/commits{/sha}","comments_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/comments{/number}","issue_comment_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/issues/comments{/number}","contents_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/contents/{+path}","compare_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/compare/{base}...{head}","merges_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/merges","archive_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/downloads","issues_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/issues{/number}","pulls_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/pulls{/number}","milestones_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/milestones{/number}","notifications_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/labels{/name}","releases_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/releases{/id}","created_at":"2015-09-15T21:45:56Z","updated_at":"2015-09-15T21:46:12Z","pushed_at":"2015-09-23T14:22:36Z","git_url":"git://github.com/learn-co-curriculum/objc-palindrome-inspector.git","ssh_url":"git@github.com:learn-co-curriculum/objc-palindrome-inspector.git","clone_url":"https://github.com/learn-co-curriculum/objc-palindrome-inspector.git","svn_url":"https://github.com/learn-co-curriculum/objc-palindrome-inspector","homepage":null,"size":468,"stargazers_count":0,"watchers_count":0,"language":"Objective-C","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":1,"forks":0,"open_issues":1,"watchers":0,"default_branch":"master"}},"base":{"label":"learn-co-curriculum:master","ref":"master","sha":"d2a39e4dd94b8fc393e373d216f84cb9fe9abb5f","user":{"login":"learn-co-curriculum","id":6208017,"avatar_url":"https://avatars.githubusercontent.com/u/6208017?v=3","gravatar_id":"","url":"https://api.github.com/users/learn-co-curriculum","html_url":"https://github.com/learn-co-curriculum","followers_url":"https://api.github.com/users/learn-co-curriculum/followers","following_url":"https://api.github.com/users/learn-co-curriculum/following{/other_user}","gists_url":"https://api.github.com/users/learn-co-curriculum/gists{/gist_id}","starred_url":"https://api.github.com/users/learn-co-curriculum/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/learn-co-curriculum/subscriptions","organizations_url":"https://api.github.com/users/learn-co-curriculum/orgs","repos_url":"https://api.github.com/users/learn-co-curriculum/repos","events_url":"https://api.github.com/users/learn-co-curriculum/events{/privacy}","received_events_url":"https://api.github.com/users/learn-co-curriculum/received_events","type":"Organization","site_admin":false},"repo":{"id":42548455,"name":"objc-palindrome-inspector","full_name":"learn-co-curriculum/objc-palindrome-inspector","owner":{"login":"learn-co-curriculum","id":6208017,"avatar_url":"https://avatars.githubusercontent.com/u/6208017?v=3","gravatar_id":"","url":"https://api.github.com/users/learn-co-curriculum","html_url":"https://github.com/learn-co-curriculum","followers_url":"https://api.github.com/users/learn-co-curriculum/followers","following_url":"https://api.github.com/users/learn-co-curriculum/following{/other_user}","gists_url":"https://api.github.com/users/learn-co-curriculum/gists{/gist_id}","starred_url":"https://api.github.com/users/learn-co-curriculum/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/learn-co-curriculum/subscriptions","organizations_url":"https://api.github.com/users/learn-co-curriculum/orgs","repos_url":"https://api.github.com/users/learn-co-curriculum/repos","events_url":"https://api.github.com/users/learn-co-curriculum/events{/privacy}","received_events_url":"https://api.github.com/users/learn-co-curriculum/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/learn-co-curriculum/objc-palindrome-inspector","description":"","fork":false,"url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector","forks_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/forks","keys_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/keys{/key_id}","collaborators_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/teams","hooks_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/hooks","issue_events_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/issues/events{/number}","events_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/events","assignees_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/assignees{/user}","branches_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/branches{/branch}","tags_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/tags","blobs_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/git/refs{/sha}","trees_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/git/trees{/sha}","statuses_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/statuses/{sha}","languages_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/languages","stargazers_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/stargazers","contributors_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/contributors","subscribers_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/subscribers","subscription_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/subscription","commits_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/commits{/sha}","git_commits_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/git/commits{/sha}","comments_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/comments{/number}","issue_comment_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/issues/comments{/number}","contents_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/contents/{+path}","compare_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/compare/{base}...{head}","merges_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/merges","archive_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/downloads","issues_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/issues{/number}","pulls_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/pulls{/number}","milestones_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/milestones{/number}","notifications_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/labels{/name}","releases_url":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/releases{/id}","created_at":"2015-09-15T21:45:56Z","updated_at":"2015-09-15T21:46:12Z","pushed_at":"2015-09-23T14:22:36Z","git_url":"git://github.com/learn-co-curriculum/objc-palindrome-inspector.git","ssh_url":"git@github.com:learn-co-curriculum/objc-palindrome-inspector.git","clone_url":"https://github.com/learn-co-curriculum/objc-palindrome-inspector.git","svn_url":"https://github.com/learn-co-curriculum/objc-palindrome-inspector","homepage":null,"size":468,"stargazers_count":0,"watchers_count":0,"language":"Objective-C","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":1,"forks":0,"open_issues":1,"watchers":0,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/pulls/1"},"html":{"href":"https://github.com/learn-co-curriculum/objc-palindrome-inspector/pull/1"},"issue":{"href":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/issues/1"},"comments":{"href":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/issues/1/comments"},"review_comments":{"href":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/pulls/1/comments"},"review_comment":{"href":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/pulls/1/commits"},"statuses":{"href":"https://api.github.com/repos/learn-co-curriculum/objc-palindrome-inspector/statuses/882871eff9c24ecbf517313cf4d1ef6375c00c5e"}}}}