57 lines
1.8 KiB
JavaScript
57 lines
1.8 KiB
JavaScript
'use strict';
|
|
|
|
pandora.tests = function() {
|
|
var tests = [];
|
|
pandora.api.find({
|
|
query: {conditions: [{key: 'rendered', value: true, operator: '='}], operator: '&'},
|
|
sort: [{key: 'random', operator:'+'}],
|
|
keys: ['id', 'duration'],
|
|
range: [0, 10]
|
|
}, function(result) {
|
|
var item = result.data.items.filter(function(item) { return item.duration > 300; })[0],
|
|
position = 60;
|
|
pandora.UI.set('videoPoints.' + item.id, {
|
|
annotation: '',
|
|
'in': position,
|
|
out: position,
|
|
position: position
|
|
});
|
|
pandora.UI.set({item: item.id, itemView: 'player'});
|
|
test('set item', pandora.user.ui.item, item.id);
|
|
startPlayback();
|
|
function startPlayback() {
|
|
if (pandora.$ui.player) {
|
|
pandora.$ui.player.options({paused: false});
|
|
setTimeout(function() {
|
|
pandora.$ui.player.options({paused: true});
|
|
test('video position increased after playback', pandora.user.ui.videoPoints[item.id].position > position, true);
|
|
results();
|
|
}, 5000);
|
|
} else {
|
|
setTimeout(startPlayback, 500);
|
|
}
|
|
}
|
|
});
|
|
|
|
function test(title, actual, expected) {
|
|
tests.push({
|
|
actual: actual,
|
|
expected: expected,
|
|
passed: Ox.isEqual(actual, expected),
|
|
title: title
|
|
})
|
|
}
|
|
|
|
function results() {
|
|
var passed = tests.filter(function(test) {
|
|
return test.passed;
|
|
}).length,
|
|
failed = tests.length - passed;
|
|
Ox.print(JSON.stringify({
|
|
tests: tests.length,
|
|
passed: passed,
|
|
failed: failed,
|
|
results: tests
|
|
}, null, ' '));
|
|
}
|
|
}
|