mirror of
https://github.com/pcottle/learnGitBranching.git
synced 2025-07-12 23:54:27 +02:00
levels test... not sure if its working tho
This commit is contained in:
parent
27ec708cc2
commit
4b5eb3d54d
4 changed files with 140 additions and 24 deletions
53
src/__tests__/casperjs/levels_test.js
Normal file
53
src/__tests__/casperjs/levels_test.js
Normal file
|
@ -0,0 +1,53 @@
|
|||
var CasperUtils = require('./casperUtils').CasperUtils;
|
||||
|
||||
var levels = require('../../levels');
|
||||
|
||||
var numLevelSequences = Object.keys(levels.levelSequences).length;
|
||||
|
||||
var getLevelIconIDs = function(levelID) {
|
||||
var level = levels.levelSequences[levelID];
|
||||
var numLevels = Object.keys(level).length;
|
||||
|
||||
// We index at 1 for the level icons
|
||||
var result = [];
|
||||
for (var i = 1; i <= numLevels; i++) {
|
||||
result.push('levelIcon-' + levelID + i);
|
||||
}
|
||||
return result;
|
||||
};
|
||||
var flattenArray = function(a, b) { return a.concat(b);};
|
||||
|
||||
var levelIconIDsForPages = function(start, end) {
|
||||
return Object.keys(levels.levelSequences).slice(start, end)
|
||||
.map(getLevelIconIDs)
|
||||
.reduce(flattenArray);
|
||||
};
|
||||
|
||||
casper.start(
|
||||
CasperUtils.getUrlForCommands([
|
||||
'levels',
|
||||
]),
|
||||
function() {
|
||||
|
||||
casper.waitFor(CasperUtils.waits.jsMount)
|
||||
.waitFor(CasperUtils.waits.commandVisible)
|
||||
.then(
|
||||
CasperUtils.multiAssert(
|
||||
CasperUtils.asserts.visibleSelectors([
|
||||
'div.levelDropdownView'
|
||||
]),
|
||||
CasperUtils.asserts.visibleIDs(
|
||||
levelIconIDsForPages(0, 5)
|
||||
)
|
||||
)
|
||||
)
|
||||
.then(CasperUtils.screenshot.entirePage)
|
||||
.then(function() {
|
||||
this.mouse.click('div[data-id="remote"]');
|
||||
})
|
||||
.then(CasperUtils.waits.idVisible('levelIcon-remote1'))
|
||||
.then(CasperUtils.waits.idsVisible(
|
||||
levelIconIDsForPages(5, numLevelSequences)
|
||||
))
|
||||
.then(CasperUtils.testDone);
|
||||
}).run();
|
Loading…
Add table
Add a link
Reference in a new issue