Skip to content

Instantly share code, notes, and snippets.

View marcusoftnet's full-sized avatar

Marcus Hammarberg marcusoftnet

View GitHub Profile
@marcusoftnet
marcusoftnet / showAddQuestionPage.spec.js
Created May 2, 2014 13:16
test using authentication
var testHelpers = require('./testHelpers.js');
var co = require('co');
var app = require('../app.js');
var request = require('supertest').agent(app.listen());
describe('Adding questions', function(){
var NEW_QUESTION_URL = '/question/new';
it('has a page to add new questions', function(done){
request
@marcusoftnet
marcusoftnet / configKoaVote.js
Created May 2, 2014 04:14
Config with user
var mongoProdUri = process.env.MONGOHQ_URL || 'localhost:27017/koaVote_Prod';
var adminUser = {
name : process.env.BASIC_USER || 'marcus',
pass : process.env.BASIC_PASS || 'koavote'
};
var config = {
local: {
mode: 'local',
port: 3000,
@marcusoftnet
marcusoftnet / mountedAuthentication.js
Created May 2, 2014 04:08
mounted authentication
var koa = require('koa');
var mount = require('koa-mount');
var auth = require('koa-basic-auth');
var userAuth = require('./lib/authentication.js');
var app = module.exports = koa();
// Security
app.use(userAuth.reqBasic);
app.use(mount('/results', auth(userAuth.user)));
app.use(mount('/question', auth(userAuth.user)));
@marcusoftnet
marcusoftnet / app.js
Created May 2, 2014 03:58
Encapsulated koa-basic-authentication
var koa = require('koa');
var auth = require('koa-basic-auth');
var userAuth = require('./lib/authentication.js');
var app = module.exports = koa();
// Security
app.use(userAuth.reqBasic);
app.use(auth(userAuth.user));
@marcusoftnet
marcusoftnet / basicAuth.js
Created May 2, 2014 03:32
koa-basic-auth example
var auth = require('koa-basic-auth');
var koa = require('koa');
var app = koa();
// custom 401 handling
app.use(function *(next){
try {
yield next;
} catch (err) {
@marcusoftnet
marcusoftnet / theMonster.vb
Last active August 29, 2015 14:00
theMonster - before refactoring
Option Explicit
Option Base 1
Public Const EMPTY_STRING As String = ""
Sub Button2_Click()
' Get week from user
Dim week As String
week = "W" & InputBox("Enter week number")
' Get column to paste to from user
@marcusoftnet
marcusoftnet / config.js
Created April 21, 2014 13:37
simpleConfigobject
var mongoDevUri = process.env.MONGOHQ_URL || "localhost:27017/koaVote_Dev";
var mongoStageUri = process.env.MONGOHQ_URL || "localhost:27017/koaVote_Test";
var mongoProdUri = process.env.MONGOHQ_URL || "localhost:27017/koaVote_Prod";
var config = {
local: {
mode: 'local',
port: 3000,
mongoUrl: mongoDevUri
},
@marcusoftnet
marcusoftnet / koaErrorSuccessWithCo.js
Last active August 29, 2015 13:59
koaErrorSuccessWithCo.js
var co = require('co');
var monk = require('monk');
var should = require('should');
var wrap = require('co-monk');
var db = monk('localhost/testers');
var users = wrap(db.get('users'));
co(function *(){
yield users.remove({});
@marcusoftnet
marcusoftnet / koaErrorFail.js
Created April 10, 2014 13:51
koaErrorFail.js
var monk = require('monk');
var wrap = require('co-monk');
var db = monk('localhost/test');
var users = wrap(db.get('users'));
yield users.remove({});
yield users.insert({ name: 'Tobi', species: 'ferret' });
yield users.insert({ name: 'Loki', species: 'ferret' });
@marcusoftnet
marcusoftnet / koaStreamFilesFromDisk.js
Last active August 29, 2015 13:58
koaStreamFiles.js
var koa = require('koa');
var onFinished = require('finished');
var fs = require('fs');
var app = module.exports = koa();
var path = require('path');
var extname = path.extname;
// try GET /app.js
app.use(function *(){