Commit Graph

236 Commits

Author SHA1 Message Date
Diogo Peralta Cordeiro
3f61537140
[ENTITY] Split Attachment in various new entities
Remove Attachment Scope
Fixed some minor bugs

Scope will be implemented later in v3. It doesn't make sense to have
the scope handling being per attachment. Different actors can post
the same attachment with different scopes. The attachment controller
will assume the highest level of scope applied to the attachment and
the rest will be handled at the note level.

Motivation:
* Remove title from attachment, as it's part of the relation between attachment and note.
* Remove actor from attachment, many actors may publish the same attachment.
* Remove is_local from attachment,  as it's part of the relation between attachment and note.
* Remove remote_url from attachment, different urls can return the same attachment.

Addition:
* Attachment now has a lives attribute,  it's a reference counter with a nicer name
* GSActorToAttachment
* GSActorToRemoteURL
* RemoteURL
* RemoteURLToNote
* RemoteURLToAttachment
* AttachmentToNote now has a title attribute
2021-09-14 13:13:24 +01:00
Hugo Sales
809bf00aa9
[TemporaryFile][TESTS] Throw on attempt to write to null resource and fix tests 2021-09-14 13:13:24 +01:00
Hugo Sales
c24c32334d
[TESTS] Add test for JSON response and invalid accept format 2021-09-14 13:13:24 +01:00
Hugo Sales
061a85d6b3
[EVENTS] Change FormatNoteList do separate in and out arguments
This is necessary due to some weird problem which I wasn't able to figure out (but which doesn't matter)
that somehow causes the event to be called twice during testing, and thus the function was exploding
2021-09-14 13:13:23 +01:00
Hugo Sales
57f43108bb
[TESTS] Fix Entity test in accordance with the changes to createOrUpdate 2021-09-14 13:13:23 +01:00
Hugo Sales
b5de80303a
[TEST] Raise test coverage for UserPanel to 100% 2021-09-14 13:13:23 +01:00
Hugo Sales
8240591bd4
[TESTS] Fixup Security controller tests to match new UI 2021-09-14 13:13:19 +01:00
Hugo Sales
fe7c2b5115
[TESTS] Raise test coverage for AdminPanel controller to 100% 2021-09-14 13:13:19 +01:00
Hugo Sales
e0a0df502e
[TESTS] Raise test coverage for Attachment controller to 100% 2021-09-14 13:13:19 +01:00
Hugo Sales
dfc97d2607
[TESTS] Raise test coverage for Controller/Security to 100% 2021-09-14 13:13:18 +01:00
Hugo Sales
41e4e2de0e
[TESTS][Router] Add tests for Router and use named paramenters, as we can since PHP8 2021-09-14 13:13:16 +01:00
Hugo Sales
1d40c5cdb3
[TESTS][DB] Update test to reflec fact that GSActor no longer has a normalized_nickname field 2021-09-14 13:13:15 +01:00
Hugo Sales
6b4b3e90fb
[TESTS][Nickname] Update tests to reflect new usage. Normalization functionality will be moved to a plugin 2021-09-14 13:13:15 +01:00
Hugo Sales
adf0897527
[TESTS][TemporaryFile] Update test to reflect new usage 2021-09-14 13:13:15 +01:00
Hugo Sales
7a2574eafb
[CORE][TemporaryFile] Add option to specify attempts and better handle when reaching the attemp limit without being able to create a file 2021-09-14 13:13:15 +01:00
Hugo Sales
f5fb4ed3c3
[TESTS] Add tests for GSFile 2021-09-14 13:13:15 +01:00
Hugo Sales
2ee99e5176
[TESTS] Raise test coverage for Form to 100% 2021-09-14 13:13:14 +01:00
Hugo Sales
b111870853
[TESTS][EVENTS] Raise test coverage for Event class to 100% 2021-09-14 13:13:14 +01:00
Hugo Sales
871422e6b6
[TESTS][ENTITY] Raise test coverage for Entity class to 100% 2021-09-14 13:13:14 +01:00
Hugo Sales
747b464c7d
[TESTS] Add missing tests for Common 2021-09-14 13:13:13 +01:00
Hugo Sales
9ce30751af
[TESTS] Expand and fix cache tests 2021-09-14 13:13:13 +01:00
Diogo Peralta Cordeiro
c8cf8c3f13
[FILE][TemporaryFile] Fix various issues now that we also have Symfony's file abstractions 2021-09-14 13:13:03 +01:00
Hugo Sales
74f477489b
[TESTS] Raise test coverage for App\Controller\Network to 100% and fixup related code 2021-09-14 13:13:02 +01:00
Hugo Sales
6d93b6fb32
[TESTS] Raise App\Core\DB\DB test coverage to 100% and fix issues found 2021-09-14 13:13:01 +01:00
Hugo Sales
52edaa319b
[TESTS] Raise App\Core\DB\UpdateListener test coverage to 100% 2021-09-14 13:13:01 +01:00
Hugo Sales
d49541629d
[TESTS] Change relevant tests to use GNUsocialTestCase, so they can access all the needed features 2021-09-14 13:13:01 +01:00
Hugo Sales
fbe0f36a53
[TESTS] Expand test coverage for App\Util\Forms\ArrayTransformer, App\Util\Notification and App\Twig\Runtime 2021-09-14 13:13:00 +01:00
Hugo Sales
c84fcc608f
[TESTS] Raise App\Util\TemporaryFile test coverage to 100% 2021-09-14 13:13:00 +01:00
Hugo Sales
01a659e5b3
[TESTS] Raise test coverage for NicknameTest to 100% 2021-09-14 13:12:59 +01:00
Hugo Sales
a49ee453ab
[TESTS] Raise App\Util\HTML test coverage to 100% 2021-09-14 13:12:58 +01:00
Hugo Sales
fbea08ca9b
[TESTS] Raise App\Util\Bitmap test coverage to 100% 2021-09-14 13:12:58 +01:00
Hugo Sales
abda73b8e3
[TESTS] Raise App\Util\Common test coverage to 100% 2021-09-14 13:12:58 +01:00
Hugo Sales
15a8f8ab7f
[TESTS] Add tests increasing coverage of App\Util\Formatting to 100% 2021-09-14 13:12:58 +01:00
Hugo Sales
ae0e410986
[TESTS] Fix Nickname test 2021-09-14 13:12:23 +01:00
Hugo Sales
77655c1248
[TESTS] Fix wrong namespace in tests 2021-09-14 13:12:23 +01:00
Hugo Sales
8b5bd40421
[TESTS] Add tests to all relevant methods under App\Util and fix errors that popup 2021-09-14 13:10:23 +01:00
Hugo Sales
5afd2c9843
Duplicate src/Util/Exception/NicknameTooLongException.php history in src/Util/Exception/NicknameTooShortException.php history. 2021-09-14 13:10:23 +01:00
Hugo Sales
dc2a453e94
[TESTS] Add tests of Common and fix small oddities that pop up 2021-09-14 13:10:22 +01:00
Hugo Sales
b387ea9aa0
[TESTS] Fix error when testing cold redis cache 2021-09-14 13:10:22 +01:00
Hugo Sales
88e4044d02
[TESTS] Add tests for the bitmap utility and fix implementation 2021-09-14 13:10:22 +01:00
Hugo Sales
c539f17ba5
[TESTS] Add App\Core\Cache test 2021-09-14 13:10:22 +01:00
Hugo Sales
c8b2a7a2e0
[TESTS] Fix deprecations 2021-09-14 13:10:21 +01:00
Hugo Sales
1028f05cd8
[TESTS] Fix unkept unit tests 2021-09-14 13:10:21 +01:00
Hugo Sales
2d70f484f2
[TEST] Fix translation test 2021-09-14 13:10:21 +01:00
Daniel
ffb4b9df23
[Poll] Added modified param for Poll/Poll response, added PollTest 2021-09-14 13:10:12 +01:00
Daniel
95f95d2dd8
[TESTS] Added unit tests 2021-09-14 13:10:08 +01:00
Angelo D. Moura
d53fef09a8
[TWIG] Moves the SVG custom function to an extension and change the test regex 2021-09-14 13:06:58 +01:00
Angelo D. Moura
d2208d15d8
[TWIG][TESTS] Update IconsExtension test 2021-09-14 13:06:58 +01:00
Angelo D. Moura
5acfda8ae5
[TWIG] Add SVG icon embed function 2021-09-14 13:06:58 +01:00
Diogo Machado
fbc85086fd
[DB][TESTS] Implement Doctrine event listener to update timestamps on modification, and related tests 2021-09-14 13:06:58 +01:00
Hugo Sales
7a52c1d823
[TESTS][I18N] Added test for I18n::_m and I18nHelper::formatICU 2021-09-14 13:05:28 +01:00
Diogo Cordeiro
cb7518a750
[DOCUMENTATION][TOOL] Small bug fixes and docblock elaboration 2021-09-14 13:05:24 +01:00
Hugo Sales
cc72373e3d
[DOCTRINE][SCHEMADEF] Create a new metadata driver to allow us to continue using static schemaDef functions
This has the benefit of requiring fewer code changes, as well as providing a better isolation
between GNU social and symfony, useful in case the framework needs to be changed
2021-09-14 13:01:34 +01:00
Hugo Sales
4b31c1f48f
[V3] Big Bang
Beginning anew, this time with a modern framework: symfony
2021-09-14 13:01:33 +01:00
Hugo Sales
11154a0d8c
[V3] Big Crunch
And so, just as it begins, so too must it end
One should not dwell and stall, for more is to come
2021-09-14 13:01:23 +01:00
Alexei Sorokin
08145f635f Implement a class for automatic temporary file handling
And adopt it all over the code.
2020-09-04 13:15:23 +03:00
Diogo Cordeiro
e8dff6c4a0 [TESTS] Move AcceptHeader from ActivityPub plugin to Core
Delete temporary ActivityPub tests (they were to be deleted long ago)
2020-06-25 15:50:12 +01:00
Diogo Cordeiro
324b7f38a9 [FORMAT] Run php-cs-fixer on tests/ 2020-06-24 13:55:10 +01:00
Diogo Cordeiro
aa7aff3f6b [TESTS] Fix CommandInterpreterTest
Also corrected a bad refactoring that affected Xmpp plugin test
2020-06-24 13:54:38 +01:00
Miguel Dantas
b41f9620fa [LIB_REFACTOR] Fix requires 2019-09-03 03:33:13 +01:00
Diogo Cordeiro
0c2c3ec862 [CORE] Plugin API now extends a new Module API 2019-08-24 01:59:33 +01:00
Diogo Cordeiro
db3253e5d2 [CORE] Bump PHP requirement to PHP7.3+ 2019-08-03 17:49:36 +01:00
Diogo Cordeiro
d9e7862cea [CORE][COMPOSER] Ensure we are compatible with PHP 7.0.0 2019-08-03 17:47:27 +01:00
Diogo Cordeiro
9f30c299ee [CORE] Make tests great gain 2019-08-03 17:47:27 +01:00
Diogo Cordeiro
ec32db2dd6 [CORE][COMPOSER] Add hoa/consistency
Renamed curry to callable_left_curry
2019-08-03 17:47:27 +01:00
Miguel Dantas
4863bd30d7 [CORE] Fixed Media tests 2019-08-03 17:31:43 +01:00
mmn
550606177b Merge branch 'fixtests' into 'nightly'
Got Old Unittests Passing

