Commit graph

167 commits

Author SHA1 Message Date
Benjamin Neff
aa84c4c40e move Receiver to Federation module 2016-01-11 02:30:32 +01:00
Benjamin Neff
0917fc2f19 allow photo.status_message_guid to be nil 2016-01-10 19:05:54 +01:00
Benjamin Neff
cf45416344 allow guid to be nilable 2016-01-10 18:55:32 +01:00
Benjamin Neff
127b603558 return 202 after receive 2015-12-30 03:45:18 +01:00
Benjamin Neff
7ed848c2f5 add ostatus subscribe-url to webfinger 2015-12-27 22:19:58 +01:00
Benjamin Neff
9f67cade7e fix factories with spring 2015-12-27 22:19:58 +01:00
cmrd Senya
a0545c37de Allow parent entity types different than "Post"
Entities::Message requires "Conversation" at the place, for instance.
2015-12-21 14:05:42 +03:00
Benjamin Neff
358e844772 cleanup for rubocop 2015-12-19 17:31:53 +01:00
Benjamin Neff
35429d105b write tests for unescape 2015-12-19 17:15:52 +01:00
Benjamin Neff
c7446f7220 refactor receive classes 2015-12-18 00:42:41 +01:00
Benjamin Neff
4dc34b54e3 enable routes for receive 2015-12-18 00:14:03 +01:00
Benjamin Neff
b56c1e2d04 send xml to callbacks to queue it for receive 2015-12-18 00:11:32 +01:00
cmrd Senya
5aac8c2423 Receiving entities support 2015-12-15 19:06:51 +03:00
cmrd Senya
6615e67d80 Enable persistance file for rspec 2015-12-14 11:00:28 +03:00
Benjamin Neff
73fab4d01c add more documentation 2015-12-13 01:22:17 +01:00
cmrd Senya
91376a3e26 Retractions signatures support 2015-12-03 00:15:32 +03:00
Benjamin Neff
06695610dd write tests to have 100% coverage again 2015-11-30 00:28:20 +01:00
Benjamin Neff
9d999918e5 make entities more consistent 2015-11-29 23:50:44 +01:00
cmrd Senya
64608e7869 Introduce diaspora_federation-test gem 2015-11-23 23:58:28 +03:00
cmrd Senya
91c3753019 Add signature computation for entities support 2015-11-22 23:40:46 +03:00
cmrd Senya
b9b5ee6f7d Do the same generalization for Relayable for validators taking
into account that "author_signature" and "parent_author_signature"
are allowed to be empty, actually.
2015-11-13 17:44:45 +03:00
cmrd Senya
fd1f896d17 Introduce the "Relayable" entity, which encapsulates common
properties of entities that are inherited from Relayable class
in the Diaspora source code - "parent_guid",
"parent_author_signature", "author_signature".
2015-11-13 16:43:36 +03:00
cmrd Senya
9fd2b048e6 Fixes that in the XmlPaylod rspec ".entity_class_name" was mistakenly
put inside the ".unpack" section
2015-11-11 17:07:20 +03:00
cmrd Senya
148300b329 Partly replace hard-coded hashes in specs with FactoryGirl.attributes_for 2015-11-07 15:58:47 +03:00
cmrd Senya
c9e641f3c5 Adding initialize_with to FactoryGirl config in previous commit allowed
to call FactoryGirl.build for entities, so use it wherever possible.
2015-11-07 15:58:47 +03:00
cmrd Senya
e8fa25c6a6 Add the Poll entity 2015-11-07 15:58:30 +03:00
cmrd Senya
b8b52fc60d - New and older specs adjustments;
- Move the specs to use FactoryGirl;
- Replace use of "context" in specs with "describe".
2015-11-06 01:51:20 +03:00
cmrd Senya
f12a4c21db Merge all the entities left from the @Raven24's gem.
These are: AccountDeletion, Comment, Conversation, Like, Message,
RelayableRetraction, Reshare, Retraction, SignedRetraction
2015-11-06 01:50:04 +03:00
cmrd Senya
761534f13c DRY specs more by introducing "a property with data-types restriction" shared behavior 2015-11-05 17:27:31 +03:00
cmrd Senya
9391d4b9eb Reduce the entity stubs initialization calls to a single entity_stub
to make the code more DRY
2015-11-03 01:23:10 +03:00
cmrd Senya
9cb6fe4d1b Some more code merged from the @Raven24's gem. The code is
related to the request, status_message, participation, photo and
location entities, its validators and tests for all of the things.
2015-11-03 00:39:30 +03:00
Benjamin Neff
d5041912f3 refactored shared_entity_specs.rb 2015-10-28 03:04:17 +01:00
Benjamin Neff
42e994e01e use xml_name when parsing an entity 2015-10-28 02:53:17 +01:00
Benjamin Neff
7f731e9af0 refactor salmon stuff
* fix rubocop issues
* remove duplicate code
* use `describe` in specs for methods
2015-10-26 23:50:31 +01:00
Benjamin Neff
1a3ba7e0fd Merge branch 'salmon' of github.com:SuperTux88/diaspora_federation into salmon 2015-10-25 01:22:17 +02:00
Benjamin Neff
60cf4ca64f refactoring AES part and add specs 2015-10-25 01:21:42 +02:00
cmrd Senya
79db753124 Add the request entity from the @Raven24's gem. 2015-10-24 15:43:20 +03:00
cmrd Senya
1801de3b52 Add StatusMessage related entities from the @Raven24's gem.
This makes the testbed pass with this gem.
2015-10-23 23:25:02 +03:00
Benjamin Neff
0848ada216 add more shared examples 2015-09-27 03:17:45 +02:00
Benjamin Neff
5a81d38e60 add salmon-classes (+tests) from raven24's gem
and do some basic refactorings for rubocop
2015-09-26 01:51:27 +02:00
Benjamin Neff
778a782c76 add exceptions for salmon stuff and move all to one file 2015-09-25 23:32:10 +02:00
Benjamin Neff
6838391cc9 refactored Entity.entity_name and XmlPayload.entity_class_name
write tests and simplified regexes.
2015-09-25 02:37:22 +02:00
Benjamin Neff
eb707c2592 add xml_payload (+tests) from raven24's gem
and do some basic refactorings for rubocop
2015-09-25 00:41:34 +02:00
Benjamin Neff
eabe1135ee fix some rubocop warnings
the last one will be fixed with the next rubocop release
2015-09-21 00:50:09 +02:00
Benjamin Neff
2f6acc8367 fix friendica parsing with acct URIs in aliases 2015-09-17 02:11:18 +02:00
Benjamin Neff
b748b255f1 add more specs again for optional urls 2015-09-16 03:01:46 +02:00
Benjamin Neff
c3e290465f make alias and salmon-url optional to support redmatrix 2015-09-16 02:53:44 +02:00
Benjamin Neff
b114973785 remove type constraint in host-meta to support friendica/redmatrix again 2015-09-16 02:08:33 +02:00
Benjamin Neff
4c9eac4699 remove unused nilable_uri rule (default uri rule is now nilable)
also use length rule instead of regex
2015-08-11 00:50:47 +02:00
Benjamin Neff
ad82caffda refactoring: fix some rubocop issues 2015-08-10 01:38:15 +02:00
Benjamin Neff
cb9b754faa allow certificate_authorities to be missing in test/development environment 2015-08-10 01:11:51 +02:00
Benjamin Neff
8c63655886 allow nil for diaspora_id in profile
refactor some tests
2015-08-06 02:21:49 +02:00
Benjamin Neff
311d6948e5 save person after fetch 2015-08-04 03:00:55 +02:00
Benjamin Neff
f4066f6105 rename callbacks 2015-08-04 02:09:14 +02:00
Benjamin Neff
7b3e6ad0c7 remove quotes from alias-url from old webfinger xml 2015-08-01 01:20:02 +02:00
Benjamin Neff
4dd7dd7c71 whitelist codeclimate.com in webmock so test coverage can be reported 2015-07-29 02:01:20 +02:00
Benjamin Neff
2b8aad766d add entities tests and shared examples for entities 2015-07-29 01:48:50 +02:00
Benjamin Neff
fe704fb981 add webfinger and hcard validators 2015-07-28 02:06:46 +02:00
Benjamin Neff
c15fee279c extend profile validator 2015-07-28 02:06:46 +02:00
Benjamin Neff
416f322cc7 rename new URI validator to NilableURI and extend existing URI validator 2015-07-28 00:40:04 +02:00
Benjamin Neff
c1e700d560 add own URI validation rule that allows nil 2015-07-27 03:47:56 +02:00
Benjamin Neff
d7a5e71ce6 refactor shared examples and use more of them 2015-07-27 01:38:11 +02:00
Benjamin Neff
ce39616265 fix tag count validator 2015-07-25 22:17:52 +02:00
Benjamin Neff
ed52108cc7 validate entities after creation if a validator is defined 2015-07-25 03:23:23 +02:00
Benjamin Neff
71b1d6dc1e add xml_name option to properties_dsl
also:
* only allow symbols as name and xml_name
* use public_send instead of send
2015-07-24 23:42:35 +02:00
Benjamin Neff
0deb74c103 refactor: rename diaspora_handle to diaspora_id
diaspora uses the new wording "diaspora ID" instead of "diaspora handle"
2015-07-23 01:22:23 +02:00
Benjamin Neff
fe3c6b6161 refactor HostMeta 2015-07-22 00:46:57 +02:00
Benjamin Neff
20d4646332 refactoring validation and write more tests 2015-07-21 22:31:37 +02:00
Benjamin Neff
ac8832ee4a add diaspora handle validator and test 2015-07-21 22:31:37 +02:00
Benjamin Neff
bfe1b77c87 use rails logger
and ignore logging for test coverage
2015-07-20 03:43:54 +02:00
Benjamin Neff
5be60f8fe0 load fixtures before tests 2015-07-20 03:43:54 +02:00
Benjamin Neff
2301b1433e add validators from raven24 2015-07-20 03:43:54 +02:00
Benjamin Neff
3a94930dcd add test for Discovery 2015-07-18 23:19:30 +02:00
Benjamin Neff
c65ad965b3 add Person and Profile entity for discovery-data 2015-07-18 23:19:30 +02:00
Benjamin Neff
6d63903e73 set nil if parsing an empty string 2015-07-18 23:19:30 +02:00
Benjamin Neff
94f9fe89c1 parse webfinger without guid and public key 2015-07-18 23:19:30 +02:00
Benjamin Neff
35f0af3c55 don't parse guid from hcard if it is equals to nickname 2015-07-18 23:19:30 +02:00
Benjamin Neff
0204b3d9ff add Fetcher for http requests 2015-07-18 21:58:44 +02:00
Benjamin Neff
09904b54d0 rename WebFinger module to Discovery 2015-07-18 21:57:39 +02:00
Benjamin Neff
87509e7af2 HCard and WebFinger frozen after parsing 2015-07-09 02:16:11 +02:00
Benjamin Neff
104fc43940 write tests for Callbacks 2015-07-08 01:45:57 +02:00
Benjamin Neff
6ceddae27b refactor HCard to use the PropertiesDSL 2015-07-08 01:45:57 +02:00
Benjamin Neff
2c50d34370 refactor WebFinger to use the PropertiesDSL 2015-07-08 01:45:57 +02:00
Benjamin Neff
e955ef8966 add Entity and PropertiesDSL 2015-07-08 01:45:57 +02:00
Benjamin Neff
ec5667193b add Callbacks 2015-07-07 01:20:56 +02:00
Benjamin Neff
7370a32c65 use serialized_public_key because a conflict with the diaspora code 2015-07-04 19:55:32 +02:00
Benjamin Neff
f6aae2a01f add nil-check 2015-07-02 03:00:51 +02:00
Benjamin Neff
99d5ffdc04 use person object with attributes to generate hcard 2015-07-02 02:34:31 +02:00
Benjamin Neff
6e6171fc93 use person object with attributes to generate webfinger 2015-07-02 01:13:27 +02:00
Benjamin Neff
8041c2e18d change photo_full_url to photo_large_url 2015-06-28 16:01:37 +02:00
Benjamin Neff
880d6b39d5 HCard: searchable is now a Boolean 2015-06-28 00:27:00 +02:00
Benjamin Neff
e2f2ef9f78 key as <pre>-element 2015-06-28 00:08:41 +02:00
Benjamin Neff
e8d047f9fb add HCardController to deliver the hCard 2015-06-27 23:28:05 +02:00
Benjamin Neff
49739327aa change unused receive routes temporarely to /receive-new 2015-06-27 19:30:40 +02:00
Benjamin Neff
db749039ac log configuration error 2015-06-26 03:06:52 +02:00
Benjamin Neff
8eee811914 fix guard (move lib-specs to diaspora_federation subfolder) 2015-06-25 03:10:33 +02:00
Benjamin Neff
c27dbbefb5 fix some complexity issues codeclimate 2015-06-25 01:35:42 +02:00
Benjamin Neff
002f3d2683 some rubocop fixes 2015-06-23 01:17:51 +02:00
Benjamin Neff
38b31ea464 add routing specs 2015-06-23 00:42:34 +02:00
Benjamin Neff
b1b98adb21 generate fixtures 2015-06-23 00:01:13 +02:00