summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorMorris Jobke <hey@morrisjobke.de>2017-12-13 18:25:05 +0100
committerGitHub <noreply@github.com>2017-12-13 18:25:05 +0100
commit784d256103d5777db817aded96afcbd3a2362a10 (patch)
treee0cc8702b99f840cd8cb4a3d6ef35519d744c4cf /core
parent66391d65a68d89f5351c1be7810cd4abd0e82989 (diff)
parentee20741526eccc1a02ee48fea6d917d17c1cfe58 (diff)
downloadnextcloud-server-784d256103d5777db817aded96afcbd3a2362a10.tar.gz
nextcloud-server-784d256103d5777db817aded96afcbd3a2362a10.zip
Merge pull request #7480 from nextcloud/fix_7454
Check for FreeType functions required for avatars
Diffstat (limited to 'core')
-rw-r--r--core/js/setupchecks.js9
-rw-r--r--core/js/tests/specs/setupchecksSpec.js59
2 files changed, 59 insertions, 9 deletions
diff --git a/core/js/setupchecks.js b/core/js/setupchecks.js
index 44bf33dd711..439826161d8 100644
--- a/core/js/setupchecks.js
+++ b/core/js/setupchecks.js
@@ -174,6 +174,15 @@
type: OC.SetupChecks.MESSAGE_TYPE_WARNING
});
}
+ if (!data.hasFreeTypeSupport) {
+ messages.push({
+ msg: t(
+ 'core',
+ 'Your PHP does not have freetype support. This will result in broken profile pictures and settings interface.'
+ ),
+ type: OC.SetupChecks.MESSAGE_TYPE_INFO
+ })
+ }
} else {
messages.push({
msg: t('core', 'Error occurred while checking server setup'),
diff --git a/core/js/tests/specs/setupchecksSpec.js b/core/js/tests/specs/setupchecksSpec.js
index 0114f7d868f..00bc84f2a8f 100644
--- a/core/js/tests/specs/setupchecksSpec.js
+++ b/core/js/tests/specs/setupchecksSpec.js
@@ -156,7 +156,8 @@ describe('OC.SetupChecks tests', function() {
isCorrectMemcachedPHPModuleInstalled: true,
hasPassedCodeIntegrityCheck: true,
isOpcacheProperlySetup: true,
- isSettimelimitAvailable: true
+ isSettimelimitAvailable: true,
+ hasFreeTypeSupport: true
})
);
@@ -189,7 +190,8 @@ describe('OC.SetupChecks tests', function() {
isCorrectMemcachedPHPModuleInstalled: true,
hasPassedCodeIntegrityCheck: true,
isOpcacheProperlySetup: true,
- isSettimelimitAvailable: true
+ isSettimelimitAvailable: true,
+ hasFreeTypeSupport: true
})
);
@@ -223,7 +225,8 @@ describe('OC.SetupChecks tests', function() {
isCorrectMemcachedPHPModuleInstalled: true,
hasPassedCodeIntegrityCheck: true,
isOpcacheProperlySetup: true,
- isSettimelimitAvailable: true
+ isSettimelimitAvailable: true,
+ hasFreeTypeSupport: true
})
);
@@ -255,7 +258,8 @@ describe('OC.SetupChecks tests', function() {
isCorrectMemcachedPHPModuleInstalled: true,
hasPassedCodeIntegrityCheck: true,
isOpcacheProperlySetup: true,
- isSettimelimitAvailable: true
+ isSettimelimitAvailable: true,
+ hasFreeTypeSupport: true
})
);
@@ -285,7 +289,8 @@ describe('OC.SetupChecks tests', function() {
isCorrectMemcachedPHPModuleInstalled: false,
hasPassedCodeIntegrityCheck: true,
isOpcacheProperlySetup: true,
- isSettimelimitAvailable: true
+ isSettimelimitAvailable: true,
+ hasFreeTypeSupport: true
})
);
@@ -315,7 +320,8 @@ describe('OC.SetupChecks tests', function() {
isCorrectMemcachedPHPModuleInstalled: true,
hasPassedCodeIntegrityCheck: true,
isOpcacheProperlySetup: true,
- isSettimelimitAvailable: true
+ isSettimelimitAvailable: true,
+ hasFreeTypeSupport: true
})
);
@@ -345,7 +351,8 @@ describe('OC.SetupChecks tests', function() {
isCorrectMemcachedPHPModuleInstalled: true,
hasPassedCodeIntegrityCheck: true,
isOpcacheProperlySetup: true,
- isSettimelimitAvailable: false
+ isSettimelimitAvailable: false,
+ hasFreeTypeSupport: true
})
);
@@ -396,7 +403,8 @@ describe('OC.SetupChecks tests', function() {
isCorrectMemcachedPHPModuleInstalled: true,
hasPassedCodeIntegrityCheck: true,
isOpcacheProperlySetup: true,
- isSettimelimitAvailable: true
+ isSettimelimitAvailable: true,
+ hasFreeTypeSupport: true
})
);
@@ -427,7 +435,8 @@ describe('OC.SetupChecks tests', function() {
hasPassedCodeIntegrityCheck: true,
isOpcacheProperlySetup: false,
phpOpcacheDocumentation: 'https://example.org/link/to/doc',
- isSettimelimitAvailable: true
+ isSettimelimitAvailable: true,
+ hasFreeTypeSupport: true
})
);
@@ -439,6 +448,38 @@ describe('OC.SetupChecks tests', function() {
done();
});
});
+
+ it('should return an info if server has no freetype support', function(done) {
+ var async = OC.SetupChecks.checkSetup();
+
+ suite.server.requests[0].respond(
+ 200,
+ {
+ 'Content-Type': 'application/json'
+ },
+ JSON.stringify({
+ isUrandomAvailable: true,
+ securityDocs: 'https://docs.owncloud.org/myDocs.html',
+ serverHasInternetConnection: true,
+ isMemcacheConfigured: true,
+ forwardedForHeadersWorking: true,
+ isCorrectMemcachedPHPModuleInstalled: true,
+ hasPassedCodeIntegrityCheck: true,
+ isOpcacheProperlySetup: true,
+ phpOpcacheDocumentation: 'https://example.org/link/to/doc',
+ isSettimelimitAvailable: true,
+ hasFreeTypeSupport: false
+ })
+ );
+
+ async.done(function( data, s, x ){
+ expect(data).toEqual([{
+ msg: 'Your PHP does not have freetype support. This will result in broken profile pictures and settings interface.',
+ type: OC.SetupChecks.MESSAGE_TYPE_INFO
+ }]);
+ done();
+ });
+ });
});
describe('checkGeneric', function() {