66'use strict' ;
77const assert = require ( 'assert' ) ;
88const _ = require ( 'lodash' ) ;
9+
910let ds , properties , SimpleEmployee , Emp1 , Emp2 ;
1011
1112before ( function ( ) {
@@ -213,23 +214,30 @@ describe('autoupdate', function() {
213214
214215 ds . createModel ( schema_v1 . name , schema_v1 . properties , schema_v1 . options ) ;
215216
216- ds . automigrate ( function ( ) {
217- ds . discoverModelProperties ( 'customer_test' , function ( err , props ) {
217+ ds . automigrate ( ( ) => {
218+ ds . discoverModelProperties ( 'customer_test' , ( err , props ) => {
219+ // FixMe: In GH Actions the properties are sorted in alphabetical order.
220+ props = props
221+ . sort ( ( a , b ) => {
222+ const schemaKeys = _ . keys ( schema_v1 . properties ) ;
223+ if ( _ . indexOf ( schemaKeys , a . columnName ) > _ . indexOf ( schemaKeys , b . columnName ) ) return 1 ;
224+ if ( _ . indexOf ( schemaKeys , a . columnName ) < _ . indexOf ( schemaKeys , b . columnName ) ) return - 1 ;
225+ return 0 ;
226+ } ) ;
227+ const names = props . map ( ( p ) => p . columnName ) ;
228+
218229 assert . equal ( props . length , 4 ) ;
219- const names = props . map ( function ( p ) {
220- return p . columnName ;
221- } ) ;
222- assert . equal ( props [ 0 ] . nullable , 'NO' ) ;
223- assert . equal ( props [ 1 ] . nullable , 'YES' ) ;
224- assert . equal ( props [ 2 ] . nullable , 'NO' ) ;
225- assert . equal ( props [ 3 ] . nullable , 'YES' ) ;
226230 assert . equal ( names [ 0 ] , 'id' ) ;
231+ assert . equal ( props [ 0 ] . nullable , 'NO' ) ;
227232 assert . equal ( names [ 1 ] , 'name' ) ;
233+ assert . equal ( props [ 1 ] . nullable , 'YES' ) ;
228234 assert . equal ( names [ 2 ] , 'email' ) ;
235+ assert . equal ( props [ 2 ] . nullable , 'NO' ) ;
229236 assert . equal ( names [ 3 ] , 'age' ) ;
237+ assert . equal ( props [ 3 ] . nullable , 'YES' ) ;
230238
231239 // check indexes
232- ds . connector . discoverModelIndexes ( 'CustomerTest' , function ( err , indexes ) {
240+ ds . connector . discoverModelIndexes ( 'CustomerTest' , ( err , indexes ) => {
233241 assert . deepEqual ( indexes , {
234242 customer_test_email_idx : {
235243 table : 'customer_test' ,
@@ -250,19 +258,18 @@ describe('autoupdate', function() {
250258
251259 ds . createModel ( schema_v2 . name , schema_v2 . properties , schema_v2 . options ) ;
252260
253- ds . autoupdate ( function ( err , result ) {
254- ds . discoverModelProperties ( 'customer_test' , function ( err , props ) {
261+ ds . autoupdate ( ( err , result ) => {
262+ ds . discoverModelProperties ( 'customer_test' , ( err , props ) => {
263+ const names = props . map ( ( p ) => p . columnName ) ;
264+
255265 assert . equal ( props . length , 4 ) ;
256- const names = props . map ( function ( p ) {
257- return p . columnName ;
258- } ) ;
259266 assert . equal ( names [ 0 ] , 'id' ) ;
260267 assert . equal ( names [ 1 ] , 'email' ) ;
261268 assert . equal ( names [ 2 ] , 'firstname' ) ;
262269 assert . equal ( names [ 3 ] , 'lastname' ) ;
263270
264271 // verify that indexes have been updated
265- ds . connector . discoverModelIndexes ( 'CustomerTest' , function ( err , indexes ) {
272+ ds . connector . discoverModelIndexes ( 'CustomerTest' , ( err , indexes ) => {
266273 assert . deepEqual ( indexes , {
267274 customer_test_pkey : {
268275 table : 'customer_test' ,
0 commit comments