1
0
mirror of https://git.cloudron.io/cloudron/syncthing-app synced 2025-09-13 16:29:09 +00:00

Compare commits

..

3 Commits

Author SHA1 Message Date
Dennis Schwerdel
37b6969e24 Fixed wrong URL 2017-06-06 10:22:12 +02:00
Dennis Schwerdel
13de61d86e Fixed tests 2017-05-23 21:45:05 +02:00
Dennis Schwerdel
b5aadcde74 Caching ldap auth and fixed tests 2017-05-23 15:08:50 +02:00
4 changed files with 35 additions and 52 deletions

View File

@@ -2,26 +2,7 @@
* Initial version
[0.1.1]
* Added screenshots
* Huge speedup by caching ldap
[0.2.0]
* Updated to 2017-01-25T03-14-52Z
[0.2.1]
* Updated to 2017-02-16T01-47-30Z
* This version fixes the settings bug
[0.2.2]
* New base image 0.10.0
[0.2.3]
* Updated to 2017-03-16T21-50-32Z
[0.2.4]
* Updated to 2017-04-25T01-27-49Z
[0.2.5]
* Updated to 2017-04-29T00-40-27Z
[0.2.6]
* Updated to 2017-05-05T01-14-51Z
[0.1.2]
* Fixed wrong URL

View File

@@ -5,7 +5,7 @@
"description": "file://DESCRIPTION.md",
"changelog": "file://CHANGELOG",
"tagline": "Decentralized file synchronization",
"version": "0.1.0",
"version": "0.1.2",
"healthCheckPath": "/check",
"httpPort": 8000,
"addons": {
@@ -21,7 +21,7 @@
}
},
"manifestVersion": 1,
"website": "http://www.synthing.net",
"website": "http://syncthing.net",
"contactEmail": "support@cloudron.io",
"icon": "logo.png",
"tags": [

View File

@@ -28,6 +28,9 @@ http {
proxy_buffering off;
proxy_cache_path /tmp/proxy_cache levels=1:2 keys_zone=my_cache:10m max_size=100m inactive=60m use_temp_path=off;
proxy_cache my_cache;
auth_ldap_cache_enabled on;
auth_ldap_cache_expiration_time 300000;
auth_ldap_cache_size 100;
server {
error_log /dev/stderr warn;

View File

@@ -51,59 +51,58 @@ describe('Application life cycle test', function () {
var SYNC_PORT = 22001;
var app;
function pageLoaded(callback) {
browser.wait(until.titleMatches(/[0-9a-f]{12} \| Syncthing/), TEST_TIMEOUT).then(callback);
function pageLoaded() {
return browser.wait(until.titleMatches(/[0-9a-f]{12} \| Syncthing/), TEST_TIMEOUT);
}
function visible(selector, callback) {
function visible(selector) {
return browser.wait(until.elementLocated(selector), TEST_TIMEOUT).then(function () {
browser.wait(until.elementIsVisible(browser.findElement(selector)), TEST_TIMEOUT).then(function () {
callback();
});
return browser.wait(until.elementIsVisible(browser.findElement(selector)), TEST_TIMEOUT);
});
}
function loadPage(callback) {
browser.manage().deleteAllCookies();
browser.get('https://' + username + ':' + password + '@' + app.fqdn);
pageLoaded(function() {
return pageLoaded().then(function() {
callback();
});
}
function addFolder(callback) {
pageLoaded(function() {
return pageLoaded().then(function() {
browser.findElement(by.css('[ng-click*=addFolder]')).click();
visible(by.id('folderPath'), function() {
browser.findElement(by.id('folderLabel')).sendKeys('test').then(function() {
browser.findElement(by.id('folderPath')).sendKeys('/app/data/test').then(function() {
return visible(by.id('folderPath')).then(function() {
return browser.findElement(by.id('folderLabel')).sendKeys('test');
}).then(function() {
return browser.findElement(by.id('folderPath')).sendKeys('/app/data/test');
}).then(function() {
//Clear and re-enter the folder to avoid race with auto-completion
browser.findElement(by.id('folderPath')).clear().then(function() {
browser.findElement(by.id('folderPath')).sendKeys('/app/data/test').then(function() {
browser.findElement(by.css('[ng-click*=saveFolder]')).click().then(function() {
browser.wait(until.elementLocated(by.css('#folders .panel-status span[ng-switch-when=unshared]')), TEST_TIMEOUT).then(function() {
return browser.findElement(by.id('folderPath')).clear();
}).then(function() {
return browser.findElement(by.id('folderPath')).sendKeys('/app/data/test');
}).then(function() {
return browser.findElement(by.css('[ng-click*=saveFolder]')).click();
}).then(function() {
return browser.wait(until.elementLocated(by.css('#folders .panel-status span[ng-switch-when=unshared]')), TEST_TIMEOUT);
}).then(function() {
callback();
});
});
});
});
});
});
});
});
}
function removeFolder(callback) {
pageLoaded(function() {
browser.get('https://' + username + ':' + password + '@' + app.fqdn);
return pageLoaded().then(function() {
browser.findElement(by.css('#folders button')).click();
setTimeout(function() {
browser.findElement(by.css('#folder-0 button[ng-click*=editFolder]')).click();
setTimeout(function() {
browser.findElement(by.css('[ng-click*=deleteFolder]')).click().then(function() {
setTimeout(callback, 500); //This needs to run for some time
setTimeout(callback, 1000); //This needs to run for some time
});
}, 500); //No way to check for visibility of angular-js components
}, 500); //No way to check for visibility of angular-js components
}, 1000); //No way to check for visibility of angular-js components
}, 1000); //No way to check for visibility of angular-js components
});
}
@@ -141,7 +140,7 @@ describe('Application life cycle test', function () {
it('move to different location', function () {
browser.manage().deleteAllCookies();
execSync('cloudron configure --location ' + LOCATION + '2', { cwd: path.resolve(__dirname, '..'), stdio: 'inherit' });
execSync('cloudron configure --wait --location ' + LOCATION + '2', { cwd: path.resolve(__dirname, '..'), stdio: 'inherit' });
var inspect = JSON.parse(execSync('cloudron inspect'));
app = inspect.apps.filter(function (a) { return a.location === LOCATION + '2'; })[0];
expect(app).to.be.an('object');