Skip to content

Commit fa74a7c

Browse files
abs8090cbaker6
andauthored
added Twitter and Facebook login (#97)
* added Twitter and Facebook login * added the new features to CHANGELOG.md file * added the new features to CHANGELOG.md file * added Facebook graph API login, updated Twitter login * Fix errors due to merge and add merge testcases * remove SwiftLint from ci * Apply suggestions from code review accepted all suggested changes Co-authored-by: Corey <[email protected]> * Add more missing tests * remove extra throw and increase codecov * Switch twitterId to userId. Add the rest of the test cases * fix swiftlint warnnings * Merge main branch and nits * nits * Make twitter screen name optional Co-authored-by: Corey's iMac <[email protected]>
1 parent 403a02b commit fa74a7c

File tree

10 files changed

+3094
-2
lines changed

10 files changed

+3094
-2
lines changed

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@
44
[Full Changelog](https://github.com/parse-community/Parse-Swift/compare/1.2.1...main)
55
* _Contributing to this repo? Add info about your change here to be included in the next release_
66

7+
__New features__
8+
- Add ParseTwitter and ParseFacebook authentication ([#97](https://github.com/parse-community/Parse-Swift/pull/97)), thanks to [Abdulaziz Alhomaidhi](https://github.com/abs8090).
9+
710
### 1.2.1
811
[Full Changelog](https://github.com/parse-community/Parse-Swift/compare/1.2.0...1.2.1)
912

ParseSwift.xcodeproj/project.pbxproj

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -312,6 +312,26 @@
312312
7FFF552E2217E72A007C3B4E /* AnyEncodableTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7FFF552B2217E729007C3B4E /* AnyEncodableTests.swift */; };
313313
7FFF552F2217E72A007C3B4E /* AnyCodableTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7FFF552C2217E729007C3B4E /* AnyCodableTests.swift */; };
314314
7FFF55302217E72A007C3B4E /* AnyDecodableTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7FFF552D2217E729007C3B4E /* AnyDecodableTests.swift */; };
315+
89899CCF2603CE3A002E2043 /* ParseFacebook.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89899CCE2603CE3A002E2043 /* ParseFacebook.swift */; };
316+
89899CD02603CE3A002E2043 /* ParseFacebook.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89899CCE2603CE3A002E2043 /* ParseFacebook.swift */; };
317+
89899CD12603CE3A002E2043 /* ParseFacebook.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89899CCE2603CE3A002E2043 /* ParseFacebook.swift */; };
318+
89899CD22603CE3A002E2043 /* ParseFacebook.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89899CCE2603CE3A002E2043 /* ParseFacebook.swift */; };
319+
89899D282603CF35002E2043 /* ParseTwitter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89899CC02603CE2A002E2043 /* ParseTwitter.swift */; };
320+
89899D322603CF35002E2043 /* ParseTwitter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89899CC02603CE2A002E2043 /* ParseTwitter.swift */; };
321+
89899D332603CF36002E2043 /* ParseTwitter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89899CC02603CE2A002E2043 /* ParseTwitter.swift */; };
322+
89899D342603CF36002E2043 /* ParseTwitter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89899CC02603CE2A002E2043 /* ParseTwitter.swift */; };
323+
89899D592603CF3E002E2043 /* ParseTwitterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89899CDC2603CE73002E2043 /* ParseTwitterTests.swift */; };
324+
89899D632603CF3E002E2043 /* ParseTwitterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89899CDC2603CE73002E2043 /* ParseTwitterTests.swift */; };
325+
89899D642603CF3F002E2043 /* ParseTwitterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89899CDC2603CE73002E2043 /* ParseTwitterTests.swift */; };
326+
89899D772603CF66002E2043 /* ParseFacebookTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89899CF32603CE9D002E2043 /* ParseFacebookTests.swift */; };
327+
89899D812603CF67002E2043 /* ParseFacebookTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89899CF32603CE9D002E2043 /* ParseFacebookTests.swift */; };
328+
89899D822603CF67002E2043 /* ParseFacebookTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89899CF32603CE9D002E2043 /* ParseFacebookTests.swift */; };
329+
89899D9F26045998002E2043 /* ParseTwitterCombineTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89899D9E26045998002E2043 /* ParseTwitterCombineTests.swift */; };
330+
89899DA026045998002E2043 /* ParseTwitterCombineTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89899D9E26045998002E2043 /* ParseTwitterCombineTests.swift */; };
331+
89899DA126045998002E2043 /* ParseTwitterCombineTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89899D9E26045998002E2043 /* ParseTwitterCombineTests.swift */; };
332+
89899DB526045DC4002E2043 /* ParseFacebookCombineTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89899DB426045DC4002E2043 /* ParseFacebookCombineTests.swift */; };
333+
89899DB626045DC4002E2043 /* ParseFacebookCombineTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89899DB426045DC4002E2043 /* ParseFacebookCombineTests.swift */; };
334+
89899DB726045DC4002E2043 /* ParseFacebookCombineTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89899DB426045DC4002E2043 /* ParseFacebookCombineTests.swift */; };
315335
911DB12C24C3F7720027F3C7 /* MockURLResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 911DB12B24C3F7720027F3C7 /* MockURLResponse.swift */; };
316336
911DB12E24C4837E0027F3C7 /* APICommandTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 911DB12D24C4837E0027F3C7 /* APICommandTests.swift */; };
317337
911DB13324C494390027F3C7 /* MockURLProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 911DB13224C494390027F3C7 /* MockURLProtocol.swift */; };
@@ -614,6 +634,12 @@
614634
7FFF552B2217E729007C3B4E /* AnyEncodableTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AnyEncodableTests.swift; sourceTree = "<group>"; };
615635
7FFF552C2217E729007C3B4E /* AnyCodableTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AnyCodableTests.swift; sourceTree = "<group>"; };
616636
7FFF552D2217E729007C3B4E /* AnyDecodableTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AnyDecodableTests.swift; sourceTree = "<group>"; };
637+
89899CC02603CE2A002E2043 /* ParseTwitter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ParseTwitter.swift; sourceTree = "<group>"; };
638+
89899CCE2603CE3A002E2043 /* ParseFacebook.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ParseFacebook.swift; sourceTree = "<group>"; };
639+
89899CDC2603CE73002E2043 /* ParseTwitterTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ParseTwitterTests.swift; sourceTree = "<group>"; };
640+
89899CF32603CE9D002E2043 /* ParseFacebookTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ParseFacebookTests.swift; sourceTree = "<group>"; };
641+
89899D9E26045998002E2043 /* ParseTwitterCombineTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ParseTwitterCombineTests.swift; sourceTree = "<group>"; };
642+
89899DB426045DC4002E2043 /* ParseFacebookCombineTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ParseFacebookCombineTests.swift; sourceTree = "<group>"; };
617643
911DB12B24C3F7720027F3C7 /* MockURLResponse.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MockURLResponse.swift; sourceTree = "<group>"; };
618644
911DB12D24C4837E0027F3C7 /* APICommandTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = APICommandTests.swift; sourceTree = "<group>"; };
619645
911DB13224C494390027F3C7 /* MockURLProtocol.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MockURLProtocol.swift; sourceTree = "<group>"; };
@@ -791,6 +817,8 @@
791817
7044C21F25C5E0160011F6E7 /* ParseConfigCombineTests.swift */,
792818
70D1BE0625BB2BF400A42E7C /* ParseConfigTests.swift */,
793819
F971F4F524DE381A006CB79B /* ParseEncoderTests.swift */,
820+
89899DB426045DC4002E2043 /* ParseFacebookCombineTests.swift */,
821+
89899CF32603CE9D002E2043 /* ParseFacebookTests.swift */,
794822
7044C1F825C5CFAB0011F6E7 /* ParseFileCombineTests.swift */,
795823
705A99F8259807F900B3547F /* ParseFileManagerTests.swift */,
796824
705727882593FF8000F0ADD5 /* ParseFileTests.swift */,
@@ -811,6 +839,8 @@
811839
70D1BD8625B8C37200A42E7C /* ParseRelationTests.swift */,
812840
7004C22D25B69077005E0AD9 /* ParseRoleTests.swift */,
813841
70C5504525B40D5200B5DBC2 /* ParseSessionTests.swift */,
842+
89899D9E26045998002E2043 /* ParseTwitterCombineTests.swift */,
843+
89899CDC2603CE73002E2043 /* ParseTwitterTests.swift */,
814844
7016ED3F25C4A25A00038648 /* ParseUserCombineTests.swift */,
815845
70C7DC1D24D20E530050419B /* ParseUserTests.swift */,
816846
7FFF552A2217E729007C3B4E /* AnyCodableTests */,
@@ -984,6 +1014,8 @@
9841014
children = (
9851015
707A3C1F25B14BCF000D215C /* ParseApple.swift */,
9861016
70386A3725D998D90048EC1B /* ParseLDAP.swift */,
1017+
89899CC02603CE2A002E2043 /* ParseTwitter.swift */,
1018+
89899CCE2603CE3A002E2043 /* ParseFacebook.swift */,
9871019
);
9881020
path = "3rd Party";
9891021
sourceTree = "<group>";
@@ -1562,7 +1594,9 @@
15621594
70C550A025B4A9F600B5DBC2 /* RemoveRelation.swift in Sources */,
15631595
F97B463B24D9C74400F4A88B /* API+Commands.swift in Sources */,
15641596
F97B464624D9C78B00F4A88B /* ParseOperation.swift in Sources */,
1597+
89899CCF2603CE3A002E2043 /* ParseFacebook.swift in Sources */,
15651598
705A9A2F25991C1400B3547F /* Fileable.swift in Sources */,
1599+
89899D342603CF36002E2043 /* ParseTwitter.swift in Sources */,
15661600
F97B464A24D9C78B00F4A88B /* Delete.swift in Sources */,
15671601
70647E8E259E3375004C1004 /* LocallyIdentifiable.swift in Sources */,
15681602
F97B460624D9C6F200F4A88B /* ParseUser.swift in Sources */,
@@ -1621,12 +1655,15 @@
16211655
buildActionMask = 2147483647;
16221656
files = (
16231657
911DB13624C4FC100027F3C7 /* ParseObjectTests.swift in Sources */,
1658+
89899D592603CF3E002E2043 /* ParseTwitterTests.swift in Sources */,
16241659
70CE1D892545BF730018D572 /* ParsePointerTests.swift in Sources */,
1660+
89899D772603CF66002E2043 /* ParseFacebookTests.swift in Sources */,
16251661
70386A4625D99C8B0048EC1B /* ParseLDAPTests.swift in Sources */,
16261662
911DB12E24C4837E0027F3C7 /* APICommandTests.swift in Sources */,
16271663
911DB12C24C3F7720027F3C7 /* MockURLResponse.swift in Sources */,
16281664
7044C24325C5EA360011F6E7 /* ParseAppleCombineTests.swift in Sources */,
16291665
7044C1DF25C5C70D0011F6E7 /* ParseObjectCombine.swift in Sources */,
1666+
89899D9F26045998002E2043 /* ParseTwitterCombineTests.swift in Sources */,
16301667
70C5504625B40D5200B5DBC2 /* ParseSessionTests.swift in Sources */,
16311668
70110D5C2506ED0E0091CC1D /* ParseInstallationTests.swift in Sources */,
16321669
7016ED4025C4A25A00038648 /* ParseUserCombineTests.swift in Sources */,
@@ -1650,6 +1687,7 @@
16501687
4AA807701F794C31008CD551 /* KeychainStoreTests.swift in Sources */,
16511688
7044C1F925C5CFAB0011F6E7 /* ParseFileCombineTests.swift in Sources */,
16521689
70C5502225B3D8F700B5DBC2 /* ParseAppleTests.swift in Sources */,
1690+
89899DB526045DC4002E2043 /* ParseFacebookCombineTests.swift in Sources */,
16531691
F971F4F624DE381A006CB79B /* ParseEncoderTests.swift in Sources */,
16541692
70C7DC2124D20F190050419B /* ParseQueryTests.swift in Sources */,
16551693
7044C22D25C5E4E90011F6E7 /* ParseAnonymousCombineTests.swift in Sources */,
@@ -1697,7 +1735,9 @@
16971735
70C550A125B4A9F600B5DBC2 /* RemoveRelation.swift in Sources */,
16981736
F97B463C24D9C74400F4A88B /* API+Commands.swift in Sources */,
16991737
F97B464724D9C78B00F4A88B /* ParseOperation.swift in Sources */,
1738+
89899CD02603CE3A002E2043 /* ParseFacebook.swift in Sources */,
17001739
705A9A3025991C1400B3547F /* Fileable.swift in Sources */,
1740+
89899D332603CF36002E2043 /* ParseTwitter.swift in Sources */,
17011741
F97B464B24D9C78B00F4A88B /* Delete.swift in Sources */,
17021742
70647E8F259E3375004C1004 /* LocallyIdentifiable.swift in Sources */,
17031743
F97B460724D9C6F200F4A88B /* ParseUser.swift in Sources */,
@@ -1765,12 +1805,15 @@
17651805
buildActionMask = 2147483647;
17661806
files = (
17671807
709B98512556ECAA00507778 /* ParseEncoderTests.swift in Sources */,
1808+
89899D642603CF3F002E2043 /* ParseTwitterTests.swift in Sources */,
17681809
709B98532556ECAA00507778 /* ParsePointerTests.swift in Sources */,
1810+
89899D822603CF67002E2043 /* ParseFacebookTests.swift in Sources */,
17691811
70386A4825D99C8B0048EC1B /* ParseLDAPTests.swift in Sources */,
17701812
709B984C2556ECAA00507778 /* APICommandTests.swift in Sources */,
17711813
709B984D2556ECAA00507778 /* AnyDecodableTests.swift in Sources */,
17721814
7044C24525C5EA360011F6E7 /* ParseAppleCombineTests.swift in Sources */,
17731815
7044C1E125C5C70D0011F6E7 /* ParseObjectCombine.swift in Sources */,
1816+
89899DA126045998002E2043 /* ParseTwitterCombineTests.swift in Sources */,
17741817
70C5504825B40D5200B5DBC2 /* ParseSessionTests.swift in Sources */,
17751818
709B98572556ECAA00507778 /* ParseACLTests.swift in Sources */,
17761819
7016ED4225C4A25A00038648 /* ParseUserCombineTests.swift in Sources */,
@@ -1794,6 +1837,7 @@
17941837
709B98552556ECAA00507778 /* ParseQueryTests.swift in Sources */,
17951838
7044C1FB25C5CFAB0011F6E7 /* ParseFileCombineTests.swift in Sources */,
17961839
70C5502425B3D8F700B5DBC2 /* ParseAppleTests.swift in Sources */,
1840+
89899DB726045DC4002E2043 /* ParseFacebookCombineTests.swift in Sources */,
17971841
709B98502556ECAA00507778 /* KeychainStoreTests.swift in Sources */,
17981842
709B98562556ECAA00507778 /* ParseObjectTests.swift in Sources */,
17991843
7044C22F25C5E4E90011F6E7 /* ParseAnonymousCombineTests.swift in Sources */,
@@ -1814,12 +1858,15 @@
18141858
buildActionMask = 2147483647;
18151859
files = (
18161860
70F2E2B6254F283000B2EA5C /* ParseACLTests.swift in Sources */,
1861+
89899D632603CF3E002E2043 /* ParseTwitterTests.swift in Sources */,
18171862
70F2E2B7254F283000B2EA5C /* ParsePointerTests.swift in Sources */,
1863+
89899D812603CF67002E2043 /* ParseFacebookTests.swift in Sources */,
18181864
70386A4725D99C8B0048EC1B /* ParseLDAPTests.swift in Sources */,
18191865
70F2E2B5254F283000B2EA5C /* ParseEncoderTests.swift in Sources */,
18201866
70F2E2C2254F283000B2EA5C /* APICommandTests.swift in Sources */,
18211867
7044C24425C5EA360011F6E7 /* ParseAppleCombineTests.swift in Sources */,
18221868
7044C1E025C5C70D0011F6E7 /* ParseObjectCombine.swift in Sources */,
1869+
89899DA026045998002E2043 /* ParseTwitterCombineTests.swift in Sources */,
18231870
70C5504725B40D5200B5DBC2 /* ParseSessionTests.swift in Sources */,
18241871
70F2E2BC254F283000B2EA5C /* ParseObjectTests.swift in Sources */,
18251872
7016ED4125C4A25A00038648 /* ParseUserCombineTests.swift in Sources */,
@@ -1843,6 +1890,7 @@
18431890
70F2E2BF254F283000B2EA5C /* MockURLProtocol.swift in Sources */,
18441891
7044C1FA25C5CFAB0011F6E7 /* ParseFileCombineTests.swift in Sources */,
18451892
70C5502325B3D8F700B5DBC2 /* ParseAppleTests.swift in Sources */,
1893+
89899DB626045DC4002E2043 /* ParseFacebookCombineTests.swift in Sources */,
18461894
70F2E2BB254F283000B2EA5C /* ParseGeoPointTests.swift in Sources */,
18471895
70F2E2B8254F283000B2EA5C /* AnyEncodableTests.swift in Sources */,
18481896
7044C22E25C5E4E90011F6E7 /* ParseAnonymousCombineTests.swift in Sources */,
@@ -1890,7 +1938,9 @@
18901938
70C550A325B4A9F600B5DBC2 /* RemoveRelation.swift in Sources */,
18911939
F97B460D24D9C6F200F4A88B /* Fetchable.swift in Sources */,
18921940
F97B45ED24D9C6F200F4A88B /* ParseGeoPoint.swift in Sources */,
1941+
89899CD22603CE3A002E2043 /* ParseFacebook.swift in Sources */,
18931942
705A9A3225991C1400B3547F /* Fileable.swift in Sources */,
1943+
89899D282603CF35002E2043 /* ParseTwitter.swift in Sources */,
18941944
F97B45F524D9C6F200F4A88B /* Pointer.swift in Sources */,
18951945
70647E91259E3375004C1004 /* LocallyIdentifiable.swift in Sources */,
18961946
F97B460924D9C6F200F4A88B /* ParseUser.swift in Sources */,
@@ -1976,7 +2026,9 @@
19762026
70C550A225B4A9F600B5DBC2 /* RemoveRelation.swift in Sources */,
19772027
F97B460C24D9C6F200F4A88B /* Fetchable.swift in Sources */,
19782028
F97B45EC24D9C6F200F4A88B /* ParseGeoPoint.swift in Sources */,
2029+
89899CD12603CE3A002E2043 /* ParseFacebook.swift in Sources */,
19792030
705A9A3125991C1400B3547F /* Fileable.swift in Sources */,
2031+
89899D322603CF35002E2043 /* ParseTwitter.swift in Sources */,
19802032
F97B45F424D9C6F200F4A88B /* Pointer.swift in Sources */,
19812033
70647E90259E3375004C1004 /* LocallyIdentifiable.swift in Sources */,
19822034
F97B460824D9C6F200F4A88B /* ParseUser.swift in Sources */,

0 commit comments

Comments
 (0)