From 72185203d2e8ef8b5e3e763ec14f32c14d621c22 Mon Sep 17 00:00:00 2001 From: Victor Kotseruba Date: Mon, 8 Feb 2016 23:00:00 +0800 Subject: [PATCH] typo --- package.json | 3 ++- src/FirebaseList.js | 4 +--- tests/Firebase-tape.js | 38 ++++++++++++++++++++++++++++++++++++++ 3 files changed, 41 insertions(+), 4 deletions(-) create mode 100644 tests/Firebase-tape.js diff --git a/package.json b/package.json index 3dbd8f4..fda9aa7 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "kebakaran", - "version": "0.1.8", + "version": "0.1.9", "description": "high level utilities for firebase interaction", "main": "index.js", "scripts": { @@ -37,6 +37,7 @@ "eslint-config-airbnb": "^5.0.0", "eslint-plugin-react": "^3.16.1", "faucet": "0.0.1", + "firebase": "^2.4.0", "raf": "^3.1.0", "tape": "^4.4.0" }, diff --git a/src/FirebaseList.js b/src/FirebaseList.js index 415a34f..d2f57f1 100644 --- a/src/FirebaseList.js +++ b/src/FirebaseList.js @@ -45,8 +45,6 @@ export default class FirebaseList extends EventEmitter { item.on('value', value => { this.onValue(key, value); }); - - this.flush(); } onChildRemoved(c) { @@ -81,7 +79,7 @@ export default class FirebaseList extends EventEmitter { flush() { if (this.hasData()) { - this.emit('vaue', this.data); + this.emit('value', this.data); } } diff --git a/tests/Firebase-tape.js b/tests/Firebase-tape.js new file mode 100644 index 0000000..604597b --- /dev/null +++ b/tests/Firebase-tape.js @@ -0,0 +1,38 @@ +import test from 'tape'; +import Firebase from 'firebase'; + +import { FirebaseList } from '../src'; + +test.skip('Firebase', t => { + t.plan(2); + + const list = new FirebaseList(new Firebase('https://kebakaran-test.firebaseio.com/list'), key => ({ + name: new Firebase(`https://kebakaran-test.firebaseio.com/names/${key}`), + count: new Firebase(`https://kebakaran-test.firebaseio.com/counts/${key}`), + })); + + let step = 1; + + list.on('value', value => { + if (step === 1) { + t.deepEqual(value, []); + step = 2; + } else { + t.deepEqual(value, [ + { + id: '1', + name: 'foo', + count: 10, + }, + { + id: '2', + name: 'bar', + count: 20, + }, + ]); + + list.close(); + t.end(); + } + }); +});