| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- import { expect } from 'chai'
- import { db } from '../../../app/src/infrastructure/mongodb.js'
- import { exec } from 'node:child_process'
- describe('ConvertEmailConfirmedAtToDates', function () {
- beforeEach('insert data', async function () {
- await db.users.insertMany([
- { email: 'foo0@bar.com', emails: [{ email: 'foo0@bar.com' }] },
- {
- email: 'foo1@bar.com',
- emails: [
- { email: 'foo1@bar.com', confirmedAt: '2025-06-20 15:53:31 UTC' },
- ],
- },
- {
- email: 'foo2@bar.com',
- emails: [
- { email: 'foo2@bar.com', confirmedAt: '2025-06-20 15:53:32 UTC' },
- { email: 'foo3@bar.com', confirmedAt: '2025-06-20 15:53:33 UTC' },
- {
- email: 'foo4@bar.com',
- confirmedAt: new Date('2025-06-20T15:53:31.134Z'),
- },
- ],
- },
- ])
- })
- beforeEach('run migration', function (done) {
- exec(
- 'east migrate -t saas --force 20210726083523_convert_confirmedAt_strings_to_dates',
- done
- )
- })
- it('should update the dates', async function () {
- expect(
- await db.users.find({}, { projection: { _id: 0 } }).toArray()
- ).to.deep.equal([
- { email: 'foo0@bar.com', emails: [{ email: 'foo0@bar.com' }] },
- {
- email: 'foo1@bar.com',
- emails: [
- {
- email: 'foo1@bar.com',
- confirmedAt: new Date('2025-06-20T15:53:31.000Z'),
- },
- ],
- },
- {
- email: 'foo2@bar.com',
- emails: [
- {
- email: 'foo2@bar.com',
- confirmedAt: new Date('2025-06-20T15:53:32.000Z'),
- },
- {
- email: 'foo3@bar.com',
- confirmedAt: new Date('2025-06-20T15:53:33.000Z'),
- },
- {
- email: 'foo4@bar.com',
- confirmedAt: new Date('2025-06-20T15:53:31.134Z'),
- },
- ],
- },
- ])
- })
- })
|