1.0.6 • Published 6 years ago

html-rulechecker v1.0.6

Weekly downloads
-
License
ISC
Repository
-
Last release
6 years ago

Installation

$ npm i --save html-rulechecker

Demo Code

Demo#1 : Input from file stream, and ouput to another file stream. Moreover, show how to add new rule by yourself.

const fs = require('fs');
const htmlChecker = require('html-rulechecker');
const {
    Checker,
    RuleCreator
} = htmlChecker;

function testFileStream() {
    const rs = fs.createReadStream('./test/sample.html');
    const ws = fs.createWriteStream('./test/result');
    const checker = Checker(rs, ws)
    const ruleCreator = RuleCreator()
    const rules = ruleCreator.defaultRules();
    const newRule = ruleCreator.createRuleObject(
        ruleCreator.createNumberChecker(
            "head>meta[name=robots]", 1, "min"
        ),
        `Header doesn't have <meta name="robots"> tag`
    );
    const customRule = {
        judgeFunction: function(document) {
            return document.querySelectorAll('meta[name=hellochecker]').length > 0
        },
        message: `Doesn't pass custom rule.`
    }
    const newRules = [...rules, newRule, customRule]
    checker.updateRules(newRules);
    checker.check().then(() => {
        console.log("Check Finished");
    })
}

Demo#2 : Input from http stream, and ouput to console. Apply rule masks at check 2 processing.

const fs = require('fs');
const https = require('https');
const htmlChecker = require('html-rulechecker');
const {
    Checker,
    RuleCreator
} = htmlChecker;

function testHttp() {
    https.get('https://nodejs.org/en/', (rs) => {
        const checker = Checker(rs)
        const ruleCreator = RuleCreator()
        const rules = ruleCreator.defaultRules();
        checker.updateRules(rules);
        checker.check().then(() => {
            console.log("Check #1 Finished");
            checker.updateRules(rules, [0, 1, 2, 5, 4]);
            return checker.check()
        }).then(() => {
            console.log("Check #2 Finished");
        })

    });
}
1.0.6

6 years ago

1.0.5

6 years ago

1.0.4

6 years ago

1.0.3

6 years ago

1.0.2

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago