Skip to content

iambumblehead/mmreql

Repository files navigation

logo

mmreql provides a mock rethinkdb-ts for tests and offline development

import mmreql from 'mmreql'

const { r } = mmreql([
  ['Users',
    { id: 'userId-1234', name: 'fred' },
    { id: 'userId-5678', name: 'jane' }],
  ['Rooms', [{ primaryKey: 'room_id' }],
    { room_id: 'roomId-1234', name: 'the room' }],
  ['Memberships', {
    user_id: 'userId-1234',
    room_membership_type: 'INVITE',
    user_sender_id: 'userId-5678',
    room_id: 'roomId-1234'
  }]
])

await r.table('Memberships').indexCreate('user_id').run()

console.log(await r
 .table('Memberships')
 .getAll('userId-1234', { index: 'user_id' })
 .eqJoin('room_id', r.table('Rooms'))('right')
 .run())
// { room_id: 'roomId-1234', name: 'the room' }

A mock-rethinkdb-ts database package for javascript environments

  • support for complex and nested queries,
  • support for creating, updating, deleting and specifying many databases,
  • support for changefeeds,
  • optionally initialized with plain object-literal data,
  • copies and re-uses tests from rethinkdb-ts,
  • supports atomic row update and replace queries,
  • zero dependencies

This mock database was developed around various services to cover a wide range of use-cases. See unit-tests for more detailed examples. Feel free to open an issue or send an email for any other questions.

About

mock rethinkdb-ts for unit-tests and offline development

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published