summaryrefslogtreecommitdiffstats
path: root/lib/parse/is_exercise.js
blob: 74ed7539616cdf1ac4d5dbf116b8ca22022316d0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var _ = require('lodash');

function isExercise(nodes) {
    var codeType = { type: 'code' };

    // Number of code nodes in section
    var len = _.filter(nodes, codeType).length;

    return (
        // Got 3 or 4 code blocks
        (len === 3 || len === 4) &&
        // Ensure all nodes are at the end
        _.all(_.last(nodes, len), codeType)
    );
}

module.exports = isExercise;