How to use @mojaloop/central-services-database - 10 common examples

To help you get started, we’ve selected a few @mojaloop/central-services-database examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github mojaloop / central-ledger / test / util / randomTransfers.js View on Github external
const startTime = now
  let currentTime = now
  let elapsedTime

  try {
    await Db.connect(Config.DATABASE)

    // prepare participants and participant limits
    const str = Uuid()
    let name = 'dfsp1-' + str.substr(0, 5)
    let participantId = await Db.participant.insert({ name, createdBy: 'randomTransfers' })
    const payerAccountId = await Db.participantCurrency.insert({ participantId, currencyId: 'USD', createdBy: 'randomTransfers' })
    await Db.participantLimit.insert({ participantCurrencyId: payerAccountId, participantLimitTypeId: Enum.ParticipantLimitType.NET_DEBIT_CAP, value: 1000, createdBy: 'randomTransfers' })
    await Db.participantPosition.insert({ participantCurrencyId: payerAccountId, value: 0, reservedValue: 0 })
    name = 'dfsp2-' + str.substr(0, 5)
    participantId = await Db.participant.insert({ name, createdBy: 'randomTransfers' })
    const payeeAccountId = await Db.participantCurrency.insert({ participantId, currencyId: 'USD', createdBy: 'randomTransfers' })
    await Db.participantLimit.insert({ participantCurrencyId: payeeAccountId, participantLimitTypeId: Enum.ParticipantLimitType.NET_DEBIT_CAP, value: 500, createdBy: 'randomTransfers' })
    await Db.participantPosition.insert({ participantCurrencyId: payeeAccountId, value: 0, reservedValue: 0 })

    for (let i = 1; i <= cfg.totalCount; i++) {
      if (countExpired === cfg.expiredCount) {
        isExpired = false
      } else if (cfg.totalCount - i <= cfg.expiredCount - countExpired) {
        isExpired = true
      } else {
        isExpired = Math.floor(Math.random() * targetTransfersPerExpired) === 0
        countExpired += isExpired ? 1 : 0
      }

      const t = generateTransfer(cfg, isExpired)
      await Db.transferDuplicateCheck.insert({ transferId: t.transfer.transferId, hash: t.transfer.transferId })
github mojaloop / central-ledger / test / util / randomTransfers.js View on Github external
const insert = async (cfg) => {
  let isExpired
  let countExpired = 0
  const targetTransfersPerExpired = Math.floor(cfg.totalCount / cfg.expiredCount)
  let now = new Date()
  const startTime = now
  let currentTime = now
  let elapsedTime

  try {
    await Db.connect(Config.DATABASE)

    // prepare participants and participant limits
    const str = Uuid()
    let name = 'dfsp1-' + str.substr(0, 5)
    let participantId = await Db.participant.insert({ name, createdBy: 'randomTransfers' })
    const payerAccountId = await Db.participantCurrency.insert({ participantId, currencyId: 'USD', createdBy: 'randomTransfers' })
    await Db.participantLimit.insert({ participantCurrencyId: payerAccountId, participantLimitTypeId: Enum.ParticipantLimitType.NET_DEBIT_CAP, value: 1000, createdBy: 'randomTransfers' })
    await Db.participantPosition.insert({ participantCurrencyId: payerAccountId, value: 0, reservedValue: 0 })
    name = 'dfsp2-' + str.substr(0, 5)
    participantId = await Db.participant.insert({ name, createdBy: 'randomTransfers' })
    const payeeAccountId = await Db.participantCurrency.insert({ participantId, currencyId: 'USD', createdBy: 'randomTransfers' })
    await Db.participantLimit.insert({ participantCurrencyId: payeeAccountId, participantLimitTypeId: Enum.ParticipantLimitType.NET_DEBIT_CAP, value: 500, createdBy: 'randomTransfers' })
    await Db.participantPosition.insert({ participantCurrencyId: payeeAccountId, value: 0, reservedValue: 0 })

    for (let i = 1; i <= cfg.totalCount; i++) {
      if (countExpired === cfg.expiredCount) {
        isExpired = false
      } else if (cfg.totalCount - i <= cfg.expiredCount - countExpired) {
        isExpired = true
      } else {
        isExpired = Math.floor(Math.random() * targetTransfersPerExpired) === 0
github mojaloop / central-ledger / test / util / randomTransfers.js View on Github external
let isExpired
  let countExpired = 0
  const targetTransfersPerExpired = Math.floor(cfg.totalCount / cfg.expiredCount)
  let now = new Date()
  const startTime = now
  let currentTime = now
  let elapsedTime

  try {
    await Db.connect(Config.DATABASE)

    // prepare participants and participant limits
    const str = Uuid()
    let name = 'dfsp1-' + str.substr(0, 5)
    let participantId = await Db.participant.insert({ name, createdBy: 'randomTransfers' })
    const payerAccountId = await Db.participantCurrency.insert({ participantId, currencyId: 'USD', createdBy: 'randomTransfers' })
    await Db.participantLimit.insert({ participantCurrencyId: payerAccountId, participantLimitTypeId: Enum.ParticipantLimitType.NET_DEBIT_CAP, value: 1000, createdBy: 'randomTransfers' })
    await Db.participantPosition.insert({ participantCurrencyId: payerAccountId, value: 0, reservedValue: 0 })
    name = 'dfsp2-' + str.substr(0, 5)
    participantId = await Db.participant.insert({ name, createdBy: 'randomTransfers' })
    const payeeAccountId = await Db.participantCurrency.insert({ participantId, currencyId: 'USD', createdBy: 'randomTransfers' })
    await Db.participantLimit.insert({ participantCurrencyId: payeeAccountId, participantLimitTypeId: Enum.ParticipantLimitType.NET_DEBIT_CAP, value: 500, createdBy: 'randomTransfers' })
    await Db.participantPosition.insert({ participantCurrencyId: payeeAccountId, value: 0, reservedValue: 0 })

    for (let i = 1; i <= cfg.totalCount; i++) {
      if (countExpired === cfg.expiredCount) {
        isExpired = false
      } else if (cfg.totalCount - i <= cfg.expiredCount - countExpired) {
        isExpired = true
      } else {
        isExpired = Math.floor(Math.random() * targetTransfersPerExpired) === 0
        countExpired += isExpired ? 1 : 0
github mojaloop / central-ledger / test / util / randomTransfers.js View on Github external
let currentTime = now
  let elapsedTime

  try {
    await Db.connect(Config.DATABASE)

    // prepare participants and participant limits
    const str = Uuid()
    let name = 'dfsp1-' + str.substr(0, 5)
    let participantId = await Db.participant.insert({ name, createdBy: 'randomTransfers' })
    const payerAccountId = await Db.participantCurrency.insert({ participantId, currencyId: 'USD', createdBy: 'randomTransfers' })
    await Db.participantLimit.insert({ participantCurrencyId: payerAccountId, participantLimitTypeId: Enum.ParticipantLimitType.NET_DEBIT_CAP, value: 1000, createdBy: 'randomTransfers' })
    await Db.participantPosition.insert({ participantCurrencyId: payerAccountId, value: 0, reservedValue: 0 })
    name = 'dfsp2-' + str.substr(0, 5)
    participantId = await Db.participant.insert({ name, createdBy: 'randomTransfers' })
    const payeeAccountId = await Db.participantCurrency.insert({ participantId, currencyId: 'USD', createdBy: 'randomTransfers' })
    await Db.participantLimit.insert({ participantCurrencyId: payeeAccountId, participantLimitTypeId: Enum.ParticipantLimitType.NET_DEBIT_CAP, value: 500, createdBy: 'randomTransfers' })
    await Db.participantPosition.insert({ participantCurrencyId: payeeAccountId, value: 0, reservedValue: 0 })

    for (let i = 1; i <= cfg.totalCount; i++) {
      if (countExpired === cfg.expiredCount) {
        isExpired = false
      } else if (cfg.totalCount - i <= cfg.expiredCount - countExpired) {
        isExpired = true
      } else {
        isExpired = Math.floor(Math.random() * targetTransfersPerExpired) === 0
        countExpired += isExpired ? 1 : 0
      }

      const t = generateTransfer(cfg, isExpired)
      await Db.transferDuplicateCheck.insert({ transferId: t.transfer.transferId, hash: t.transfer.transferId })
      await Db.transfer.insert(t.transfer)
github mojaloop / central-ledger / test / util / randomTransfers.js View on Github external
let countExpired = 0
  const targetTransfersPerExpired = Math.floor(cfg.totalCount / cfg.expiredCount)
  let now = new Date()
  const startTime = now
  let currentTime = now
  let elapsedTime

  try {
    await Db.connect(Config.DATABASE)

    // prepare participants and participant limits
    const str = Uuid()
    let name = 'dfsp1-' + str.substr(0, 5)
    let participantId = await Db.participant.insert({ name, createdBy: 'randomTransfers' })
    const payerAccountId = await Db.participantCurrency.insert({ participantId, currencyId: 'USD', createdBy: 'randomTransfers' })
    await Db.participantLimit.insert({ participantCurrencyId: payerAccountId, participantLimitTypeId: Enum.ParticipantLimitType.NET_DEBIT_CAP, value: 1000, createdBy: 'randomTransfers' })
    await Db.participantPosition.insert({ participantCurrencyId: payerAccountId, value: 0, reservedValue: 0 })
    name = 'dfsp2-' + str.substr(0, 5)
    participantId = await Db.participant.insert({ name, createdBy: 'randomTransfers' })
    const payeeAccountId = await Db.participantCurrency.insert({ participantId, currencyId: 'USD', createdBy: 'randomTransfers' })
    await Db.participantLimit.insert({ participantCurrencyId: payeeAccountId, participantLimitTypeId: Enum.ParticipantLimitType.NET_DEBIT_CAP, value: 500, createdBy: 'randomTransfers' })
    await Db.participantPosition.insert({ participantCurrencyId: payeeAccountId, value: 0, reservedValue: 0 })

    for (let i = 1; i <= cfg.totalCount; i++) {
      if (countExpired === cfg.expiredCount) {
        isExpired = false
      } else if (cfg.totalCount - i <= cfg.expiredCount - countExpired) {
        isExpired = true
      } else {
        isExpired = Math.floor(Math.random() * targetTransfersPerExpired) === 0
        countExpired += isExpired ? 1 : 0
      }
github mojaloop / central-ledger / test / util / randomTransfers.js View on Github external
let elapsedTime

  try {
    await Db.connect(Config.DATABASE)

    // prepare participants and participant limits
    const str = Uuid()
    let name = 'dfsp1-' + str.substr(0, 5)
    let participantId = await Db.participant.insert({ name, createdBy: 'randomTransfers' })
    const payerAccountId = await Db.participantCurrency.insert({ participantId, currencyId: 'USD', createdBy: 'randomTransfers' })
    await Db.participantLimit.insert({ participantCurrencyId: payerAccountId, participantLimitTypeId: Enum.ParticipantLimitType.NET_DEBIT_CAP, value: 1000, createdBy: 'randomTransfers' })
    await Db.participantPosition.insert({ participantCurrencyId: payerAccountId, value: 0, reservedValue: 0 })
    name = 'dfsp2-' + str.substr(0, 5)
    participantId = await Db.participant.insert({ name, createdBy: 'randomTransfers' })
    const payeeAccountId = await Db.participantCurrency.insert({ participantId, currencyId: 'USD', createdBy: 'randomTransfers' })
    await Db.participantLimit.insert({ participantCurrencyId: payeeAccountId, participantLimitTypeId: Enum.ParticipantLimitType.NET_DEBIT_CAP, value: 500, createdBy: 'randomTransfers' })
    await Db.participantPosition.insert({ participantCurrencyId: payeeAccountId, value: 0, reservedValue: 0 })

    for (let i = 1; i <= cfg.totalCount; i++) {
      if (countExpired === cfg.expiredCount) {
        isExpired = false
      } else if (cfg.totalCount - i <= cfg.expiredCount - countExpired) {
        isExpired = true
      } else {
        isExpired = Math.floor(Math.random() * targetTransfersPerExpired) === 0
        countExpired += isExpired ? 1 : 0
      }

      const t = generateTransfer(cfg, isExpired)
      await Db.transferDuplicateCheck.insert({ transferId: t.transfer.transferId, hash: t.transfer.transferId })
      await Db.transfer.insert(t.transfer)
      await Db.transferParticipant.insert({
github mojaloop / central-ledger / test / util / randomTransfers.js View on Github external
const targetTransfersPerExpired = Math.floor(cfg.totalCount / cfg.expiredCount)
  let now = new Date()
  const startTime = now
  let currentTime = now
  let elapsedTime

  try {
    await Db.connect(Config.DATABASE)

    // prepare participants and participant limits
    const str = Uuid()
    let name = 'dfsp1-' + str.substr(0, 5)
    let participantId = await Db.participant.insert({ name, createdBy: 'randomTransfers' })
    const payerAccountId = await Db.participantCurrency.insert({ participantId, currencyId: 'USD', createdBy: 'randomTransfers' })
    await Db.participantLimit.insert({ participantCurrencyId: payerAccountId, participantLimitTypeId: Enum.ParticipantLimitType.NET_DEBIT_CAP, value: 1000, createdBy: 'randomTransfers' })
    await Db.participantPosition.insert({ participantCurrencyId: payerAccountId, value: 0, reservedValue: 0 })
    name = 'dfsp2-' + str.substr(0, 5)
    participantId = await Db.participant.insert({ name, createdBy: 'randomTransfers' })
    const payeeAccountId = await Db.participantCurrency.insert({ participantId, currencyId: 'USD', createdBy: 'randomTransfers' })
    await Db.participantLimit.insert({ participantCurrencyId: payeeAccountId, participantLimitTypeId: Enum.ParticipantLimitType.NET_DEBIT_CAP, value: 500, createdBy: 'randomTransfers' })
    await Db.participantPosition.insert({ participantCurrencyId: payeeAccountId, value: 0, reservedValue: 0 })

    for (let i = 1; i <= cfg.totalCount; i++) {
      if (countExpired === cfg.expiredCount) {
        isExpired = false
      } else if (cfg.totalCount - i <= cfg.expiredCount - countExpired) {
        isExpired = true
      } else {
        isExpired = Math.floor(Math.random() * targetTransfersPerExpired) === 0
        countExpired += isExpired ? 1 : 0
      }
github mojaloop / central-ledger / test / util / randomTransfers.js View on Github external
try {
    await Db.connect(Config.DATABASE)

    // prepare participants and participant limits
    const str = Uuid()
    let name = 'dfsp1-' + str.substr(0, 5)
    let participantId = await Db.participant.insert({ name, createdBy: 'randomTransfers' })
    const payerAccountId = await Db.participantCurrency.insert({ participantId, currencyId: 'USD', createdBy: 'randomTransfers' })
    await Db.participantLimit.insert({ participantCurrencyId: payerAccountId, participantLimitTypeId: Enum.ParticipantLimitType.NET_DEBIT_CAP, value: 1000, createdBy: 'randomTransfers' })
    await Db.participantPosition.insert({ participantCurrencyId: payerAccountId, value: 0, reservedValue: 0 })
    name = 'dfsp2-' + str.substr(0, 5)
    participantId = await Db.participant.insert({ name, createdBy: 'randomTransfers' })
    const payeeAccountId = await Db.participantCurrency.insert({ participantId, currencyId: 'USD', createdBy: 'randomTransfers' })
    await Db.participantLimit.insert({ participantCurrencyId: payeeAccountId, participantLimitTypeId: Enum.ParticipantLimitType.NET_DEBIT_CAP, value: 500, createdBy: 'randomTransfers' })
    await Db.participantPosition.insert({ participantCurrencyId: payeeAccountId, value: 0, reservedValue: 0 })

    for (let i = 1; i <= cfg.totalCount; i++) {
      if (countExpired === cfg.expiredCount) {
        isExpired = false
      } else if (cfg.totalCount - i <= cfg.expiredCount - countExpired) {
        isExpired = true
      } else {
        isExpired = Math.floor(Math.random() * targetTransfersPerExpired) === 0
        countExpired += isExpired ? 1 : 0
      }

      const t = generateTransfer(cfg, isExpired)
      await Db.transferDuplicateCheck.insert({ transferId: t.transfer.transferId, hash: t.transfer.transferId })
      await Db.transfer.insert(t.transfer)
      await Db.transferParticipant.insert({
        transferId: t.transfer.transferId,
github mojaloop / central-ledger / test / util / randomTransfers.js View on Github external
that actually holds the copyright for their contributions (see the
 Gates Foundation organization for an example). Those individuals should have
 their names indented and be marked with a '-'. Email address can be added
 optionally within square brackets .
 * Gates Foundation
 - Name Surname 

 * Georgi Georgiev 
 --------------
 ******/

'use strict'

const Uuid = require('uuid4')
const Config = require('../../src/lib/config')
const Db = require('@mojaloop/central-services-database').Db
const Enum = require('../../src/lib/enum')
const TS = Enum.TransferState

const randExpirationDate = (maxHoursDiff) => {
  let ms = Math.floor(Math.random() * maxHoursDiff * 3600 * 1000)
  if (ms > 0) {
    ms += 3600 * 1000 // make sure no future transfer expires within 1 hour
  }
  return new Date(new Date().getTime() + ms)
}

const randTransfer = (amount, currency, maxHoursDiff) => {
  const expirationDate = randExpirationDate(maxHoursDiff)
  let createdDate
  if (maxHoursDiff > 0) {
    createdDate = new Date() // all transfer that expire in the future are created at time of generation
github mojaloop / central-ledger / test / util / randomTransfers.js View on Github external
const insert = async (cfg) => {
  let isExpired
  let countExpired = 0
  const targetTransfersPerExpired = Math.floor(cfg.totalCount / cfg.expiredCount)
  let now = new Date()
  const startTime = now
  let currentTime = now
  let elapsedTime

  try {
    await Db.connect(Config.DATABASE)

    // prepare participants and participant limits
    const str = Uuid()
    let name = 'dfsp1-' + str.substr(0, 5)
    let participantId = await Db.participant.insert({ name, createdBy: 'randomTransfers' })
    const payerAccountId = await Db.participantCurrency.insert({ participantId, currencyId: 'USD', createdBy: 'randomTransfers' })
    await Db.participantLimit.insert({ participantCurrencyId: payerAccountId, participantLimitTypeId: Enum.ParticipantLimitType.NET_DEBIT_CAP, value: 1000, createdBy: 'randomTransfers' })
    await Db.participantPosition.insert({ participantCurrencyId: payerAccountId, value: 0, reservedValue: 0 })
    name = 'dfsp2-' + str.substr(0, 5)
    participantId = await Db.participant.insert({ name, createdBy: 'randomTransfers' })
    const payeeAccountId = await Db.participantCurrency.insert({ participantId, currencyId: 'USD', createdBy: 'randomTransfers' })
    await Db.participantLimit.insert({ participantCurrencyId: payeeAccountId, participantLimitTypeId: Enum.ParticipantLimitType.NET_DEBIT_CAP, value: 500, createdBy: 'randomTransfers' })
    await Db.participantPosition.insert({ participantCurrencyId: payeeAccountId, value: 0, reservedValue: 0 })

    for (let i = 1; i <= cfg.totalCount; i++) {
      if (countExpired === cfg.expiredCount) {