Example #1
0
exports.check = function(marko, hotReload, expect) {
    try {
        fs.mkdirSync(nodePath.join(__dirname, 'temp'));
    } catch(e) {}

    try {
        fs.unlinkSync(nodePath.join(__dirname, 'temp/component.js'));
    } catch(e) {}

    try {
        fs.unlinkSync(nodePath.join(__dirname, 'temp/index.marko'));
    } catch(e) {}

    try {
        fs.unlinkSync(nodePath.join(__dirname, 'temp/index.marko.js'));
    } catch(e) {}

    var tempTemplatePath = nodePath.join(__dirname, 'temp/index.marko');

    copyFiles(nodePath.join(__dirname, 'a'));
    var component = require(tempTemplatePath);
    expect(component.renderToString({ name: 'Frank' })).to.equal('<div class="a" id="s0">Hello Frank</div>');

    try {
        fs.unlinkSync(nodePath.join(__dirname, 'temp/component.js'));
    } catch(e) {}

    hotReload.handleFileModified(tempTemplatePath);

    copyFiles(nodePath.join(__dirname, 'b'));
    expect(component.renderToString({ name: 'Jane' })).to.equal('<div class="b">Hello Jane</div>');
};
Example #2
0
exports.check = function(marko, hotReload, expect, snapshot) {
    try {
        fs.mkdirSync(nodePath.join(__dirname, "temp"));
    } catch (e) {
        /* ignore error */
    }

    try {
        fs.unlinkSync(nodePath.join(__dirname, "temp/component.js"));
    } catch (e) {
        /* ignore error */
    }

    try {
        fs.unlinkSync(nodePath.join(__dirname, "temp/index.marko"));
    } catch (e) {
        /* ignore error */
    }

    try {
        fs.unlinkSync(nodePath.join(__dirname, "temp/index.marko.js"));
    } catch (e) {
        /* ignore error */
    }

    var tempTemplatePath = nodePath.join(__dirname, "temp/index.marko");

    copyFiles(nodePath.join(__dirname, "a"));
    var component = require(tempTemplatePath);

    snapshot(component.renderToString({ name: "Frank" }), {
        name: "initial",
        ext: ".html"
    });

    try {
        fs.unlinkSync(nodePath.join(__dirname, "temp/component.js"));
    } catch (e) {
        /* ignore error */
    }

    hotReload.handleFileModified(tempTemplatePath);

    copyFiles(nodePath.join(__dirname, "b"));

    snapshot(component.renderToString({ name: "Jane" }), {
        name: "reloaded",
        ext: ".html"
    });
};
Example #3
0
 match({ routes, location: ctx.req.url }, (err, redirect, props) => {
   if (err) {
     ctx.status = 500;
     ctx.body = err.message;
   } else if (redirect) {
     ctx.redirect(redirect.pathname + redirect.search);
   } else if (props) {
     const appHtml = renderToString(<RouterContext {...props}/>);
     ctx.body = this.renderPage(appHtml);
   } else {
     ctx.redirect('/bots');
   }
 });