4. EPMO Open Source Coordination Office Redaction File Detail Report

Produced by Araxis Merge on 3/12/2019 4:22:12 PM 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.

4.1 Files compared

# Location File Last Modified
1 C:\AraxisMergeCompare\Pri_un\CC CC SEOC 1.7\seocapi-release1.7@25b9376983d\seoc-reactor\seoc-rest-api\src\test\java\gov\va\oneconsult\seoc\api\service UserServiceTest.java Wed Jan 30 19:31:26 2019 UTC
2 C:\AraxisMergeCompare\Pri_re\Community Care Care Coordination SEOC 1.7-redacted\CC CC SEOC 1.7\seocapi-release1.7@25b9376983d\seoc-reactor\seoc-rest-api\src\test\java\gov\va\oneconsult\seoc\api\service UserServiceTest.java Tue Mar 12 20:38:12 2019 UTC

4.2 Comparison summary

Description Between
Files 1 and 2
Text Blocks Lines
Unchanged 1 714
Changed 0 0
Inserted 0 0
Removed 0 0

4.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

4.4 Active regular expressions

No regular expressions were active.

4.5 Comparison detail

  1   /*
  2    * UserSer viceTest.j ava
  3    * Copyrig ht (c) 201 7 Veterans  Affairs.
  4    */
  5   package go v.va.oneco nsult.seoc .api.servi ce;
  6  
  7   import sta tic org.as sertj.core .api.Asser tions.asse rtThat;
  8  
  9   import jav a.util.Dat e;
  10   import jav a.util.Has hSet;
  11   import jav a.util.Set ;
  12  
  13   import org .junit.Bef ore;
  14   import org .junit.Tes t;
  15   import org .mockito.A rgumentCap tor;
  16   import org .mockito.I njectMocks ;
  17   import org .mockito.M ock;
  18   import org .mockito.M ockito;
  19   import org .mockito.M ockitoAnno tations;
  20   import org .springfra mework.htt p.HttpStat us;
  21  
  22   import gov .va.onecon sult.seoc. api.contro ller.SeocO bjectGener ator;
  23   import gov .va.onecon sult.seoc. api.except ions.Busin essExcepti on;
  24   import gov .va.onecon sult.seoc. api.except ions.SeocC onstraintV iolationEx ception;
  25   import gov .va.onecon sult.seoc. api.json.C reateUserR equest;
  26   import gov .va.onecon sult.seoc. api.json.S eocGeneric Response;
  27   import gov .va.onecon sult.seoc. api.model. User;
  28   import gov .va.onecon sult.seoc. api.reposi tory.UserR epository;
  29   import gov .va.onecon sult.seoc. api.servic e.impl.Use rServiceIm pl;
  30   import gov .va.onecon sult.seoc. api.util.A piUtil;
  31   import gov .va.onecon sult.seoc. api.util.C onstants;
  32  
  33   /**
  34    * 
  35    * @author  AbleVets
  36    *
  37    */
  38   public cla ss UserSer viceTest
  39   {
  40           @M ock
  41           pr ivate User Repository  userRepos itory;
  42  
  43           @I njectMocks
  44           pr ivate User Service us erService  = new User ServiceImp l();
  45  
  46           @B efore
  47           pu blic void  setUp()
  48           {
  49  
  50                    Mock itoAnnotat ions.initM ocks(this) ;
  51                    
  52                    //Po werMockito .mockStati c(ApiUtil. class);
  53           }
  54  
  55           /* *
  56            *  Descripti on: Return  role if t he user ex ists
  57            * /
  58           @T est
  59           pu blic void  getRoleByV aUserId_us erExists()
  60           {
  61                    Stri ng role =  "Administr ator";
  62                    Stri ng domain  = "DAV";
  63                    Stri ng vaNetwo rkId = "Us er1";
  64                    Stri ng userNam e = "User1 ";
  65  
  66                    User  user = Se ocObjectGe nerator.ge tUser(1, u serName, v aNetworkId , domain,    role, nu ll, new Da te(), null );
  67                    Stri ng vaUserI d = user.a ppendDomai nToNetwork Id();
  68  
  69                    Mock ito.when(u serReposit ory.findBy VaUserId(v aUserId)). thenReturn (user);
  70  
  71                    Stri ng foundRo le = userS ervice.get RoleByVaUs erId(vaUse rId);
  72  
  73                    asse rtThat(use r.getRole( )).isEqual To(foundRo le);
  74  
  75                    Mock ito.verify (userRepos itory, Moc kito.times (1)).findB yVaUserId( Mockito.an yString()) ;
  76                    Mock ito.verify NoMoreInte ractions(u serReposit ory);
  77           }
  78  
  79           /* *
  80            *  Descripti on: Return  null if n o user exi sts
  81            * /
  82           @T est
  83           pu blic void  getRoleByV aUserId_us erDoesNotE xist()
  84           {
  85                    Stri ng vaUserI d = "DAV"+ Constants. DOMAIN_SEP ARATOR+"Sy s";
  86  
  87                    User  user = nu ll;
  88  
  89                    Mock ito.when(u serReposit ory.findBy VaUserId(v aUserId)). thenReturn (user);
  90  
  91                    Stri ng foundRo le = userS ervice.get RoleByVaUs erId(vaUse rId);
  92  
  93                    asse rtThat(fou ndRole).is Null();
  94  
  95                    Mock ito.verify (userRepos itory, Moc kito.times (1)).findB yVaUserId( Mockito.an yString()) ;
  96                    Mock ito.verify NoMoreInte ractions(u serReposit ory);
  97           }
  98           
  99           /* *
  100            *  Descripti on: Save n ew user su ccessfully
  101            * /
  102           @T est
  103           pu blic void  saveUser_n ewUser() 
  104           {
  105                    Stri ng role =  "Administr ator";
  106                    Stri ng vaNetwo rkId = "Us er1";
  107                    Stri ng userNam e = "User1 ";
  108                    Stri ng domain  = "DAV";
  109                    Date  today = A piUtil.get UTCZoneDat eTime(new  Date());
  110                    
  111                    User  beforeUse r = SeocOb jectGenera tor.getUse r(0, userN ame, vaNet workId, do main,  rol e, null, t oday, null );
  112                    
  113                    User  afterUser  = SeocObj ectGenerat or.getUser (1, userNa me, vaNetw orkId, dom ain,  role , null, to day, null) ;
  114                    
  115                    Crea teUserRequ est userRe q = Create UserReques t.Builder. create()
  116                                                                                  .withDom ain(domain )
  117                                                                                  .withUse rName(user Name)
  118                                                                                  .withVaN etworkId(v aNetworkId )
  119                                                                                  .withRol e(role)
  120                                                                                  .build() ;
  121                    
  122                    Mock ito.when(u serReposit ory.save(b eforeUser) ).thenRetu rn(afterUs er);
  123                    Mock ito.when(u serReposit ory.findAc tiveUsers( )).thenRet urn(null);
  124                    
  125                    
  126                    Seoc GenericRes ponse resp onse = use rService.s aveUser(us erReq);
  127                    asse rtThat(res ponse.getS tatus()).i sEqualTo(C onstants.C REATED);
  128                    asse rtThat(res ponse.getM essage()). isEqualTo( "Successfu lly saved  User data" );
  129                    
  130                    Argu mentCaptor <User> arg Captor = A rgumentCap tor.forCla ss(User.cl ass);
  131                    Mock ito.verify (userRepos itory, Moc kito.times (1)).save( argCaptor. capture()) ;
  132                    Mock ito.verify (userRepos itory, Moc kito.times (1)).findA ctiveUsers ();
  133                    Mock ito.verify NoMoreInte ractions(u serReposit ory);
  134  
  135           }
  136           
  137           /* *
  138            *  Descripti on: Update  a user su ccessfully
  139            * /
  140           @T est
  141           pu blic void  saveUser_u pdateUser(
  142           {
  143                    Stri ng role =  "Administr ator";
  144                    Stri ng vaNetwo rkIdBefore  = "Networ kId1";
  145                    Stri ng vaNetwo rkIdAfter  = "Network Id2";
  146                    Stri ng userNam eBefore =  "User1";
  147                    Stri ng userNam eAfter = " User2";
  148                    Stri ng domain  = "DAV";  
  149                    Date  today = A piUtil.get UTCZoneDat eTime(new  Date());
  150                    
  151                    User  activeUse r = SeocOb jectGenera tor.getUse r(2, "User ", "VaNetw orkID", do main,  rol e, null, t oday, null );
  152                    User  beforeUse r = SeocOb jectGenera tor.getUse r(1, userN ameBefore,  vaNetwork IdBefore,  domain, ro le, null,  today, nul l);
  153                    
  154                    Set< User> acti veUsers =  new HashSe t<User>();
  155                    acti veUsers.ad d(activeUs er);
  156                    acti veUsers.ad d(beforeUs er);
  157                    
  158                    User  afterUser  = SeocObj ectGenerat or.getUser (1, userNa meAfter, v aNetworkId After, dom ain,  role , null, to day, today );
  159                    
  160                    Crea teUserRequ est userRe q = Create UserReques t.Builder. create()
  161                                                                                  .withPre vNetworkId (vaNetwork IdBefore)
  162                                                                                  .withDom ain(domain )
  163                                                                                  .withUse rName(user NameAfter)
  164                                                                                  .withVaN etworkId(v aNetworkId After)
  165                                                                                  .withRol e(role)
  166                                                                                  .build() ;
  167                    
  168                    Mock ito.when(u serReposit ory.save(b eforeUser) ).thenRetu rn(afterUs er);
  169                    Mock ito.when(u serReposit ory.findBy VaNetworkI d(Constant s.DOMAIN_S EPARATOR+v aNetworkId Before)).t henReturn( beforeUser );
  170                    Mock ito.when(u serReposit ory.findAc tiveUsers( )).thenRet urn(active Users);
  171                    
  172                    Seoc GenericRes ponse resp onse = use rService.s aveUser(us erReq);
  173                    asse rtThat(res ponse.getS tatus()).i sEqualTo(C onstants.U PDATED);
  174                    asse rtThat(res ponse.getM essage()). isEqualTo( "Successfu lly saved  User data" );
  175                    
  176                    Argu mentCaptor <User> arg Captor = A rgumentCap tor.forCla ss(User.cl ass);
  177                    Mock ito.verify (userRepos itory, Moc kito.times (1)).save( argCaptor. capture()) ;
  178                    Mock ito.verify (userRepos itory, Moc kito.times (1)).findB yVaNetwork Id(Mockito .anyString ());
  179                    Mock ito.verify (userRepos itory, Moc kito.times (1)).findA ctiveUsers ();
  180                    Mock ito.verify NoMoreInte ractions(u serReposit ory);
  181  
  182           }
  183           
  184           /* *
  185            *  Descripti on: Saving  user vali dation fai led. Valid ation is d one one ro le, domain , vaNetwor kId and us ername fie lds.
  186            * /
  187           @T est(expect ed = SeocC onstraintV iolationEx ception.cl ass)
  188           pu blic void  saveUser_v alidationF ailure() 
  189           {
  190                    Stri ng role =  "Admin";
  191                    Stri ng vaNetwo rkId = nul l;
  192                    Stri ng userNam e = "User1 ";
  193                    Stri ng domain  = null;            
  194                    Date  today = A piUtil.get UTCZoneDat eTime(new  Date());
  195                    
  196                    User  beforeUse r = SeocOb jectGenera tor.getUse r(0, userN ame, vaNet workId, do main, role , null, to day, null) ;
  197                    
  198                    User  afterUser  = SeocObj ectGenerat or.getUser (1, userNa me, vaNetw orkId, dom ain,  role , null, to day, null) ;
  199                    
  200                    Crea teUserRequ est userRe q = Create UserReques t.Builder. create()
  201                                                                                  .withDom ain(domain )
  202                                                                                  .withUse rName(user Name)
  203                                                                                  .withVaN etworkId(v aNetworkId )
  204                                                                                  .withRol e(role)
  205                                                                                  .build() ;
  206                    
  207                    Mock ito.when(u serReposit ory.save(b eforeUser) ).thenRetu rn(afterUs er);
  208                    
  209                    Seoc GenericRes ponse resp onse = use rService.s aveUser(us erReq);
  210                    
  211                    asse rtThat(res ponse.getS tatus()).i sEqualTo(H ttpStatus. BAD_REQUES T);
  212                    
  213                    Argu mentCaptor <User> arg Captor = A rgumentCap tor.forCla ss(User.cl ass);
  214                    Mock ito.verify (userRepos itory, Moc kito.times (1)).save( argCaptor. capture()) ;
  215                    Mock ito.verify NoMoreInte ractions(u serReposit ory);
  216  
  217           }
  218           
  219           /* *
  220            *  Descripti on: Create  a new use r, found d uplicate u ser in DB
  221            * /
  222           @T est(expect ed = Busin essExcepti on.class)
  223           pu blic void  saveNewUse r_duplicat eUserIsAct ive()
  224           {
  225                    Stri ng role =  "Administr ator";
  226                    Stri ng vaNetwo rkId = "Us er1";
  227                    Stri ng userNam e = "User1 ";
  228                    Stri ng domain  = "DAV";
  229                    Date  today = A piUtil.get UTCZoneDat eTime(new  Date());
  230  
  231                    User  activeUse r = SeocOb jectGenera tor.getUse r(1, userN ame, vaNet workId, do main,  rol e, null, t oday, null );
  232                    
  233                    Set< User> acti veUsers =  new HashSe t<User>();
  234                    acti veUsers.ad d(activeUs er);
  235  
  236                    Crea teUserRequ est userRe q = Create UserReques t.Builder. create()
  237                                      .withDom ain(domain )
  238                                      .withUse rName(user Name)
  239                                      .withVaN etworkId(v aNetworkId )
  240                                      .withRol e(role)
  241                                      .build() ;
  242                    
  243                    Mock ito.when(u serReposit ory.findAc tiveUsers( )).thenRet urn(active Users);
  244  
  245                    Seoc GenericRes ponse resp onse = use rService.s aveUser(us erReq);
  246                    
  247                    asse rtThat(res ponse.getS tatus()).i sEqualTo(H ttpStatus. BAD_REQUES T);
  248  
  249                    Mock ito.verify (userRepos itory, Moc kito.times (1)).findA ctiveUsers ();
  250                    Mock ito.verify NoMoreInte ractions(u serReposit ory);
  251  
  252           }
  253           
  254           /* *
  255            *  Descripti on: Updati ng a User  and there  exists ano ther user  which has  same usern ame or net workid bei ng updated  with  
  256            * /
  257           @T est(expect ed = Busin essExcepti on.class)
  258           pu blic void  saveUser_u pdateUser_ userExitsW ithSameNam e() 
  259           {
  260                    Stri ng role =  "Administr ator";
  261                    Stri ng vaNetwo rkIdBefore  = "Networ kId1";
  262                    Stri ng vaNetwo rkIdAfter  = "Network Id2";
  263                    Stri ng userNam eBefore =  "User1";
  264                    Stri ng userNam eAfter = " User2";
  265                    Stri ng domain  = "DAV";  
  266                    Date  today = A piUtil.get UTCZoneDat eTime(new  Date());
  267                    
  268                    User  activeUse r = SeocOb jectGenera tor.getUse r(2, userN ameAfter,  vaNetworkI dAfter, do main,  rol e, null, t oday, null );
  269                    User  beforeUse r = SeocOb jectGenera tor.getUse r(1, userN ameBefore,  vaNetwork IdBefore,  domain, ro le, null,  today, nul l);
  270                    
  271                    Set< User> acti veUsers =  new HashSe t<User>();
  272                    acti veUsers.ad d(activeUs er);
  273                    acti veUsers.ad d(beforeUs er);
  274                    
  275                    User  afterUser  = SeocObj ectGenerat or.getUser (1, userNa meAfter, v aNetworkId After, dom ain,  role , null, to day, today );
  276                    
  277                    Crea teUserRequ est userRe q = Create UserReques t.Builder. create()
  278                                                                                  .withPre vNetworkId (vaNetwork IdBefore)
  279                                                                                  .withDom ain(domain )
  280                                                                                  .withUse rName(user NameAfter)
  281                                                                                  .withVaN etworkId(v aNetworkId After)
  282                                                                                  .withRol e(role)
  283                                                                                  .build() ;
  284                    
  285                    Mock ito.when(u serReposit ory.save(b eforeUser) ).thenRetu rn(afterUs er);
  286                    Mock ito.when(u serReposit ory.findBy VaNetworkI d(Constant s.DOMAIN_S EPARATOR+v aNetworkId Before)).t henReturn( beforeUser );
  287                    Mock ito.when(u serReposit ory.findAc tiveUsers( )).thenRet urn(active Users);
  288                    
  289                    Seoc GenericRes ponse resp onse = use rService.s aveUser(us erReq);
  290                    asse rtThat(res ponse.getS tatus()).i sEqualTo(C onstants.U PDATED);
  291                    asse rtThat(res ponse.getM essage()). isEqualTo( "Successfu lly saved  User data" );
  292                    
  293                    Argu mentCaptor <User> arg Captor = A rgumentCap tor.forCla ss(User.cl ass);
  294                    Mock ito.verify (userRepos itory, Moc kito.times (1)).save( argCaptor. capture()) ;
  295                    Mock ito.verify (userRepos itory, Moc kito.times (1)).findB yVaNetwork Id(Mockito .anyString ());
  296                    Mock ito.verify (userRepos itory, Moc kito.times (1)).findA ctiveUsers ();
  297                    Mock ito.verify NoMoreInte ractions(u serReposit ory);
  298  
  299           }
  300  
  301           /* *
  302            *  Descripti on: Test s uccessful  delete. 
  303            *  Also Test
  304            *  1.Success ful find f rom method  getUserBy VaNetworkI d() throug h deleteUs er()
  305            *  2.Success ful Save b y Save() m ethod
  306            * /
  307           @T est
  308           pu blic void  deleteUser _success()
  309           {
  310                    Stri ng role =  "Admin";
  311                    Stri ng userNam e = "User1 ";
  312                    Stri ng domain  = "DOM";
  313                    Stri ng vaNetwo rkId = "VA USERTEST";
  314                    Stri ng vaUserI d = domain  + Constan ts.DOMAIN_ SEPARATOR  + vaNetwor kId;
  315                    Date  today = A piUtil.tod ay_UTC();
  316                    
  317                    User  beforeUse r = SeocOb jectGenera tor.getUse r(1, userN ame, vaUse rId, role,  null, tod ay, null);
  318                    
  319                    User  afterUser  = SeocObj ectGenerat or.getUser (1, userNa me, vaUser Id, role,  today, tod ay, today) ;
  320                    
  321                    Mock ito.when(u serReposit ory.findBy VaNetworkI d(Constant s.DOMAIN_S EPARATOR +  vaNetwork Id)).thenR eturn(befo reUser);
  322                    
  323                    Mock ito.when(u serReposit ory.save(b eforeUser) ).thenRetu rn(afterUs er);
  324                    
  325                    Seoc GenericRes ponse resp onse = use rService.d eleteUser( vaNetworkI d);
  326                    
  327                    asse rtThat(res ponse.getS tatus()).i sEqualTo(C onstants.S UCCESS);
  328                    
  329                    Argu mentCaptor <User> arg Captor = A rgumentCap tor.forCla ss(User.cl ass);
  330                    Mock ito.verify (userRepos itory, Moc kito.times (1)).save( argCaptor. capture()) ;
  331                    Mock ito.verify (userRepos itory, Moc kito.times (1)).findB yVaNetwork Id(Mockito .anyString ());
  332                    Mock ito.verify NoMoreInte ractions(u serReposit ory);
  333           }
  334           
  335           /* *
  336            *  Descripti on:Test us er not fou nd during  delete. 
  337            *  Also Test
  338            *  1.Failure  of find f rom method  getUserBy VaNetworkI d() throug h deleteUs er()
  339            * /
  340           @T est
  341           pu blic void  deleteUser _NotFound( )
  342           {
  343                    Stri ng vaNetwo rkId = "VA USERTEST";
  344                    User  beforeUse r = null;
  345                    
  346                    Mock ito.when(u serReposit ory.findBy VaNetworkI d(Constant s.DOMAIN_S EPARATOR +  vaNetwork Id)).thenR eturn(befo reUser);
  347                    
  348                    Seoc GenericRes ponse resp onse = use rService.d eleteUser( vaNetworkI d);
  349                    
  350                    asse rtThat(res ponse.getS tatus()).i sEqualTo(C onstants.F AILURE);
  351                    asse rtThat(res ponse.getA ction()).i sEqualTo(C onstants.N OTFOUND);
  352                    
  353                    Mock ito.verify (userRepos itory, Moc kito.times (1)).findB yVaNetwork Id(Mockito .anyString ());
  354                    Mock ito.verify NoMoreInte ractions(u serReposit ory);
  355           }
  356  
  357   }