Skip to content

Commit

Permalink
test: fix unit tests
Browse files Browse the repository at this point in the history
  • Loading branch information
jdmnd committed Nov 7, 2017
1 parent dca5fcc commit 25069ce
Show file tree
Hide file tree
Showing 13 changed files with 221 additions and 99 deletions.
2 changes: 1 addition & 1 deletion protocol/binary
1 change: 1 addition & 0 deletions src/record/record-deletion.ts
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,7 @@ export default class RecordDeletion {
this.socketWrapper.sendMessage({
topic: TOPIC.RECORD,
action: RECORD_ACTIONS.RECORD_DELETE_ERROR,
originalAction: this.message.action,
name: this.recordName
})
this.services.logger.error(RECORD_ACTIONS[RECORD_ACTIONS.RECORD_DELETE_ERROR], errorMsg, this.metaData)
Expand Down
19 changes: 15 additions & 4 deletions src/record/record-handler.ts
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,8 @@ export default class RecordHandler {
socket.sendMessage({
topic: TOPIC.RECORD,
action: event,
originalAction: message.action
originalAction: message.action,
name: recordName
})
}

Expand Down Expand Up @@ -176,7 +177,8 @@ export default class RecordHandler {
socket.sendMessage({
topic: TOPIC.RECORD,
action: event,
originalAction: message.action
originalAction: message.action,
name: recordName
})
}

Expand Down Expand Up @@ -218,7 +220,8 @@ export default class RecordHandler {
socket.sendMessage({
topic: TOPIC.RECORD,
action: event,
originalAction: message.action
originalAction: message.action,
name: recordName
})
}

Expand All @@ -240,6 +243,7 @@ export default class RecordHandler {
*/
private createOrRead (socketWrapper: SocketWrapper, message: RecordMessage): void {
const onComplete = function (record, recordName, socket) {
console.log('createorread onComplete')
if (record) {
this.read(message, record, socket)
} else {
Expand Down Expand Up @@ -294,6 +298,7 @@ export default class RecordHandler {
socketWrapper.sendMessage({
topic: TOPIC.RECORD,
action: RA.INVALID_PATCH_ON_HOTPATH,
originalAction: message.action,
name: recordName
})
return
Expand Down Expand Up @@ -376,14 +381,18 @@ export default class RecordHandler {
private create (message: RecordMessage, socketWrapper: SocketWrapper, callback: Function): void {
const recordName = message.name
const record = { _v: 0, _d: {} }
console.log('create', recordName)

// store the records data in the cache and wait for the result
this.services.cache.set(recordName, record, error => {
console.log('create cache response', recordName)
if (error) {
console.log('create cache error', error)
this.services.logger.error(RA[RA.RECORD_CREATE_ERROR], recordName, this.metaData)
socketWrapper.sendMessage({
topic: TOPIC.RECORD,
action: RA.RECORD_CREATE_ERROR,
originalAction: message.action,
name: message.name
})
} else if (callback) {
Expand All @@ -407,6 +416,7 @@ export default class RecordHandler {
* Subscribes to updates for a record and sends its current data once done
*/
private read (message: RecordMessage, record: StorageRecord, socketWrapper: SocketWrapper): void {
console.trace('read', message)
this.permissionAction(RA.READ, message.name, socketWrapper, () => {
this.subscriptionRegistry.subscribe(message, socketWrapper)
sendRecord(message.name, record, socketWrapper)
Expand Down Expand Up @@ -585,7 +595,8 @@ function onPermissionResponse (
socketWrapper.sendMessage({
topic: TOPIC.RECORD,
action: RA.MESSAGE_DENIED,
originalAction: message.action
originalAction: message.action,
name: message.name
})
} else {
successCallback()
Expand Down
4 changes: 2 additions & 2 deletions src/record/record-transition.ts
Original file line number Diff line number Diff line change
Expand Up @@ -109,11 +109,11 @@ export default class RecordTransition {
socketWrapper.sendMessage({
topic: TOPIC.RECORD,
action: RECORD_ACTIONS.VERSION_EXISTS,
originalAction: step.message.action,
name: this.name,
version: this.record._v,
parsedData: this.record._d,
originalAction: step.message.action,
isWriteAck: step.message.isWriteAck,
isWriteAck: false,
})

this.services.logger.warn(
Expand Down
1 change: 1 addition & 0 deletions src/rpc/rpc-handler.ts
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,7 @@ export default class RpcHandler {
socketWrapper.sendMessage({
topic: TOPIC.RPC,
action: RPC_ACTIONS.INVALID_RPC_CORRELATION_ID,
originalAction: message.action,
name: message.name,
correlationId: message.correlationId
})
Expand Down
2 changes: 2 additions & 0 deletions src/utils/subscription-registry.ts
Original file line number Diff line number Diff line change
Expand Up @@ -230,6 +230,7 @@ export default class SubscriptionRegistry {
socket.sendMessage({
topic: this.topic,
action: this.constants.MULTIPLE_SUBSCRIPTIONS,
originalAction: message.action,
name
})
return
Expand Down Expand Up @@ -260,6 +261,7 @@ export default class SubscriptionRegistry {
socket.sendMessage({
topic: this.topic,
action: this.constants.NOT_SUBSCRIBED,
originalAction: message.action,
name
})
}
Expand Down
21 changes: 12 additions & 9 deletions test/record/messages.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ module.exports.anotherDeletionMsg = {
name: 'no-storage/1'
}

module.exports.createOrReadMessage = {
module.exports.subscribeCreateAndReadMessage = {
topic: C.TOPIC.RECORD,
action: C.RECORD_ACTIONS.SUBSCRIBECREATEANDREAD,
name: 'some-record'
Expand All @@ -28,13 +28,22 @@ module.exports.readResponseMessage = {

module.exports.readDeniedMessage = {
topic: C.TOPIC.RECORD,
action: C.RECORD_ACTIONS.READ,
action: C.RECORD_ACTIONS.MESSAGE_DENIED,
originalAction: C.RECORD_ACTIONS.READ,
name: 'some-record'
}

module.exports.createPermissionErrorMessage = {
topic: C.TOPIC.RECORD,
action: C.RECORD_ACTIONS.MESSAGE_PERMISSION_ERROR,
originalAction: C.RECORD_ACTIONS.CREATE,
name: 'some-record'
}

module.exports.createDeniedMessage = {
topic: C.TOPIC.RECORD,
action: C.RECORD_ACTIONS.CREATE,
action: C.RECORD_ACTIONS.MESSAGE_DENIED,
originalAction: C.RECORD_ACTIONS.CREATE,
name: 'some-record'
}

Expand All @@ -50,12 +59,6 @@ module.exports.unsubscribeMessage = {
name: 'some-record'
}

module.exports.createOrReadMessage = {
topic: C.TOPIC.RECORD,
action: C.RECORD_ACTIONS.SUBSCRIBECREATEANDREAD,
name: 'some-record'
}

module.exports.recordHasMessage = {
topic: C.TOPIC.RECORD,
action: C.RECORD_ACTIONS.HAS,
Expand Down
14 changes: 8 additions & 6 deletions test/record/record-deletionSpec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -50,13 +50,14 @@ describe('record deletion', () => {
services.cache.nextOperationWillBeSynchronous = false

client.socketWrapperMock
.expects('sendError')
.expects('sendMessage')
.once()
.withExactArgs({
topic: C.TOPIC.RECORD,
action: C.RECORD_ACTIONS.DELETE,
action: C.RECORD_ACTIONS.RECORD_DELETE_ERROR,
originalAction: C.RECORD_ACTIONS.DELETE,
name: 'someRecord'
}, C.RECORD_ACTIONS.RECORD_DELETE_ERROR)
})

recordDeletion = new RecordDeletion(
config, services, client.socketWrapper, M.deletionMsg, callback
Expand All @@ -76,13 +77,14 @@ describe('record deletion', () => {
services.cache.nextOperationWillBeSynchronous = false

client.socketWrapperMock
.expects('sendError')
.expects('sendMessage')
.once()
.withExactArgs({
topic: C.TOPIC.RECORD,
action: C.RECORD_ACTIONS.DELETE,
action: C.RECORD_ACTIONS.RECORD_DELETE_ERROR,
originalAction: C.RECORD_ACTIONS.DELETE,
name: 'someRecord'
}, C.RECORD_ACTIONS.RECORD_DELETE_ERROR)
})

recordDeletion = new RecordDeletion(
config, services, client.socketWrapper, M.deletionMsg, callback
Expand Down
22 changes: 11 additions & 11 deletions test/record/record-handler-permissionSpec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ describe('record handler handles messages', () => {
.once()
.withExactArgs(M.readResponseMessage)

recordHandler.handle(client.socketWrapper, M.createOrReadMessage)
recordHandler.handle(client.socketWrapper, M.subscribeCreateAndReadMessage)

expect(services.permissionHandler.lastArgs.length).toBe(2)
expect(services.permissionHandler.lastArgs[0][1].action).toBe(C.RECORD_ACTIONS.CREATE)
Expand All @@ -47,7 +47,7 @@ describe('record handler handles messages', () => {
.once()
.withExactArgs(M.readResponseMessage)

recordHandler.handle(client.socketWrapper, M.createOrReadMessage)
recordHandler.handle(client.socketWrapper, M.subscribeCreateAndReadMessage)

expect(services.permissionHandler.lastArgs.length).toBe(1)
expect(services.permissionHandler.lastArgs[0][1].action).toBe(C.RECORD_ACTIONS.READ)
Expand All @@ -57,11 +57,11 @@ describe('record handler handles messages', () => {
services.permissionHandler.nextResult = false

client.socketWrapperMock
.expects('sendError')
.expects('sendMessage')
.once()
.withExactArgs(M.createDeniedMessage, C.RECORD_ACTIONS.MESSAGE_DENIED)
.withExactArgs(M.createDeniedMessage)

recordHandler.handle(client.socketWrapper, M.createOrReadMessage)
recordHandler.handle(client.socketWrapper, M.subscribeCreateAndReadMessage)

expect(services.permissionHandler.lastArgs.length).toBe(1)
expect(services.permissionHandler.lastArgs[0][1].action).toBe(C.RECORD_ACTIONS.CREATE)
Expand All @@ -72,11 +72,11 @@ describe('record handler handles messages', () => {
services.permissionHandler.nextResult = false

client.socketWrapperMock
.expects('sendError')
.expects('sendMessage')
.once()
.withExactArgs(M.readDeniedMessage, C.RECORD_ACTIONS.MESSAGE_DENIED)
.withExactArgs(M.readDeniedMessage)

recordHandler.handle(client.socketWrapper, M.createOrReadMessage)
recordHandler.handle(client.socketWrapper, M.subscribeCreateAndReadMessage)

expect(services.permissionHandler.lastArgs.length).toBe(1)
expect(services.permissionHandler.lastArgs[0][1].action).toBe(C.RECORD_ACTIONS.READ)
Expand All @@ -87,11 +87,11 @@ describe('record handler handles messages', () => {
services.permissionHandler.nextResult = false

client.socketWrapperMock
.expects('sendError')
.expects('sendMessage')
.once()
.withExactArgs(M.createDeniedMessage, C.RECORD_ACTIONS.MESSAGE_PERMISSION_ERROR)
.withExactArgs(M.createPermissionErrorMessage)

recordHandler.handle(client.socketWrapper, M.createOrReadMessage)
recordHandler.handle(client.socketWrapper, M.subscribeCreateAndReadMessage)

expect(services.permissionHandler.lastArgs.length).toBe(1)
expect(services.permissionHandler.lastArgs[0][1].action).toBe(C.RECORD_ACTIONS.CREATE)
Expand Down
Loading

0 comments on commit 25069ce

Please sign in to comment.