All files / src/modules/common/database/mongo/auth/migrations 1742117861285-user-session-create-delete-at-idx.ts

0% Statements 0/9
100% Branches 0/0
0% Functions 0/2
0% Lines 0/9

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25                                                 
import { Db } from 'mongodb';
import { MigrationInterface } from 'mongo-migrate-ts';
import { createIndex, dropOldIndexes } from '../utils';
 
const deleteAt = 'deleteAt';
const index = `${deleteAt}_1`;
 
const collectionName = 'user_session';
 
export class UserSessionCreateDeleteAtIdx1742117861285 implements MigrationInterface {
  public async up(db: Db): Promise<void | never> {
    const collection = db.collection(collectionName);
    await createIndex(
      collection,
      { [deleteAt]: 1 },
      { name: index, background: true, expireAfterSeconds: 0 },
    );
  }
 
  public async down(db: Db): Promise<void | never> {
    const collection = db.collection(collectionName);
    await dropOldIndexes(collection, [index]);
  }
}