{"action":"created","comment":{"url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/pulls/comments/24374821","id":24374821,"diff_hunk":"@@ -0,0 +1,35 @@\n+﻿using DDDEastAnglia.Helpers.AppSettings;\n+using DDDEastAnglia.Helpers.LoginMethods;\n+using NSubstitute;\n+using NUnit.Framework;\n+\n+namespace DDDEastAnglia.Tests.Helpers.LoginMethods\n+{\n+    [TestFixture]\n+    public sealed class LoginMethodIconProviderTests\n+    {\n+        [Test]\n+        public void GetIcon_ReturnsTheConfiguredIconForOAuthProvider()\n+        {\n+            var appSettingsProvider = Substitute.For<IAppSettingsProvider>();\n+            appSettingsProvider.GetSetting(LoginMethodIconProvider.AppSettingsKeyPrefix + \"test\").Returns(\"test-icon\");","path":"DDDEastAnglia.Tests/Helpers/LoginMethods/LoginMethodIconProviderTests.cs","position":15,"original_position":15,"commit_id":"8244f7956bbfd9ec8aff1afaebf1f2378ad88e3f","original_commit_id":"e5de0cdec6a67d919b60694357c92b7be011a1a6","user":{"login":"alastairs","id":52957,"avatar_url":"https://avatars.githubusercontent.com/u/52957?v=3","gravatar_id":"","url":"https://api.github.com/users/alastairs","html_url":"https://github.com/alastairs","followers_url":"https://api.github.com/users/alastairs/followers","following_url":"https://api.github.com/users/alastairs/following{/other_user}","gists_url":"https://api.github.com/users/alastairs/gists{/gist_id}","starred_url":"https://api.github.com/users/alastairs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alastairs/subscriptions","organizations_url":"https://api.github.com/users/alastairs/orgs","repos_url":"https://api.github.com/users/alastairs/repos","events_url":"https://api.github.com/users/alastairs/events{/privacy}","received_events_url":"https://api.github.com/users/alastairs/received_events","type":"User","site_admin":false},"body":"Furthermore, it wasn't until I actually saw it in the config file that I realised that this didn't feel right to me: appSettings is intended for configuration data; the icon associated with a login method isn't configuration data, it's just a user display thing. Enabling/disabling a login method - ok for appSettings; defining how a login method should be displayed to the user - not ok for appSettings. ","created_at":"2015-02-09T23:07:01Z","updated_at":"2015-02-09T23:07:01Z","html_url":"https://github.com/dddeastanglia/DDDEastAnglia/pull/324#discussion_r24374821","pull_request_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/pulls/324","_links":{"self":{"href":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/pulls/comments/24374821"},"html":{"href":"https://github.com/dddeastanglia/DDDEastAnglia/pull/324#discussion_r24374821"},"pull_request":{"href":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/pulls/324"}}},"pull_request":{"url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/pulls/324","id":26039211,"html_url":"https://github.com/dddeastanglia/DDDEastAnglia/pull/324","diff_url":"https://github.com/dddeastanglia/DDDEastAnglia/pull/324.diff","patch_url":"https://github.com/dddeastanglia/DDDEastAnglia/pull/324.patch","issue_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/issues/324","number":324,"state":"open","locked":false,"title":"Refactor of the external logins ","user":{"login":"adrianbanks","id":494732,"avatar_url":"https://avatars.githubusercontent.com/u/494732?v=3","gravatar_id":"","url":"https://api.github.com/users/adrianbanks","html_url":"https://github.com/adrianbanks","followers_url":"https://api.github.com/users/adrianbanks/followers","following_url":"https://api.github.com/users/adrianbanks/following{/other_user}","gists_url":"https://api.github.com/users/adrianbanks/gists{/gist_id}","starred_url":"https://api.github.com/users/adrianbanks/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/adrianbanks/subscriptions","organizations_url":"https://api.github.com/users/adrianbanks/orgs","repos_url":"https://api.github.com/users/adrianbanks/repos","events_url":"https://api.github.com/users/adrianbanks/events{/privacy}","received_events_url":"https://api.github.com/users/adrianbanks/received_events","type":"User","site_admin":false},"body":"Had this branch lying around for a while. The changes decouple the OAuth web security stuff from our code, and also allow the icons for the OAuth providers to be configured in the app settings.","created_at":"2014-12-14T21:14:17Z","updated_at":"2015-02-09T23:07:01Z","closed_at":null,"merged_at":null,"merge_commit_sha":"d6bd139c6c0e071d550ece1b36417f5daa424d64","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/pulls/324/commits","review_comments_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/pulls/324/comments","review_comment_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/pulls/comments/{number}","comments_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/issues/324/comments","statuses_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/statuses/8244f7956bbfd9ec8aff1afaebf1f2378ad88e3f","head":{"label":"adrianbanks:external-login-providers-refactoring","ref":"external-login-providers-refactoring","sha":"8244f7956bbfd9ec8aff1afaebf1f2378ad88e3f","user":{"login":"adrianbanks","id":494732,"avatar_url":"https://avatars.githubusercontent.com/u/494732?v=3","gravatar_id":"","url":"https://api.github.com/users/adrianbanks","html_url":"https://github.com/adrianbanks","followers_url":"https://api.github.com/users/adrianbanks/followers","following_url":"https://api.github.com/users/adrianbanks/following{/other_user}","gists_url":"https://api.github.com/users/adrianbanks/gists{/gist_id}","starred_url":"https://api.github.com/users/adrianbanks/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/adrianbanks/subscriptions","organizations_url":"https://api.github.com/users/adrianbanks/orgs","repos_url":"https://api.github.com/users/adrianbanks/repos","events_url":"https://api.github.com/users/adrianbanks/events{/privacy}","received_events_url":"https://api.github.com/users/adrianbanks/received_events","type":"User","site_admin":false},"repo":{"id":8860345,"name":"dddeastanglia","full_name":"adrianbanks/dddeastanglia","owner":{"login":"adrianbanks","id":494732,"avatar_url":"https://avatars.githubusercontent.com/u/494732?v=3","gravatar_id":"","url":"https://api.github.com/users/adrianbanks","html_url":"https://github.com/adrianbanks","followers_url":"https://api.github.com/users/adrianbanks/followers","following_url":"https://api.github.com/users/adrianbanks/following{/other_user}","gists_url":"https://api.github.com/users/adrianbanks/gists{/gist_id}","starred_url":"https://api.github.com/users/adrianbanks/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/adrianbanks/subscriptions","organizations_url":"https://api.github.com/users/adrianbanks/orgs","repos_url":"https://api.github.com/users/adrianbanks/repos","events_url":"https://api.github.com/users/adrianbanks/events{/privacy}","received_events_url":"https://api.github.com/users/adrianbanks/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/adrianbanks/dddeastanglia","description":"DDD East Anglia website","fork":true,"url":"https://api.github.com/repos/adrianbanks/dddeastanglia","forks_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/forks","keys_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/keys{/key_id}","collaborators_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/teams","hooks_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/hooks","issue_events_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/issues/events{/number}","events_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/events","assignees_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/assignees{/user}","branches_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/branches{/branch}","tags_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/tags","blobs_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/git/refs{/sha}","trees_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/git/trees{/sha}","statuses_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/statuses/{sha}","languages_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/languages","stargazers_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/stargazers","contributors_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/contributors","subscribers_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/subscribers","subscription_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/subscription","commits_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/commits{/sha}","git_commits_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/git/commits{/sha}","comments_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/comments{/number}","issue_comment_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/issues/comments/{number}","contents_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/contents/{+path}","compare_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/compare/{base}...{head}","merges_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/merges","archive_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/downloads","issues_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/issues{/number}","pulls_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/pulls{/number}","milestones_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/milestones{/number}","notifications_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/labels{/name}","releases_url":"https://api.github.com/repos/adrianbanks/dddeastanglia/releases{/id}","created_at":"2013-03-18T17:52:18Z","updated_at":"2014-12-17T00:17:57Z","pushed_at":"2015-02-05T22:58:40Z","git_url":"git://github.com/adrianbanks/dddeastanglia.git","ssh_url":"git@github.com:adrianbanks/dddeastanglia.git","clone_url":"https://github.com/adrianbanks/dddeastanglia.git","svn_url":"https://github.com/adrianbanks/dddeastanglia","homepage":"","size":23909,"stargazers_count":0,"watchers_count":0,"language":"C#","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"production"}},"base":{"label":"dddeastanglia:staging","ref":"staging","sha":"ff7921974b0543896624520872b9fde677915f6c","user":{"login":"dddeastanglia","id":4063824,"avatar_url":"https://avatars.githubusercontent.com/u/4063824?v=3","gravatar_id":"","url":"https://api.github.com/users/dddeastanglia","html_url":"https://github.com/dddeastanglia","followers_url":"https://api.github.com/users/dddeastanglia/followers","following_url":"https://api.github.com/users/dddeastanglia/following{/other_user}","gists_url":"https://api.github.com/users/dddeastanglia/gists{/gist_id}","starred_url":"https://api.github.com/users/dddeastanglia/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dddeastanglia/subscriptions","organizations_url":"https://api.github.com/users/dddeastanglia/orgs","repos_url":"https://api.github.com/users/dddeastanglia/repos","events_url":"https://api.github.com/users/dddeastanglia/events{/privacy}","received_events_url":"https://api.github.com/users/dddeastanglia/received_events","type":"Organization","site_admin":false},"repo":{"id":8186213,"name":"DDDEastAnglia","full_name":"dddeastanglia/DDDEastAnglia","owner":{"login":"dddeastanglia","id":4063824,"avatar_url":"https://avatars.githubusercontent.com/u/4063824?v=3","gravatar_id":"","url":"https://api.github.com/users/dddeastanglia","html_url":"https://github.com/dddeastanglia","followers_url":"https://api.github.com/users/dddeastanglia/followers","following_url":"https://api.github.com/users/dddeastanglia/following{/other_user}","gists_url":"https://api.github.com/users/dddeastanglia/gists{/gist_id}","starred_url":"https://api.github.com/users/dddeastanglia/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dddeastanglia/subscriptions","organizations_url":"https://api.github.com/users/dddeastanglia/orgs","repos_url":"https://api.github.com/users/dddeastanglia/repos","events_url":"https://api.github.com/users/dddeastanglia/events{/privacy}","received_events_url":"https://api.github.com/users/dddeastanglia/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/dddeastanglia/DDDEastAnglia","description":"DDD East Anglia website","fork":false,"url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia","forks_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/forks","keys_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/keys{/key_id}","collaborators_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/teams","hooks_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/hooks","issue_events_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/issues/events{/number}","events_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/events","assignees_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/assignees{/user}","branches_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/branches{/branch}","tags_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/tags","blobs_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/git/refs{/sha}","trees_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/git/trees{/sha}","statuses_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/statuses/{sha}","languages_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/languages","stargazers_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/stargazers","contributors_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/contributors","subscribers_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/subscribers","subscription_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/subscription","commits_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/commits{/sha}","git_commits_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/git/commits{/sha}","comments_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/comments{/number}","issue_comment_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/issues/comments/{number}","contents_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/contents/{+path}","compare_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/compare/{base}...{head}","merges_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/merges","archive_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/downloads","issues_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/issues{/number}","pulls_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/pulls{/number}","milestones_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/milestones{/number}","notifications_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/labels{/name}","releases_url":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/releases{/id}","created_at":"2013-02-13T19:38:26Z","updated_at":"2015-02-05T22:51:32Z","pushed_at":"2015-02-05T22:59:35Z","git_url":"git://github.com/dddeastanglia/DDDEastAnglia.git","ssh_url":"git@github.com:dddeastanglia/DDDEastAnglia.git","clone_url":"https://github.com/dddeastanglia/DDDEastAnglia.git","svn_url":"https://github.com/dddeastanglia/DDDEastAnglia","homepage":"","size":25025,"stargazers_count":3,"watchers_count":3,"language":"C#","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":5,"mirror_url":null,"open_issues_count":31,"forks":5,"open_issues":31,"watchers":3,"default_branch":"staging"}},"_links":{"self":{"href":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/pulls/324"},"html":{"href":"https://github.com/dddeastanglia/DDDEastAnglia/pull/324"},"issue":{"href":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/issues/324"},"comments":{"href":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/issues/324/comments"},"review_comments":{"href":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/pulls/324/comments"},"review_comment":{"href":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/pulls/comments/{number}"},"commits":{"href":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/pulls/324/commits"},"statuses":{"href":"https://api.github.com/repos/dddeastanglia/DDDEastAnglia/statuses/8244f7956bbfd9ec8aff1afaebf1f2378ad88e3f"}}}}