865. EPMO Open Source Coordination Office Redaction File Detail Report

Produced by Araxis Merge on 10/3/2017 11:16:02 AM Central Daylight Time. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a modern standards-compliant browser. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.

865.1 Files compared

# Location File Last Modified
1 ehmp.zip\ehmp\ehmp\product\production\vx-sync\tests\integrationtests\utils\osync osync-active-user-list-util-itest-spec.js Mon Aug 28 20:41:42 2017 UTC
2 ehmp.zip\ehmp\ehmp\product\production\vx-sync\tests\integrationtests\utils\osync osync-active-user-list-util-itest-spec.js Tue Oct 3 13:12:22 2017 UTC

865.2 Comparison summary

Description Between
Files 1 and 2
Text Blocks Lines
Unchanged 6 654
Changed 5 18
Inserted 0 0
Removed 0 0

865.3 Comparison options

Whitespace
Character case Differences in character case are significant
Line endings Differences in line endings (CR and LF characters) are ignored
CR/LF characters Not shown in the comparison detail

865.4 Active regular expressions

No regular expressions were active.

865.5 Comparison detail

  1   'use stric t';
  2  
  3   require('. ./../../.. /env-setup ');
  4  
  5   var _ = re quire('und erscore');
  6   var moment  = require ('moment') ;
  7  
  8   var logger  = require (global.VX _DUMMIES +  'dummy-lo gger');
  9   // NOTE: b e sure nex t lines ar e commente d out befo re pushing
  10   // var log Util = req uire(globa l.VX_UTILS  + 'log');
  11   // logger  = logUtil. _createLog ger({
  12   //     nam e: 'test',
  13   //     lev el: 'debug ',
  14   //     chi ld: logUti l._createL ogger
  15   // });
  16  
  17   var getBea nstalkConf ig = requi re(global. VX_INTTEST S + 'frame work/handl er-test-fr amework'). getBeansta lkConfig;
  18   var update Tubenames  = require( global.VX_ INTTESTS +  'framewor k/handler- test-frame work').upd ateTubenam es;
  19   var getTub enames = r equire(glo bal.VX_INT TESTS + 'f ramework/h andler-tes t-framewor k').getTub enames;
  20   var clearT ubes = req uire(globa l.VX_INTTE STS + 'fra mework/han dler-test- framework' ).clearTub es;
  21   var grabJo bs = requi re(global. VX_INTTEST S + 'frame work/job-g rabber');
  22   var PjdsCl ient = req uire(globa l.VX_SUBSY STEMS + 'j ds/pjds-cl ient');
  23   var JdsCli ent = requ ire(global .VX_SUBSYS TEMS + 'jd s/jds-clie nt');
  24   var wConfi g = requir e(global.V X_ROOT + ' worker-con fig');
  25   var val =  require(gl obal.VX_UT ILS + 'obj ect-utils' ).getPrope rty;
  26   var Publis herRouter  = require( global.VX_ JOBFRAMEWO RK).Publis herRouter;
  27   var OSyncA ctiveUserL istUtil =  require(gl obal.OSYNC _UTILS + ' osync-acti ve-user-li st-util');
  28  
  29   var testCo nfig = req uire(globa l.VX_INTTE STS + 'tes t-config') ;
  30   var host =  testConfi g.vxsyncIP ;
  31   var port =   PORT ;
  32  
  33   var tubePr efix = 'os ync-active -user-list -util-ites t';
  34   var jobTyp e = 'patie ntlist';
  35   var tubena mes;
  36   var publis herRouter;
  37  
  38   describe(' osync-acti ve-user-li st-util-it est-spec.j s', functi on() {
  39  
  40       functi on setUpAc tiveUsers( environmen t, pjdsUse r, userScr eenUser) {
  41           va r pjdsDone  = !pjdsUs er;
  42           va r jdsDone  = !userScr eenUser;
  43  
  44           ru ns(functio n() {
  45                if (!pjd sDone) {
  46                    envi ronment.pj ds.addActi veUser(pjd sUser, fun ction(erro r, respons e) {
  47                         if (error)  {
  48                             expect (error).to BeFalsy();
  49                         }
  50  
  51                         expect(res ponse.stat usCode).to Be(201);
  52                         pjdsDone =  true;
  53                    });
  54                }
  55  
  56                if (!jds Done) {
  57                    envi ronment.jd s.getActiv eUsers(fun ction(erro r, respons e, result)  {
  58                         if (error)  {
  59                             expect (error).to BeFalsy();
  60                         }
  61  
  62                         expect(res ponse.stat usCode).to Be(200);
  63                         expect(_.i sEmpty(res ult)).toBe Falsy();
  64  
  65                         var users  = val(resu lt, 'users ') || [];
  66                         users.push (userScree nUser);
  67  
  68                         environmen t.jds.save ActiveUser s(users, f unction(er ror, respo nse) {
  69                             if (er ror) {
  70                                 ex pect(error ).toBeFals y();
  71                             }
  72  
  73                             expect (response. statusCode ).toBe(200 );
  74                             jdsDon e++;
  75                         });
  76                    });
  77                }
  78           }) ;
  79  
  80           wa itsFor(fun ction() {
  81                return p jdsDone &&  jdsDone;
  82           },  'set up',  20000);
  83       }
  84  
  85       functi on cleanUp ActiveUser s(environm ent, pjdsU ser, userS creenUser)  {
  86           va r pjdsDone  = !pjdsUs er;
  87           va r jdsDone  = !userScr eenUser;
  88  
  89           ru ns(functio n() {
  90                if (!pjd sDone) {
  91                    envi ronment.pj ds.removeA ctiveUser( pjdsUser.u id, functi on(error,  response)  {
  92                         expect(err or).toBeFa lsy();
  93                         expect(res ponse.stat usCode).to Be(200);
  94                         pjdsDone =  true;
  95                    });
  96                }
  97                if (!jds Done) {
  98                    envi ronment.jd s.getActiv eUsers(fun ction(erro r, respons e, result)  {
  99                         if (error)  {
  100                             expect (error).to BeFalsy();
  101                         }
  102  
  103                         expect(res ponse.stat usCode).to Be(200);
  104                         expect(_.i sEmpty(res ult)).toBe Falsy();
  105  
  106                         result.use rs = _.rej ect(result .users, fu nction(use r) {
  107                             return  user.uid  === userSc reenUser.u id;
  108                         });
  109  
  110                         environmen t.jds.save ActiveUser s(result.u sers, func tion(error , response ) {
  111                             if (er ror) {
  112                                 ex pect(error ).toBeFals y();
  113                             }
  114  
  115                             expect (response. statusCode ).toBe(200 );
  116                             jdsDon e = true;
  117                         });
  118                    });
  119                }
  120           }) ;
  121  
  122           wa itsFor(fun ction() {
  123                return p jdsDone &&  jdsDone;
  124           },  'clean up ', 20000);
  125       }
  126  
  127       functi on cleanUp Tubes(){
  128           lo gger.debug ('osync-ac tive-user- list-util- itest-spec : Cleaning  up...');
  129           if  (publishe rRouter) {
  130                publishe rRouter.cl ose();
  131           }
  132  
  133           va r cleared  = 0;
  134  
  135           gr abJobs(log ger, host,  port, tub enames, 0,  function( ) {
  136                cleared+ +;
  137                logger.d ebug('osyn c-active-u ser-list-u til-itest- spec: ****  grabJobs  callback w as called. ');
  138           }) ;
  139  
  140           cl earTubes(l ogger, hos t, port, t ubenames,  function()  {
  141                cleared+ +;
  142                logger.d ebug('osyn c-active-u ser-list-u til-itest- spec: ****  clearTube  callback  was called .');
  143           }) ;
  144  
  145           wa itsFor(fun ction() {
  146                return c leared ===  2;
  147           },  'clear jo bs timed o ut', 10000 );
  148  
  149           ru ns(functio n() {
  150                logger.d ebug('osyn c-active-u ser-list-u til-itest- spec: ****  test comp lete.');
  151           }) ;
  152       }
  153  
  154       it('ge tActiveUse rs', funct ion() {
  155           va r config =  {
  156                pjds: _. defaults(w Config.pjd s, {
  157                    prot ocol: 'htt p',
  158                      host: ' IP          ',
  159                      port:  PORT
  160                }),
  161                jds: _.d efaults(wC onfig.jds,  {
  162                    prot ocol: 'htt p',
  163                      host: ' IP          ',
  164                      port:  PORT
  165                }),
  166                osync: {
  167                    mixe dEnvironme ntMode: tr ue
  168                }
  169           };
  170  
  171           va r pjds = n ew PjdsCli ent(logger , logger,  config);
  172           va r jds = ne w JdsClien t(logger,  logger, co nfig);
  173  
  174           va r environm ent = {
  175                jds: jds ,
  176                pjds: pj ds
  177           };
  178  
  179           va r pjdsUser  = {
  180                uid: 'ur n:va:user: 9E7A:33',
  181                site: '9 E7A',
  182                id: '33' ,
  183                lastSucc essfulLogi n: moment( ).format(' YYYYMMDDHH mmss')
  184           };
  185  
  186           va r userScre enUser = {
  187                duz: {
  188                    '9E7 A': '34'
  189                },
  190                uid: 'ur n:va:user: 9E7A:34',
  191                site: '9 E7A',
  192                id: '34' ,
  193                lastlogi n: moment( ).format()
  194           };
  195  
  196           se tUpActiveU sers(envir onment, pj dsUser, us erScreenUs er);
  197  
  198           va r testDone ;
  199  
  200           ru ns(functio n() {
  201                var osyn cActiveUse rListUtil  = new OSyn cActiveUse rListUtil( logger, co nfig, envi ronment);
  202                osyncAct iveUserLis tUtil.getA ctiveUsers (function( error, use rs) {
  203                    expe ct(error). toBeFalsy( );
  204                    expe ct(users.l ength >= 2 ).toBe(tru e);
  205                    expe ct(users). toContain( jasmine.ob jectContai ning({
  206                         'uid': 'ur n:va:user: 9E7A:33'
  207                    }));
  208                    expe ct(users). toContain( jasmine.ob jectContai ning({
  209                         'uid': 'ur n:va:user: 9E7A:34'
  210                    }));
  211                    test Done = tru e;
  212                });
  213           }) ;
  214  
  215           wa itsFor(fun ction() {
  216                return t estDone;
  217           },  'test com plete', 20 000);
  218  
  219           cl eanUpActiv eUsers(env ironment,  pjdsUser,  userScreen User);
  220       });
  221  
  222       it('re trieveAndP rocessActi veUserList ', functio n() {
  223           va r config =  {
  224                pjds: _. defaults(w Config.pjd s, {
  225                    prot ocol: 'htt p',
  226                      host: ' IP          ',
  227                      port:  PORT
  228                }),
  229                jds: _.d efaults(wC onfig.jds,  {
  230                    prot ocol: 'htt p',
  231                      host: ' IP          ',
  232                      port:  PORT
  233                }),
  234                osync: {
  235                    mixe dEnvironme ntMode: tr ue
  236                }
  237           };
  238  
  239  
  240           va r pjds = n ew PjdsCli ent(logger , logger,  config);
  241           va r jds = ne w JdsClien t(logger,  logger, co nfig);
  242  
  243           va r environm ent = {
  244                jds: jds ,
  245                pjds: pj ds
  246           };
  247  
  248           va r pjdsUser  = {
  249                uid: 'ur n:va:user: WXYZ:43',
  250                site: 'W XYZ',
  251                id: '43' ,
  252                lastSucc essfulLogi n: moment( ).format(' YYYYMMDDHH mmss')
  253           };
  254  
  255           va r userScre enUser = {
  256                duz: {
  257                    'WXY Z': '44'
  258                },
  259                uid: 'ur n:va:user: WXYZ:44',
  260                site: 'W XYZ',
  261                id: '44' ,
  262                lastlogi n: moment( ).format()
  263           };
  264  
  265           va r referenc eInfo = {
  266                sessionI d: 'TEST',
  267                utilityT ype: 'osyn c-active-u ser-list'
  268           };
  269  
  270           se tUpActiveU sers(envir onment, pj dsUser, us erScreenUs er);
  271  
  272           va r beanstal kConfig =  getBeansta lkConfig(c onfig, hos t, port, t ubePrefix  + '-' + jo bType);
  273           up dateTubena mes(beanst alkConfig) ;
  274  
  275           tu benames =  getTubenam es(beansta lkConfig,  [jobType]) ;
  276  
  277           co nfig.beans talk = bea nstalkConf ig;
  278  
  279           en vironment. jobStatusU pdater = {
  280                createJo bStatus: f unction(jo b, callbac k) {
  281                    call back();
  282                },
  283                errorJob Status: fu nction(job , error, c allback) {
  284                    call back();
  285                }
  286           };
  287  
  288           en vironment. publisherR outer = ne w Publishe rRouter(lo gger, conf ig, logger , environm ent.jobSta tusUpdater );
  289           pu blisherRou ter = envi ronment.pu blisherRou ter;
  290  
  291           va r testDone ;
  292           ru ns(functio n() {
  293                var osyn cActiveUse rListUtil  = new OSyn cActiveUse rListUtil( logger, co nfig, envi ronment);
  294  
  295                osyncAct iveUserLis tUtil.retr ieveAndPro cessActive UserList(r eferenceIn fo, functi on(error,  userCount)  {
  296                    expe ct(error). toBeFalsy( );
  297                    expe ct(userCou nt).toBeTr uthy();
  298                    expe ct(userCou nt).toBeGr eaterThan( 1);
  299  
  300                    if ( error) {
  301                         testDone =  true;
  302                         return;
  303                    }
  304  
  305                    grab Jobs(logge r, host, p ort, tuben ames, 1, f unction(er ror, jobs)  {
  306                         expect(err or).toBeFa lsy();
  307  
  308                         var result JobTypes =  _.chain(j obs).map(f unction(re sult) {
  309                             return  result.jo bs;
  310                         }).flatten ().pluck(' type').val ue();
  311  
  312                         expect(val (resultJob Types, 'le ngth')).to BeGreaterT han(1);
  313                         expect(res ultJobType s).toConta in(jobType );
  314  
  315                         var result JobReferen ceInfo = _ .map(val(j obs, ['0', 'jobs']),  function(j ob){
  316                             return  job.refer enceInfo;
  317                         });
  318  
  319                         expect(res ultJobRefe renceInfo. length).to BeGreaterT han(1);
  320                         _.each(res ultJobRefe renceInfo,  function( item){
  321                             expect (item).toE qual(jasmi ne.objectC ontaining( referenceI nfo));
  322                         });
  323  
  324                         testDone =  true;
  325                    });
  326                });
  327           }) ;
  328  
  329           wa itsFor(fun ction() {
  330                return t estDone;
  331           }) ;
  332  
  333           cl eanUpActiv eUsers(env ironment,  pjdsUser,  userScreen User);
  334           cl eanUpTubes ();
  335       });
  336   });