PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Pengujian Mocha PostgreSQL dengan Knex memberi saya kesalahan MigrationLocked

Bagi siapa pun yang menemukan ini, masalahnya sebenarnya berasal dari db.js , khususnya baris terakhir:

const config = require('../knexfile.js');
const env = process.env.NODE_ENV || 'development';
const knex = require("knex")(config[env]);

module.exports = knex;

knex.migrate.latest([config]);

Tentu saja ini tidak sinkron, dan pengujian mengimpor file ini sebelum mencoba menjalankan fungsi knex mereka sendiri, menyebabkan penguncian. Saya mengatasinya dengan menambahkan klausa untuk memblokir ini berjalan saat menguji:

if(process.env.NODE_ENV != 'test') {
   knex.migrate.latest([config])
}

Anda kemudian dapat membuat lingkungan pengujian dengan menambahkan process.env.NODE_ENV='test' ke setiap file spesifikasi, atau dengan menginstal npm env test modul.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana saya bisa dengan aman (tidak langsung) menanyakan database postgresql di dalam Android?

  2. Koneksi PostgreSQL jarak jauh dengan pgAdmin

  3. Nilai array integer PostgreSQL bergabung dengan integer di tabel lain dengan string desc

  4. Bergabunglah dengan dua tabel menggunakan id dan turunan dari tabel seperti pohon

  5. Jalankan kueri PostgreSQL dari baris perintah