See merge request !131
2017-04-06 10:23:12 +00:00
Roger Braun
8c6c6039a2 Test for correct post object in retweets. 2016-12-05 18:24:13 +01:00
Nym Coy
1f866fcaed ActivityGenerationTests.php fails but doesn't crash anymore.
Fixed an error where a profile id was reused after another profile was
deleted, and the new profile still had the deleted role.

Fixed ActivityGenerationTests::testNoticeInfoRepeated() which was passing
User instead of Profile, throwing errors.

tests/ActivityGenerationTests.php now passes.

CommandInterpreterTest now passes.

Moved JidValidateTest to XmppValidateTest, since Jabber functionality has
moved to the XmppPlugin. Tests work but don't pass, but they are at least
skipped if XmppPlugin is not active.

LocationTest passes, but the tests are not very good. Lots of nulls.

MediaFileTest passes.

NicknameTest passes. Nickname::normalize() now throws an error if the
nickname is too long with underscores.

UserFeedParseTest passes.

URLDetectionTest passes if $config['linkify']['(bare_ipv4|bare_ipv6|
bare_domains)'] are false. Untested otherwise.

Fixed Nickname::isBlacklisted() so it does not throw an error if
$config['nickname]['blacklist'] not set.
2016-08-14 11:55:49 +05:30
Mikael Nordfeldth
afdd6d39ec Some Google stuff that need to be there (or comments)
Note that these won't be shown to the enduser and will never be accessed automatically.

We should put the salmon-protocol stuff on ostatus.org
2016-03-21 12:25:04 +01:00
Bob Mottram
11c57e7aee Remove Google References
This removes most references to Google, with some
remaining since they may point to things which are still
relevant. References to Google Code, Google Buzz and
Google Maps have been removed
2016-03-20 13:06:58 +00:00
Bhuvan Krishna
1ab4c9998a Add executable permission to script missing it 2015-07-10 14:46:08 +05:30
Mikael Nordfeldth
7e597ea7cc More Favorite pluginification (favecount, cache, menus(favecount, cache, menus)) 2014-06-28 14:03:30 +02:00
Mikael Nordfeldth
fcdd061b4f pluginified most of hasFave, getFaves and related calls
The code is now more event-driven when it comes to rendering notices
and their related HTML elements, since we can't have direct calls from
core to a plugin.

lib/activitymover.php has a function to move a Favorite activity which
will not happen now. The move must be pluginified and performed as an
event which plugins can catch on to.
2014-06-27 14:09:02 +02:00
Mikael Nordfeldth
b0cc9292b1 Notice->repeat() function takes Profile as argument now 2014-05-18 21:03:10 +02:00
Mikael Nordfeldth
1776c90cb9 Moved oEmbed stuff out to a plugin (Oembed). 2014-05-06 23:32:13 +02:00
Mikael Nordfeldth
27ed6b7db0 getConversationUrl introduced for linking to conversations 2014-05-01 15:25:19 +02:00
Mikael Nordfeldth
7d191f8062 s/bestUrl/getUrl/ for notices and microapp objects 2014-04-29 19:46:58 +02:00
Mikael Nordfeldth
5fd6053220 Code cleanup and enabling User object's etc. getUri() 2014-04-28 14:08:42 +02:00
Mikael Nordfeldth
6faed0e451 MediaFile loses dependency on PEAR::MIME
At the same time we remove the "filecommand" setting, since we will
likely not have use of it thanks to PECL fileinfo.

Also the "supported" list for attachment mime types has changed
format, so we can keep track of at least some known file extensions.
2014-03-08 03:34:50 +01:00
Mikael Nordfeldth
6f6065e5e9 Only accept filenames for existing files in getUploadedFileType
Getting metadata from filehandles just meant duplicating work
2014-03-08 01:42:24 +01:00
Mikael Nordfeldth
23a6b4595f Reworked the ActivityContext->attention structure
Removing Evan's obscure attentionType solution and directly using the attention array
2013-10-28 22:21:14 +01:00
Mikael Nordfeldth
8004849305 Removing rel='ostatus:attention' in favor of Salmon's rel='mentioned'
This was introduced in StatusNet 0.9.x, which is the oldest branch
on the web today as far as I know.
2013-10-21 18:42:15 +02:00
Mikael Nordfeldth
3cab5b36c1 Replace common_good_random with common_random_hexstr 2013-10-21 13:20:30 +02:00
Mikael Nordfeldth
633191d808 Making sure scripts and tests check for GNUSOCIAL defined (instead of STATUSNET)
Orbited plugin may not work at all anymore, I had no means to try it.
But there's a check whether 'LACONICA' is defined there, which is a
very unlikely thing in the future. So far only tests and scripts have
been migrated consistently, though.
2013-09-28 15:20:10 +02:00
Mikael Nordfeldth
2a4dc77a63 The overloaded DB_DataObject function staticGet is now called getKV
I used this hacky sed-command (run it from your GNU Social root, or change the first grep's path to where it actually lies) to do a rough fix on all ::staticGet calls and rename them to ::getKV

   sed -i -s -e '/DataObject::staticGet/I!s/::staticGet/::getKV/Ig' $(grep -R ::staticGet `pwd`/* | grep -v -e '^extlib' | grep -v DataObject:: |grep -v "function staticGet"|cut -d: -f1 |sort |uniq)

If you're applying this, remember to change the Managed_DataObject and Memcached_DataObject function definitions of staticGet to getKV!

This might of course take some getting used to, or modification fo StatusNet plugins, but the result is that all the static calls (to staticGet) are now properly made without breaking PHP Strict Standards. Standards are there to be followed (and they caused some very bad confusion when used with get_called_class)

Reasonably any plugin or code that tests for the definition of 'GNUSOCIAL' or similar will take this change into consideration.
2013-08-18 13:13:56 +02:00
Zach Copley
c137d69aee Switch from oohembed to noembed for default oembed provider 2011-09-30 19:51:23 +00:00
Evan Prodromou
0ec3047e0c Move AtomPubClient to its own module 2011-07-25 23:15:32 -04:00
Evan Prodromou
cb4f271002 test to check that Bookmark related links are appearing correctly 2011-05-30 10:04:25 -04:00
Brion Vibber
2bd9532ebe Merge branch 'master' into 0.9.x 2011-02-28 10:18:18 -08:00
Brion Vibber
e00483d703 Test case for ticket #2248: flickr URLs with @ in the path get misinterpreted as mailto 2011-02-25 15:38:24 -08:00
Brion Vibber
052ae2d88a Test cases for Unicode hashtags 2011-02-25 10:25:13 -08:00
Brion Vibber
11e033f05c CommandInterpreter test cases to guard against regressions 2011-02-21 12:12:10 -08:00
Brion Vibber
f2a43769e7 Fix for atom/activity streams parsing: feed's <activity:subject> was being taken at a higher priority than entry's <atom:author>, which broke OStatus group posting since we retired <activity:actor>.
Added test case to ActivityParseTests.
2011-01-06 15:13:38 -08:00
Evan Prodromou
a7e5c58a82 Merge branch 'revertversion' into 0.9.x 2011-01-03 10:51:42 -08:00
Brion Vibber
80e2f4f529 Fix up edge case in nickname processing: overlong display forms should be rejected before normalization (storage of display forms will also have fields with limited length) 2010-12-30 17:11:16 -08:00
Brion Vibber
b00a3cd4e4 Make sure the UUIDs are unique too :) 2010-12-30 13:37:05 -08:00
Brion Vibber
63c95484bd Update ActivityCreationTests for our switch away from the obsolete <activity:actor> 2010-12-30 13:21:59 -08:00
Evan Prodromou
3b5c3d2c84 UUID-generation tools 2010-12-30 12:15:34 -08:00
Brion Vibber
fefd9056da AtomPub test cases: make sure the posted entry appears in the feed, and that it disappears after deletion 2010-12-14 14:07:25 -08:00