* @author Lukas Reschke * @author Roeland Jago Douma * @author Thomas Müller * * @copyright Copyright (c) 2015, ownCloud, Inc. * @license AGPL-3.0 * * This code is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License, version 3, * as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License, version 3, * along with this program. If not, see * */ namespace Test; use OC\App\AppStore\Fetcher\AppFetcher; use OC\App\AppStore\Fetcher\CategoryFetcher; /** * Class Server * * @group DB * * @package Test */ class ServerTest extends \Test\TestCase { /** @var \OC\Server */ protected $server; public function setUp() { parent::setUp(); $config = new \OC\Config(\OC::$configDir); $this->server = new \OC\Server('', $config); } public function dataTestQuery() { return [ ['ActivityManager', '\OC\Activity\Manager'], ['ActivityManager', '\OCP\Activity\IManager'], ['AllConfig', '\OC\AllConfig'], ['AllConfig', '\OCP\IConfig'], ['AppConfig', '\OC\AppConfig'], ['AppConfig', '\OCP\IAppConfig'], ['AppFetcher', AppFetcher::class], ['AppHelper', '\OC\AppHelper'], ['AppHelper', '\OCP\IHelper'], ['AppManager', '\OC\App\AppManager'], ['AppManager', '\OCP\App\IAppManager'], ['AsyncCommandBus', '\OC\Command\AsyncBus'], ['AsyncCommandBus', '\OCP\Command\IBus'], ['AvatarManager', '\OC\AvatarManager'], ['AvatarManager', '\OCP\IAvatarManager'], ['CategoryFetcher', CategoryFetcher::class], ['CapabilitiesManager', '\OC\CapabilitiesManager'], ['ContactsManager', '\OC\ContactsManager'], ['ContactsManager', '\OCP\Contacts\IManager'], ['ContentSecurityPolicyManager', '\OC\Security\CSP\ContentSecurityPolicyManager'], ['CommentsManager', '\OCP\Comments\ICommentsManager'], ['Crypto', '\OC\Security\Crypto'], ['Crypto', '\OCP\Security\ICrypto'], ['CryptoWrapper', '\OC\Session\CryptoWrapper'], ['CsrfTokenManager', '\OC\Security\CSRF\CsrfTokenManager'], ['DatabaseConnection', '\OC\DB\Connection'], ['DatabaseConnection', '\OCP\IDBConnection'], ['DateTimeFormatter', '\OC\DateTimeFormatter'], ['DateTimeFormatter', '\OCP\IDateTimeFormatter'], ['DateTimeZone', '\OC\DateTimeZone'], ['DateTimeZone', '\OCP\IDateTimeZone'], ['EncryptionFileHelper', '\OC\Encryption\File'], ['EncryptionFileHelper', '\OCP\Encryption\IFile'], ['EncryptionKeyStorage', '\OC\Encryption\Keys\Storage'], ['EncryptionKeyStorage', '\OCP\Encryption\Keys\IStorage'], ['EncryptionManager', '\OC\Encryption\Manager'], ['EncryptionManager', '\OCP\Encryption\IManager'], ['EventLogger', '\OCP\Diagnostics\IEventLogger'], ['GroupManager', '\OC\Group\Manager'], ['GroupManager', '\OCP\IGroupManager'], ['Hasher', '\OC\Security\Hasher'], ['Hasher', '\OCP\Security\IHasher'], ['HTTPHelper', '\OC\HTTPHelper'], ['HttpClientService', '\OC\Http\Client\ClientService'], ['HttpClientService', '\OCP\Http\Client\IClientService'], ['IniWrapper', '\bantu\IniGetWrapper\IniGetWrapper'], ['MimeTypeDetector', '\OCP\Files\IMimeTypeDetector'], ['MimeTypeDetector', '\OC\Files\Type\Detection'], ['JobList', '\OC\BackgroundJob\JobList'], ['JobList', '\OCP\BackgroundJob\IJobList'], ['L10NFactory', '\OC\L10N\Factory'], ['L10NFactory', '\OCP\L10N\IFactory'], ['LockingProvider', '\OCP\Lock\ILockingProvider'], ['Logger', '\OC\Log'], ['Logger', '\OCP\ILogger'], ['Mailer', '\OC\Mail\Mailer'], ['Mailer', '\OCP\Mail\IMailer'], ['MemCacheFactory', '\OC\Memcache\Factory'], ['MemCacheFactory', '\OCP\ICacheFactory'], ['MountConfigManager', '\OC\Files\Config\MountProviderCollection'], ['MountConfigManager', '\OCP\Files\Config\IMountProviderCollection'], ['NavigationManager', '\OC\NavigationManager'], ['NavigationManager', '\OCP\INavigationManager'], ['NotificationManager', '\OC\Notification\Manager'], ['NotificationManager', '\OCP\Notification\IManager'], ['UserCache', '\OC\Cache\File'], ['UserCache', '\OCP\ICache'], ['PreviewManager', '\OC\PreviewManager'], ['PreviewManager', '\OCP\IPreview'], ['QueryLogger', '\OCP\Diagnostics\IQueryLogger'], ['Request', '\OC\AppFramework\Http\Request'], ['Request', '\OCP\IRequest'], ['RootFolder', '\OC\Files\Node\Root'], ['RootFolder', '\OC\Files\Node\Folder'], ['RootFolder', '\OCP\Files\IRootFolder'], ['RootFolder', '\OCP\Files\Folder'], ['Router', '\OCP\Route\IRouter'], ['Search', '\OC\Search'], ['Search', '\OCP\ISearch'], ['SecureRandom', '\OC\Security\SecureRandom'], ['SecureRandom', '\OCP\Security\ISecureRandom'], ['ShareManager', '\OC\Share20\Manager'], ['ShareManager', '\OCP\Share\IManager'], ['SystemConfig', '\OC\SystemConfig'], ['URLGenerator', '\OC\URLGenerator'], ['URLGenerator', '\OCP\IURLGenerator'], ['UserManager', '\OC\User\Manager'], ['UserManager', '\OCP\IUserManager'], ['UserSession', '\OC\User\Session'], ['UserSession', '\OCP\IUserSession'], ['TagMapper', '\OC\Tagging\TagMapper'], ['TagMapper', '\OCP\AppFramework\Db\Mapper'], ['TagManager', '\OC\TagManager'], ['TagManager', '\OCP\ITagManager'], ['TempManager', '\OC\TempManager'], ['TempManager', '\OCP\ITempManager'], ['ThemingDefaults', '\OCA\Theming\ThemingDefaults'], ['TrustedDomainHelper', '\OC\Security\TrustedDomainHelper'], ['SystemTagManager', '\OCP\SystemTag\ISystemTagManager'], ['SystemTagObjectMapper', '\OCP\SystemTag\ISystemTagObjectMapper'], ]; } /** * @dataProvider dataTestQuery * * @param string $serviceName * @param string $instanceOf */ public function testQuery($serviceName, $instanceOf) { $this->assertInstanceOf($instanceOf, $this->server->query($serviceName), 'Service "' . $serviceName . '"" did not return the right class'); } public function testGetCertificateManager() { $this->assertInstanceOf('\OC\Security\CertificateManager', $this->server->getCertificateManager('test'), 'service returned by "getCertificateManager" did not return the right class'); $this->assertInstanceOf('\OCP\ICertificateManager', $this->server->getCertificateManager('test'), 'service returned by "getCertificateManager" did not return the right class'); } public function testCreateEventSource() { $this->assertInstanceOf('\OC_EventSource', $this->server->createEventSource(), 'service returned by "createEventSource" did not return the right class'); $this->assertInstanceOf('\OCP\IEventSource', $this->server->createEventSource(), 'service returned by "createEventSource" did not return the right class'); } public function testOverwriteDefaultCommentsManager() { $config = $this->server->getConfig(); $defaultManagerFactory = $config->getSystemValue('comments.managerFactory', '\OC\Comments\ManagerFactory'); $config->setSystemValue('comments.managerFactory', '\Test\Comments\FakeFactory'); $manager = $this->server->getCommentsManager(); $this->assertInstanceOf('\OCP\Comments\ICommentsManager', $manager); $config->setSystemValue('comments.managerFactory', $defaultManagerFactory); } } .highlight .ne { color: #bb0066; font-weight: bold } /* Name.Exception */ .highlight .nf { color: #0066bb; font-weight: bold } /* Name.Function */ .highlight .nl { color: #336699; font-style: italic } /* Name.Label */ .highlight .nn { color: #bb0066; font-weight: bold } /* Name.Namespace */ .highlight .py { color: #336699; font-weight: bold } /* Name.Property */ .highlight .nt { color: #bb0066; font-weight: bold } /* Name.Tag */ .highlight .nv { color: #336699 } /* Name.Variable */ .highlight .ow { color: #008800 } /* Operator.Word */ .highlight .w { color: #bbbbbb } /* Text.Whitespace */ .highlight .mb { color: #0000DD; font-weight: bold } /* Literal.Number.Bin */ .highlight .mf { color: #0000DD; font-weight: bold } /* Literal.Number.Float */ .highlight .mh { color: #0000DD; font-weight: bold } /* Literal.Number.Hex */ .highlight .mi { color: #0000DD; font-weight: bold } /* Literal.Number.Integer */ .highlight .mo { color: #0000DD; font-weight: bold } /* Literal.Number.Oct */ .highlight .sa { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Affix */ .highlight .sb { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Backtick */ .highlight .sc { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Char */ .highlight .dl { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Delimiter */ .highlight .sd { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Doc */ .highlight .s2 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Double */ .highlight .se { color: #0044dd; background-color: #fff0f0 } /* Literal.String.Escape */ .highlight .sh { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Heredoc */ .highlight .si { color: #3333bb; background-color: #fff0f0 } /* Literal.String.Interpol */ .highlight .sx { color: #22bb22; background-color: #f0fff0 } /* Literal.String.Other */ .highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */ .highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */ .highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */ .highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */ .highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */ .highlight .vc { color: #336699 } /* Name.Variable.Class */ .highlight .vg { color: #dd7700 } /* Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */
define( [
	"../core"
], function( jQuery ) {

/**
 * Determines whether an object can have data
 */
jQuery.acceptData = function( owner ) {

	// Accepts only:
	//  - Node
	//    - Node.ELEMENT_NODE
	//    - Node.DOCUMENT_NODE
	//  - Object
	//    - Any
	/* jshint -W018 */
	return owner.nodeType === 1 || owner.nodeType === 9 || !( +owner.nodeType );
};

return jQuery.acceptData;
} );