[prev in list] [next in list] [prev in thread] [next in thread] 

List:       forgerock-openidm-commit
Subject:    [CommitOpenIDM] [5358] trunk/openidm-ui: CR-7026 - fix unit test framework for openidm-ui
From:       anonymous () forgerock ! org
Date:       2015-05-22 20:48:56
Message-ID: 20150522204856.224043F8A3 () sources ! internal ! forgerock ! com
[Download RAW message or body]

[Attachment #2 (text/html)]

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[5358] trunk/openidm-ui: CR-7026 - fix unit test framework for \
openidm-ui</title> </head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: \
verdana,arial,helvetica,sans-serif; font-size: 10pt;  } #msg dl a { font-weight: \
bold} #msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: \
bold; } #msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: \
6px; } #logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em \
0; } #logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg \
h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; } \
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; \
} #logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: \
-1.5em; padding-left: 1.5em; } #logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em \
1em 0 1em; background: white;} #logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid \
#fa0; border-bottom: 1px solid #fa0; background: #fff; } #logmsg table th { \
text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted \
#fa0; } #logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: \
0.2em 0.5em; } #logmsg table thead th { text-align: center; border-bottom: 1px solid \
#fa0; } #logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: \
6px; } #patch { width: 100%; }
#patch h4 {font-family: \
verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
 #patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, \
#patch .copfile {border:1px solid #ccc;margin:10px 0;} #patch ins \
{background:#dfd;text-decoration:none;display:block;padding:0 10px;} #patch del \
{background:#fdd;text-decoration:none;display:block;padding:0 10px;} #patch .lines, \
                .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a \
href="http://sources.forgerock.org/changelog/openidm/?cs=5358">5358</a></dd> \
<dt>Author</dt> <dd>jake.feasel</dd> <dt>Date</dt> <dd>2015-05-22 21:48:56 +0100 \
(Fri, 22 May 2015)</dd> </dl>

<h3>Log Message</h3>
<pre>CR-7026 - fix unit test framework for openidm-ui</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkopenidmuiGruntfilejs">trunk/openidm-ui/Gruntfile.js</a></li>
<li><a href="#trunkopenidmuiopenidmuiadminsrctestqunitmappingaddMappingTestjs">trunk/openidm-ui/openidm-ui-admin/src/test/qunit/mapping/addMappingTest.js</a></li>
 <li><a href="#trunkopenidmuiopenidmuiadminsrctestqunitmappingreconTestsjs">trunk/openidm-ui/openidm-ui-admin/src/test/qunit/mapping/reconTests.js</a></li>
 <li><a href="#trunkopenidmuiopenidmuiadminsrctestqunitresourcesresourceTestjs">trunk/openidm-ui/openidm-ui-admin/src/test/qunit/resources/resourceTest.js</a></li>
 <li><a href="#trunkopenidmuiopenidmuiadminsrctestqunitspecificjs">trunk/openidm-ui/openidm-ui-admin/src/test/qunit/specific.js</a></li>
 <li><a href="#trunkopenidmuiopenidmuicommonsrctestjsrunjs">trunk/openidm-ui/openidm-ui-common/src/test/js/run.js</a></li>
 <li><a href="#trunkopenidmuiopenidmuicommonsrctestqunitmockscleartextPWjs">trunk/openidm-ui/openidm-ui-common/src/test/qunit/mocks/cleartextPW.js</a></li>
 <li><a href="#trunkopenidmuiopenidmuicommonsrctestqunitmockssystemInitjs">trunk/openidm-ui/openidm-ui-common/src/test/qunit/mocks/systemInit.js</a></li>
 <li><a href="#trunkopenidmuiopenidmuicommonsrctestresourcesqunithtml">trunk/openidm-ui/openidm-ui-common/src/test/resources/qunit.html</a></li>
 <li><a href="#trunkopenidmuiopenidmuiendusersrcmainjsorgforgerockopenidmuiadminmainjs \
">trunk/openidm-ui/openidm-ui-enduser/src/main/js/org/forgerock/openidm/ui/admin/main.js</a></li>
 <li><a href="#trunkopenidmuipackagejson">trunk/openidm-ui/package.json</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li><a href="#trunkopenidmuiopenidmuicommonsrctestjsconfigjs">trunk/openidm-ui/openidm-ui-common/src/test/js/config.js</a></li>
 </ul>

<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkopenidmuiopenidmuiadminsrctestqunitmocksadminInitjs">trunk/openidm-ui/openidm-ui-admin/src/test/qunit/mocks/adminInit.js</a></li>
 <li><a href="#trunkopenidmuiopenidmuicommonsrctestjstextjs">trunk/openidm-ui/openidm-ui-common/src/test/js/text.js</a></li>
 </ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkopenidmuiGruntfilejs"></a>
<div class="modfile"><h4>Modified: trunk/openidm-ui/Gruntfile.js (5357 => 5358)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/openidm-ui/Gruntfile.js	2015-05-22 08:18:02 UTC (rev \
                5357)
+++ trunk/openidm-ui/Gruntfile.js	2015-05-22 20:48:56 UTC (rev 5358)
</span><span class="lines">@@ -109,17 +109,17 @@
</span><span class="cx">                         dest    : \
'openidm-ui-admin/target/www' </span><span class="cx">                     },
</span><span class="cx">                     {
</span><del>-                        cwd     : 'openidm-ui-common/main/js',
</del><ins>+                        cwd     : 'openidm-ui-common/src/main/js',
</ins><span class="cx">                         src     : ['**'],
</span><span class="cx">                         dest    : \
'openidm-ui-admin/target/www' </span><span class="cx">                     },
</span><span class="cx">                     {
</span><del>-                        cwd     : 'openidm-ui-common/main/resources',
</del><ins>+                        cwd     : 'openidm-ui-common/src/main/resources',
</ins><span class="cx">                         src     : ['**'],
</span><span class="cx">                         dest    : \
'openidm-ui-enduser/target/www' </span><span class="cx">                     },
</span><span class="cx">                     {
</span><del>-                        cwd     : 'openidm-ui-common/main/js',
</del><ins>+                        cwd     : 'openidm-ui-common/src/main/js',
</ins><span class="cx">                         src     : ['**'],
</span><span class="cx">                         dest    : \
'openidm-ui-enduser/target/www' </span><span class="cx">                     },
</span><span class="lines">@@ -227,14 +227,13 @@
</span><span class="cx">     });
</span><span class="cx"> 
</span><span class="cx">     grunt.loadNpmTasks('grunt-contrib-qunit');
</span><del>-
</del><span class="cx">     grunt.loadNpmTasks('grunt-contrib-watch');
</span><del>-    
</del><ins>+
</ins><span class="cx">     grunt.loadNpmTasks('grunt-notify');
</span><span class="cx"> 
</span><span class="cx">     grunt.loadNpmTasks('grunt-sync');
</span><span class="cx"> 
</span><span class="cx">     grunt.task.run('notify_hooks');
</span><del>-    grunt.registerTask('default', ['sync:target', 'sync:zip', \
'qunit:admin', 'qunit:enduser', 'watch']); </del><ins>+    \
grunt.registerTask('default', ['sync:target', 'sync:zip', 'watch']); </ins><span \
class="cx">  </span><span class="cx"> };
</span></span></pre></div>
<a id="trunkopenidmuiopenidmuiadminsrctestqunitmappingaddMappingTestjs"></a>
<div class="modfile"><h4>Modified: \
trunk/openidm-ui/openidm-ui-admin/src/test/qunit/mapping/addMappingTest.js (5357 => \
5358)</h4> <pre class="diff"><span>
<span class="info">--- \
trunk/openidm-ui/openidm-ui-admin/src/test/qunit/mapping/addMappingTest.js	2015-05-22 \
                08:18:02 UTC (rev 5357)
+++ trunk/openidm-ui/openidm-ui-admin/src/test/qunit/mapping/addMappingTest.js	2015-05-22 \
20:48:56 UTC (rev 5358) </span><span class="lines">@@ -30,15 +30,12 @@
</span><span class="cx">     \
&quot;org/forgerock/commons/ui/common/main/EventManager&quot;, </span><span \
class="cx">     &quot;org/forgerock/openidm/ui/admin/mapping/AddMappingView&quot;, \
</span><span class="cx">     \
&quot;org/forgerock/openidm/ui/admin/ResourcesView&quot;, </span><del>-    \
&quot;../mocks/adminInit&quot;, </del><span class="cx">     \
&quot;../mocks/addMapping&quot; </span><del>-], function (constants, router, \
eventManager, addMappingView, resourcesView, adminInit, addMapping) { </del><ins>+], \
function (constants, router, eventManager, addMappingView, resourcesView, addMapping) \
{ </ins><span class="cx"> 
</span><span class="cx">     return {
</span><span class="cx">         executeAll: function (server) {
</span><span class="cx"> 
</span><del>-            adminInit(server);
-
</del><span class="cx">             module('Add Mapping UI Functions');
</span><span class="cx"> 
</span><span class="cx">             QUnit.asyncTest(&quot;Add Mapping View&quot;, \
function () { </span><span class="lines">@@ -98,4 +95,4 @@
</span><span class="cx">             });
</span><span class="cx">         }
</span><span class="cx">     };
</span><del>-});
</del><span class="cx">\ No newline at end of file
</span><ins>+});
</ins></span></pre></div>
<a id="trunkopenidmuiopenidmuiadminsrctestqunitmappingreconTestsjs"></a>
<div class="modfile"><h4>Modified: \
trunk/openidm-ui/openidm-ui-admin/src/test/qunit/mapping/reconTests.js (5357 => \
5358)</h4> <pre class="diff"><span>
<span class="info">--- \
trunk/openidm-ui/openidm-ui-admin/src/test/qunit/mapping/reconTests.js	2015-05-22 \
                08:18:02 UTC (rev 5357)
+++ trunk/openidm-ui/openidm-ui-admin/src/test/qunit/mapping/reconTests.js	2015-05-22 \
20:48:56 UTC (rev 5358) </span><span class="lines">@@ -58,7 +58,7 @@
</span><span class="cx">                         \
_.size(SituationPolicyView.model.allPatterns[&quot;Default Actions&quot;].policies), \
</span><span class="cx">                         &quot;All situations are \
present&quot;); </span><span class="cx"> 
</span><del>-                    \
QUnit.ok(SituationPolicyView.$el.find(&quot;.situationRow .action&quot;)[0].length \
&gt;= 1, </del><ins>+                    \
QUnit.ok(SituationPolicyView.$el.find(&quot;table tbody tr&quot;).length &gt;= 1, \
</ins><span class="cx">                         &quot;All actions are present&quot;); \
</span><span class="cx">  </span><span class="cx">                     \
QUnit.equal(_.size(SituationPolicyView.model.allPatterns), </span><span \
class="lines">@@ -143,4 +143,4 @@ </span><span class="cx">             });
</span><span class="cx">         }
</span><span class="cx">     };
</span><del>-});
</del><span class="cx">\ No newline at end of file
</span><ins>+});
</ins></span></pre></div>
<a id="trunkopenidmuiopenidmuiadminsrctestqunitmocksadminInitjs"></a>
<div class="delfile"><h4>Deleted: \
trunk/openidm-ui/openidm-ui-admin/src/test/qunit/mocks/adminInit.js (5357 => \
5358)</h4> <pre class="diff"><span>
<span class="info">--- \
trunk/openidm-ui/openidm-ui-admin/src/test/qunit/mocks/adminInit.js	2015-05-22 \
                08:18:02 UTC (rev 5357)
+++ trunk/openidm-ui/openidm-ui-admin/src/test/qunit/mocks/adminInit.js	2015-05-22 \
20:48:56 UTC (rev 5358) </span><span class="lines">@@ -1,84 +0,0 @@
</span><del>-/**
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
- *
- * Copyright (c) 2014-2015 ForgeRock AS. All Rights Reserved
- *
- * The contents of this file are subject to the terms
- * of the Common Development and Distribution License
- * (the License). You may not use this file except in
- * compliance with the License.
- *
- * You can obtain a copy of the License at
- * http://forgerock.org/license/CDDLv1.0.html
- * See the License for the specific language governing
- * permission and limitations under the License.
- *
- * When distributing Covered Code, include this CDDL
- * Header Notice in each file and include the License file
- * at http://forgerock.org/license/CDDLv1.0.html
- * If applicable, add the following below the CDDL Header,
- * with the fields enclosed by brackets [] replaced by
- * your own identifying information:
- * &quot;Portions Copyrighted [year] [name of copyright owner]&quot;
- */
-
-/*global require, define*/
-define([
-
-    &quot;text!css/config/adminConfig.less&quot;,
-    &quot;text!css/config/adminStyle.less&quot;,
-    &quot;text!css/config/resourcesView.less&quot;,
-
-    &quot;text!css/fontawesome/less/forgerock-variables.less&quot;,
-    &quot;text!css/fontawesome/less/mixins.less&quot;,
-    &quot;text!css/fontawesome/less/path.less&quot;,
-    &quot;text!css/fontawesome/less/core.less&quot;,
-    &quot;text!css/fontawesome/less/larger.less&quot;,
-    &quot;text!css/fontawesome/less/fixed-width.less&quot;,
-    &quot;text!css/fontawesome/less/list.less&quot;,
-    &quot;text!css/fontawesome/less/bordered-pulled.less&quot;,
-    &quot;text!css/fontawesome/less/spinning.less&quot;,
-    &quot;text!css/fontawesome/less/rotated-flipped.less&quot;,
-    &quot;text!css/fontawesome/less/stacked.less&quot;,
-    &quot;text!css/fontawesome/less/icons.less&quot;
-], function () {
-
-    /* an unfortunate need to duplicate the file names here, but I haven't
-     yet found a way to fool requirejs into doing dynamic dependencies */
-    var staticFiles = [
-
-            &quot;css/config/adminConfig.less&quot;,
-            &quot;css/config/adminStyle.less&quot;,
-            &quot;css/config/resourcesView.less&quot;,
-
-            &quot;css/fontawesome/less/forgerock-variables.less&quot;,
-            &quot;css/fontawesome/less/mixins.less&quot;,
-            &quot;css/fontawesome/less/path.less&quot;,
-            &quot;css/fontawesome/less/core.less&quot;,
-            &quot;css/fontawesome/less/larger.less&quot;,
-            &quot;css/fontawesome/less/fixed-width.less&quot;,
-            &quot;css/fontawesome/less/list.less&quot;,
-            &quot;css/fontawesome/less/bordered-pulled.less&quot;,
-            &quot;css/fontawesome/less/spinning.less&quot;,
-            &quot;css/fontawesome/less/rotated-flipped.less&quot;,
-            &quot;css/fontawesome/less/stacked.less&quot;,
-            &quot;css/fontawesome/less/icons.less&quot;
-        ],
-        deps = arguments;
-
-    return function (server) {
-
-        _.each(staticFiles, function (file, i) {
-            server.respondWith(
-                &quot;GET&quot;,
-                new RegExp(file.replace(/([\/\.\-])/g, &quot;\\$1&quot;) + \
                &quot;$&quot;),
-                [
-                    200,
-                    { },
-                    deps[i]
-                ]
-            );
-        });
-        
-    };
-});
</del><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkopenidmuiopenidmuiadminsrctestqunitresourcesresourceTestjs"></a>
<div class="modfile"><h4>Modified: \
trunk/openidm-ui/openidm-ui-admin/src/test/qunit/resources/resourceTest.js (5357 => \
5358)</h4> <pre class="diff"><span>
<span class="info">--- \
trunk/openidm-ui/openidm-ui-admin/src/test/qunit/resources/resourceTest.js	2015-05-22 \
                08:18:02 UTC (rev 5357)
+++ trunk/openidm-ui/openidm-ui-admin/src/test/qunit/resources/resourceTest.js	2015-05-22 \
20:48:56 UTC (rev 5358) </span><span class="lines">@@ -30,9 +30,8 @@
</span><span class="cx">     \
&quot;org/forgerock/commons/ui/common/main/EventManager&quot;, </span><span \
class="cx">     &quot;org/forgerock/openidm/ui/admin/managed/AddEditManagedView&quot;,
 </span><span class="cx">     \
&quot;org/forgerock/openidm/ui/admin/ResourcesView&quot;, </span><del>-    \
&quot;../mocks/adminInit&quot;, </del><span class="cx">     \
&quot;../mocks/resourceDetails&quot; </span><del>-], function (constants, router, \
eventManager, addEditManagedView, resourcesView, adminInit, resourceDetails) { \
</del><ins>+], function (constants, router, eventManager, addEditManagedView, \
resourcesView, resourceDetails) { </ins><span class="cx"> 
</span><span class="cx">     return {
</span><span class="cx">         executeAll: function (server, callback) {
</span><span class="lines">@@ -62,4 +61,4 @@
</span><span class="cx">             });
</span><span class="cx">         }
</span><span class="cx">     };
</span><del>-});
</del><span class="cx">\ No newline at end of file
</span><ins>+});
</ins></span></pre></div>
<a id="trunkopenidmuiopenidmuiadminsrctestqunitspecificjs"></a>
<div class="modfile"><h4>Modified: \
trunk/openidm-ui/openidm-ui-admin/src/test/qunit/specific.js (5357 => 5358)</h4> <pre \
class="diff"><span> <span class="info">--- \
trunk/openidm-ui/openidm-ui-admin/src/test/qunit/specific.js	2015-05-22 08:18:02 UTC \
                (rev 5357)
+++ trunk/openidm-ui/openidm-ui-admin/src/test/qunit/specific.js	2015-05-22 20:48:56 \
UTC (rev 5358) </span><span class="lines">@@ -25,14 +25,13 @@
</span><span class="cx"> /*global require, define, QUnit, $ */
</span><span class="cx"> 
</span><span class="cx"> define([
</span><del>-    &quot;./mocks/adminInit&quot;,
</del><span class="cx">     &quot;./managedobjects/managedObjectsTest&quot;,
</span><span class="cx">     &quot;./resources/resourceTest&quot;,
</span><span class="cx">     &quot;./mapping/addMappingTest&quot;,
</span><span class="cx">     &quot;./mapping/reconTests&quot;,
</span><span class="cx">     &quot;./mapping/propertyMappingTest&quot;,
</span><span class="cx">     &quot;./mapping/correlationTest&quot;
</span><del>-], function (adminInit, moTest, resourceTest, addMappingTest, \
reconTests, propertyMappingTest, correlationTest) { </del><ins>+], function (moTest, \
resourceTest, addMappingTest, reconTests, propertyMappingTest, correlationTest) { \
</ins><span class="cx">  </span><span class="cx">     return {
</span><span class="cx">         executeAll: function (server) {
</span><span class="lines">@@ -40,7 +39,6 @@
</span><span class="cx">                 $(&quot;.bootstrap-dialog&quot;).remove();
</span><span class="cx">             });
</span><span class="cx"> 
</span><del>-            adminInit(server);
</del><span class="cx">             addMappingTest.executeAll(server);
</span><span class="cx">             resourceTest.executeAll(server);
</span><span class="cx">             reconTests.executeAll(server);
</span><span class="lines">@@ -49,4 +47,4 @@
</span><span class="cx">             propertyMappingTest.executeAll(server);
</span><span class="cx">         }
</span><span class="cx">     };
</span><del>-});
</del><span class="cx">\ No newline at end of file
</span><ins>+});
</ins></span></pre></div>
<a id="trunkopenidmuiopenidmuicommonsrctestjsconfigjs"></a>
<div class="addfile"><h4>Added: \
trunk/openidm-ui/openidm-ui-common/src/test/js/config.js (0 => 5358)</h4> <pre \
class="diff"><span> <span class="info">--- \
trunk/openidm-ui/openidm-ui-common/src/test/js/config.js	                        (rev \
                0)
+++ trunk/openidm-ui/openidm-ui-common/src/test/js/config.js	2015-05-22 20:48:56 UTC \
(rev 5358) </span><span class="lines">@@ -0,0 +1,69 @@
</span><ins>+/**
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+ *
+ * Copyright (c) 2015 ForgeRock AS.
+ *
+ * The contents of this file are subject to the terms
+ * of the Common Development and Distribution License
+ * (the License). You may not use this file except in
+ * compliance with the License.
+ *
+ * You can obtain a copy of the License at
+ * http://forgerock.org/license/CDDLv1.0.html
+ * See the License for the specific language governing
+ * permission and limitations under the License.
+ *
+ * When distributing Covered Code, include this CDDL
+ * Header Notice in each file and include the License file
+ * at http://forgerock.org/license/CDDLv1.0.html
+ * If applicable, add the following below the CDDL Header,
+ * with the fields enclosed by brackets [] replaced by
+ * your own identifying information:
+ * &quot;Portions Copyrighted [year] [name of copyright owner]&quot;
+ */
+
+/*global $, require, QUnit */
+
+require.config({
+    baseUrl: '../www',
+    paths: {
+        text: &quot;../test/text&quot;,
+        jquery: &quot;libs/jquery-2.1.1-min&quot;,
+        underscore: &quot;libs/lodash-2.4.1-min&quot;,
+        sinon: &quot;libs/sinon-1.12.2&quot;
+    },
+    shim: {
+        underscore: {
+            exports: &quot;_&quot;
+        },
+        sinon: {
+            exports: &quot;sinon&quot;
+        }
+    }
+});
+
+require([
+    &quot;../test/tests/mocks/systemInit&quot;,
+    &quot;underscore&quot;,
+    &quot;sinon&quot;
+], function (systemInit, _, sinon) {
+
+    sinon.FakeXMLHttpRequest.useFilters = true;
+    sinon.FakeXMLHttpRequest.addFilter(function (method, url, async, username, \
password) { +        if (/((translation\.json)|(less-1\.5\.1-min\.js))$/.test(url)) {
+            return false;
+        }
+
+        return /((\.html)|(\.css)|(\.less)|(\.json))$/.test(url);
+    });
+
+    var server = sinon.fakeServer.create();
+    server.autoRespond = true;
+    systemInit(server);
+
+    require(['../www/main','../test/run'], function (appMain, run) {
+        run(server);
+    });
+
+    return server;
+});
</ins></span></pre></div>
<a id="trunkopenidmuiopenidmuicommonsrctestjsrunjs"></a>
<div class="modfile"><h4>Modified: \
trunk/openidm-ui/openidm-ui-common/src/test/js/run.js (5357 => 5358)</h4> <pre \
class="diff"><span> <span class="info">--- \
trunk/openidm-ui/openidm-ui-common/src/test/js/run.js	2015-05-22 08:18:02 UTC (rev \
                5357)
+++ trunk/openidm-ui/openidm-ui-common/src/test/js/run.js	2015-05-22 20:48:56 UTC \
(rev 5358) </span><span class="lines">@@ -24,55 +24,44 @@
</span><span class="cx"> 
</span><span class="cx"> /*global $, require, QUnit */
</span><span class="cx"> 
</span><del>-require.config({
-    paths: {
-        sinon: &quot;../test/libs/sinon-1.12.2&quot;,
-        text: &quot;../test/text&quot;
-    },
-    shim: {
-        sinon: {
-            exports: &quot;sinon&quot;
-        }
-    }
-});
</del><span class="cx"> 
</span><del>-require([
</del><ins>+define([
+    &quot;jquery&quot;,
</ins><span class="cx">     \
&quot;org/forgerock/commons/ui/common/util/Constants&quot;, </span><span class="cx">  \
&quot;org/forgerock/commons/ui/common/main/EventManager&quot;, </span><span \
class="cx">     &quot;sinon&quot;, </span><del>-    \
&quot;../test/tests/mocks/systemInit&quot;, </del><span class="cx">     \
&quot;../test/tests/common&quot;, </span><span class="cx">     \
&quot;../test/tests/specific&quot; </span><del>-], function (constants, eventManager, \
sinon, systemInit, commonTests, specificTests) { </del><ins>+], function ($, \
constants, eventManager, sinon, commonTests, specificTests) { </ins><span class="cx"> \
 </span><del>-    var server = sinon.fakeServer.create();
-    server.autoRespond = true;
-    systemInit(server);
</del><ins>+    $.doTimeout = function (name, time, func) {
+        func(); // run the function immediately rather than delayed.
+    };
</ins><span class="cx"> 
</span><del>-    sinon.stub(eventManager, &quot;sendEvent&quot;, function (eventId, \
event) { </del><ins>+    return function (server) {
+        eventManager.registerListener(constants.EVENT_APP_INTIALIZED, function () {
+            QUnit.testStart(function () {
+                var vm = \
require(&quot;org/forgerock/commons/ui/common/main/ViewManager&quot;); </ins><span \
class="cx">  </span><del>-        // the normal behavior for sendEvent:
-        $(document).trigger(eventId, event);
</del><ins>+                vm.currentView = null;
+                vm.currentDialog = null;
+                vm.currentViewArgs = null;
+                vm.currentDialogArgs = null;
</ins><span class="cx"> 
</span><del>-        // special extended behavior for our stub:
-        if (eventId === constants.EVENT_APP_INTIALIZED) {
-            eventManager.sendEvent.restore();
-            // delayed testing start gives the app time to stablize during startup
-            _.delay(function () {
</del><ins>+                \
require(&quot;org/forgerock/commons/ui/common/main/Configuration&quot;).baseTemplate \
= null; +            });
+            QUnit.start();
</ins><span class="cx"> 
</span><del>-                QUnit.start();
</del><ins>+            commonTests.executeAll(server);
+            specificTests.executeAll(server);
</ins><span class="cx"> 
</span><del>-                commonTests.executeAll(server);
-                specificTests.executeAll(server);
</del><ins>+            QUnit.done(function () {
+                localStorage.clear();
+                Backbone.history.stop();
+                window.location.hash = &quot;&quot;;
+            });
</ins><span class="cx"> 
</span><del>-                QUnit.done(function () {
-                    Backbone.history.stop();
-                    window.location.hash = &quot;&quot;;
-                });
</del><ins>+        });
+    };
</ins><span class="cx"> 
</span><del>-            }, 100);
-        }
-
-    });
-
-});
</del><span class="cx">\ No newline at end of file
</span><ins>+});
</ins></span></pre></div>
<a id="trunkopenidmuiopenidmuicommonsrctestjstextjs"></a>
<div class="delfile"><h4>Deleted: \
trunk/openidm-ui/openidm-ui-common/src/test/js/text.js (5357 => 5358)</h4> <pre \
class="diff"><span> <span class="info">--- \
trunk/openidm-ui/openidm-ui-common/src/test/js/text.js	2015-05-22 08:18:02 UTC (rev \
                5357)
+++ trunk/openidm-ui/openidm-ui-common/src/test/js/text.js	2015-05-22 20:48:56 UTC \
(rev 5358) </span><span class="lines">@@ -1,386 +0,0 @@
</span><del>-/**
- * @license RequireJS text 2.0.10 Copyright (c) 2010-2012, The Dojo Foundation All \
                Rights Reserved.
- * Available via the MIT or new BSD license.
- * see: http://github.com/requirejs/text for details
- */
-/*jslint regexp: true */
-/*global require, XMLHttpRequest, ActiveXObject,
-  define, window, process, Packages,
-  java, location, Components, FileUtils */
-
-define(['module'], function (module) {
-    'use strict';
-
-    var text, fs, Cc, Ci, xpcIsWindows,
-        progIds = ['Msxml2.XMLHTTP', 'Microsoft.XMLHTTP', 'Msxml2.XMLHTTP.4.0'],
-        xmlRegExp = \
                /^\s*&lt;\?xml(\s)+version=[\'\&quot;](\d)*.(\d)*[\'\&quot;](\s)*\?&gt;/im,
                
-        bodyRegExp = /&lt;body[^&gt;]*&gt;\s*([\s\S]+)\s*&lt;\/body&gt;/im,
-        hasLocation = typeof location !== 'undefined' &amp;&amp; location.href,
-        defaultProtocol = hasLocation &amp;&amp; location.protocol &amp;&amp; \
                location.protocol.replace(/\:/, ''),
-        defaultHostName = hasLocation &amp;&amp; location.hostname,
-        defaultPort = hasLocation &amp;&amp; (location.port || undefined),
-        buildMap = {},
-        masterConfig = (module.config &amp;&amp; module.config()) || {};
-
-    text = {
-        version: '2.0.10',
-
-        strip: function (content) {
-            //Strips &lt;?xml ...?&gt; declarations so that external SVG and XML
-            //documents can be added to a document without worry. Also, if the \
                string
-            //is an HTML document, only the part inside the body tag is returned.
-            if (content) {
-                content = content.replace(xmlRegExp, &quot;&quot;);
-                var matches = content.match(bodyRegExp);
-                if (matches) {
-                    content = matches[1];
-                }
-            } else {
-                content = &quot;&quot;;
-            }
-            return content;
-        },
-
-        jsEscape: function (content) {
-            return content.replace(/(['\\])/g, '\\$1')
-                .replace(/[\f]/g, &quot;\\f&quot;)
-                .replace(/[\b]/g, &quot;\\b&quot;)
-                .replace(/[\n]/g, &quot;\\n&quot;)
-                .replace(/[\t]/g, &quot;\\t&quot;)
-                .replace(/[\r]/g, &quot;\\r&quot;)
-                .replace(/[\u2028]/g, &quot;\\u2028&quot;)
-                .replace(/[\u2029]/g, &quot;\\u2029&quot;);
-        },
-
-        createXhr: masterConfig.createXhr || function () {
-            //Would love to dump the ActiveX crap in here. Need IE 6 to die first.
-            var xhr, i, progId;
-            if (typeof XMLHttpRequest !== &quot;undefined&quot;) {
-                return new XMLHttpRequest();
-            } else if (typeof ActiveXObject !== &quot;undefined&quot;) {
-                for (i = 0; i &lt; 3; i += 1) {
-                    progId = progIds[i];
-                    try {
-                        xhr = new ActiveXObject(progId);
-                    } catch (e) {}
-
-                    if (xhr) {
-                        progIds = [progId];  // so faster next time
-                        break;
-                    }
-                }
-            }
-
-            return xhr;
-        },
-
-        /**
-         * Parses a resource name into its component parts. Resource names
-         * look like: module/name.ext!strip, where the !strip part is
-         * optional.
-         * @param {String} name the resource name
-         * @returns {Object} with properties &quot;moduleName&quot;, &quot;ext&quot; \
                and &quot;strip&quot;
-         * where strip is a boolean.
-         */
-        parseName: function (name) {
-            var modName, ext, temp,
-                strip = false,
-                index = name.indexOf(&quot;.&quot;),
-                isRelative = name.indexOf('./') === 0 ||
-                             name.indexOf('../') === 0;
-
-            if (index !== -1 &amp;&amp; (!isRelative || index &gt; 1)) {
-                modName = name.substring(0, index);
-                ext = name.substring(index + 1, name.length);
-            } else {
-                modName = name;
-            }
-
-            temp = ext || modName;
-            index = temp.indexOf(&quot;!&quot;);
-            if (index !== -1) {
-                //Pull off the strip arg.
-                strip = temp.substring(index + 1) === &quot;strip&quot;;
-                temp = temp.substring(0, index);
-                if (ext) {
-                    ext = temp;
-                } else {
-                    modName = temp;
-                }
-            }
-
-            return {
-                moduleName: modName,
-                ext: ext,
-                strip: strip
-            };
-        },
-
-        xdRegExp: /^((\w+)\:)?\/\/([^\/\\]+)/,
-
-        /**
-         * Is an URL on another domain. Only works for browser use, returns
-         * false in non-browser environments. Only used to know if an
-         * optimized .js version of a text resource should be loaded
-         * instead.
-         * @param {String} url
-         * @returns Boolean
-         */
-        useXhr: function (url, protocol, hostname, port) {
-            var uProtocol, uHostName, uPort,
-                match = text.xdRegExp.exec(url);
-            if (!match) {
-                return true;
-            }
-            uProtocol = match[2];
-            uHostName = match[3];
-
-            uHostName = uHostName.split(':');
-            uPort = uHostName[1];
-            uHostName = uHostName[0];
-
-            return (!uProtocol || uProtocol === protocol) &amp;&amp;
-                   (!uHostName || uHostName.toLowerCase() === \
                hostname.toLowerCase()) &amp;&amp;
-                   ((!uPort &amp;&amp; !uHostName) || uPort === port);
-        },
-
-        finishLoad: function (name, strip, content, onLoad) {
-            content = strip ? text.strip(content) : content;
-            if (masterConfig.isBuild) {
-                buildMap[name] = content;
-            }
-            onLoad(content);
-        },
-
-        load: function (name, req, onLoad, config) {
-            //Name has format: some.module.filext!strip
-            //The strip part is optional.
-            //if strip is present, then that means only get the string contents
-            //inside a body tag in an HTML string. For XML/SVG content it means
-            //removing the &lt;?xml ...?&gt; declarations so the content can be \
                inserted
-            //into the current doc without problems.
-
-            // Do not bother with the work if a build and text will
-            // not be inlined.
-            if (config.isBuild &amp;&amp; !config.inlineText) {
-                onLoad();
-                return;
-            }
-
-            masterConfig.isBuild = config.isBuild;
-
-            var parsed = text.parseName(name),
-                nonStripName = parsed.moduleName +
-                    (parsed.ext ? '.' + parsed.ext : ''),
-                url = req.toUrl(nonStripName),
-                useXhr = (masterConfig.useXhr) ||
-                         text.useXhr;
-
-            // Do not load if it is an empty: url
-            if (url.indexOf('empty:') === 0) {
-                onLoad();
-                return;
-            }
-
-            //Load the text. Use XHR if possible and in a browser.
-            if (!hasLocation || useXhr(url, defaultProtocol, defaultHostName, \
                defaultPort)) {
-                text.get(url, function (content) {
-                    text.finishLoad(name, parsed.strip, content, onLoad);
-                }, function (err) {
-                    if (onLoad.error) {
-                        onLoad.error(err);
-                    }
-                });
-            } else {
-                //Need to fetch the resource across domains. Assume
-                //the resource has been optimized into a JS module. Fetch
-                //by the module name + extension, but do not include the
-                //!strip part to avoid file system issues.
-                req([nonStripName], function (content) {
-                    text.finishLoad(parsed.moduleName + '.' + parsed.ext,
-                                    parsed.strip, content, onLoad);
-                });
-            }
-        },
-
-        write: function (pluginName, moduleName, write, config) {
-            if (buildMap.hasOwnProperty(moduleName)) {
-                var content = text.jsEscape(buildMap[moduleName]);
-                write.asModule(pluginName + &quot;!&quot; + moduleName,
-                               &quot;define(function () { return '&quot; +
-                                   content +
-                               &quot;';});\n&quot;);
-            }
-        },
-
-        writeFile: function (pluginName, moduleName, req, write, config) {
-            var parsed = text.parseName(moduleName),
-                extPart = parsed.ext ? '.' + parsed.ext : '',
-                nonStripName = parsed.moduleName + extPart,
-                //Use a '.js' file name so that it indicates it is a
-                //script that can be loaded across domains.
-                fileName = req.toUrl(parsed.moduleName + extPart) + '.js';
-
-            //Leverage own load() method to load plugin value, but only
-            //write out values that do not have the strip argument,
-            //to avoid any potential issues with ! in file names.
-            text.load(nonStripName, req, function (value) {
-                //Use own write() method to construct full module value.
-                //But need to create shell that translates writeFile's
-                //write() to the right interface.
-                var textWrite = function (contents) {
-                    return write(fileName, contents);
-                };
-                textWrite.asModule = function (moduleName, contents) {
-                    return write.asModule(moduleName, fileName, contents);
-                };
-
-                text.write(pluginName, nonStripName, textWrite, config);
-            }, config);
-        }
-    };
-
-    if (masterConfig.env === 'node' || (!masterConfig.env &amp;&amp;
-            typeof process !== &quot;undefined&quot; &amp;&amp;
-            process.versions &amp;&amp;
-            !!process.versions.node &amp;&amp;
-            !process.versions['node-webkit'])) {
-        //Using special require.nodeRequire, something added by r.js.
-        fs = require.nodeRequire('fs');
-
-        text.get = function (url, callback, errback) {
-            try {
-                var file = fs.readFileSync(url, 'utf8');
-                //Remove BOM (Byte Mark Order) from utf8 files if it is there.
-                if (file.indexOf('\uFEFF') === 0) {
-                    file = file.substring(1);
-                }
-                callback(file);
-            } catch (e) {
-                errback(e);
-            }
-        };
-    } else if (masterConfig.env === 'xhr' || (!masterConfig.env &amp;&amp;
-            text.createXhr())) {
-        text.get = function (url, callback, errback, headers) {
-            var xhr = text.createXhr(), header;
-            xhr.open('GET', url, true);
-
-            //Allow plugins direct access to xhr headers
-            if (headers) {
-                for (header in headers) {
-                    if (headers.hasOwnProperty(header)) {
-                        xhr.setRequestHeader(header.toLowerCase(), headers[header]);
-                    }
-                }
-            }
-
-            //Allow overrides specified in config
-            if (masterConfig.onXhr) {
-                masterConfig.onXhr(xhr, url);
-            }
-
-            xhr.onreadystatechange = function (evt) {
-                var status, err;
-                //Do not explicitly handle errors, those should be
-                //visible via console output in the browser.
-                if (xhr.readyState === 4) {
-                    status = xhr.status;
-                    if (status &gt; 399 &amp;&amp; status &lt; 600) {
-                        //An http 4xx or 5xx error. Signal an error.
-                        err = new Error(url + ' HTTP status: ' + status);
-                        err.xhr = xhr;
-                        errback(err);
-                    } else {
-                        callback(xhr.responseText);
-                    }
-
-                    if (masterConfig.onXhrComplete) {
-                        masterConfig.onXhrComplete(xhr, url);
-                    }
-                }
-            };
-            xhr.send(null);
-        };
-    } else if (masterConfig.env === 'rhino' || (!masterConfig.env &amp;&amp;
-            typeof Packages !== 'undefined' &amp;&amp; typeof java !== 'undefined')) \
                {
-        //Why Java, why is this so awkward?
-        text.get = function (url, callback) {
-            var stringBuffer, line,
-                encoding = &quot;utf-8&quot;,
-                file = new java.io.File(url),
-                lineSeparator = \
                java.lang.System.getProperty(&quot;line.separator&quot;),
-                input = new java.io.BufferedReader(new java.io.InputStreamReader(new \
                java.io.FileInputStream(file), encoding)),
-                content = '';
-            try {
-                stringBuffer = new java.lang.StringBuffer();
-                line = input.readLine();
-
-                // Byte Order Mark (BOM) - The Unicode Standard, version 3.0, page \
                324
-                // http://www.unicode.org/faq/utf_bom.html
-
-                // Note that when we use utf-8, the BOM should appear as &quot;EF BB \
                BF&quot;, but it doesn't due to this bug in the JDK:
-                // http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4508058
-                if (line &amp;&amp; line.length() &amp;&amp; line.charAt(0) === \
                0xfeff) {
-                    // Eat the BOM, since we've already found the encoding on this \
                file,
-                    // and we plan to concatenating this buffer with others; the BOM \
                should
-                    // only appear at the top of a file.
-                    line = line.substring(1);
-                }
-
-                if (line !== null) {
-                    stringBuffer.append(line);
-                }
-
-                while ((line = input.readLine()) !== null) {
-                    stringBuffer.append(lineSeparator);
-                    stringBuffer.append(line);
-                }
-                //Make sure we return a JavaScript string and not a Java string.
-                content = String(stringBuffer.toString()); //String
-            } finally {
-                input.close();
-            }
-            callback(content);
-        };
-    } else if (masterConfig.env === 'xpconnect' || (!masterConfig.env &amp;&amp;
-            typeof Components !== 'undefined' &amp;&amp; Components.classes \
                &amp;&amp;
-            Components.interfaces)) {
-        //Avert your gaze!
-        Cc = Components.classes,
-        Ci = Components.interfaces;
-        Components.utils['import']('resource://gre/modules/FileUtils.jsm');
-        xpcIsWindows = ('@mozilla.org/windows-registry-key;1' in Cc);
-
-        text.get = function (url, callback) {
-            var inStream, convertStream, fileObj,
-                readData = {};
-
-            if (xpcIsWindows) {
-                url = url.replace(/\//g, '\\');
-            }
-
-            fileObj = new FileUtils.File(url);
-
-            //XPCOM, you so crazy
-            try {
-                inStream = Cc['@mozilla.org/network/file-input-stream;1']
-                           .createInstance(Ci.nsIFileInputStream);
-                inStream.init(fileObj, 1, 0, false);
-
-                convertStream = Cc['@mozilla.org/intl/converter-input-stream;1']
-                                .createInstance(Ci.nsIConverterInputStream);
-                convertStream.init(inStream, &quot;utf-8&quot;, \
                inStream.available(),
-                Ci.nsIConverterInputStream.DEFAULT_REPLACEMENT_CHARACTER);
-
-                convertStream.readString(inStream.available(), readData);
-                convertStream.close();
-                inStream.close();
-                callback(readData.value);
-            } catch (e) {
-                throw new Error((fileObj &amp;&amp; fileObj.path || '') + ': ' + e);
-            }
-        };
-    }
-    return text;
-});
</del></span></pre></div>
<a id="trunkopenidmuiopenidmuicommonsrctestqunitmockscleartextPWjs"></a>
<div class="modfile"><h4>Modified: \
trunk/openidm-ui/openidm-ui-common/src/test/qunit/mocks/cleartextPW.js (5357 => \
5358)</h4> <pre class="diff"><span>
<span class="info">--- \
trunk/openidm-ui/openidm-ui-common/src/test/qunit/mocks/cleartextPW.js	2015-05-22 \
                08:18:02 UTC (rev 5357)
+++ trunk/openidm-ui/openidm-ui-common/src/test/qunit/mocks/cleartextPW.js	2015-05-22 \
20:48:56 UTC (rev 5358) </span><span class="lines">@@ -23,68 +23,45 @@
</span><span class="cx">  */
</span><span class="cx"> 
</span><span class="cx"> /*global require, define*/
</span><del>-define([
-    &quot;text!templates/common/DialogTemplate.html&quot;,
-    &quot;text!templates/admin/MandatoryPasswordChangeDialogTemplate.html&quot;
-], function () {
</del><ins>+define([ ], function () {
</ins><span class="cx"> 
</span><del>-    /* an unfortunate need to duplicate the file names here, but I \
                haven't
-     yet found a way to fool requirejs into doing dynamic dependencies */
-    var staticFiles = [
-            &quot;templates/common/DialogTemplate.html&quot;,
-            &quot;templates/admin/MandatoryPasswordChangeDialogTemplate.html&quot;
-        ],
-        deps = arguments;
-
</del><span class="cx">     return function (server) {
</span><del>-    
-        _.each(staticFiles, function (file, i) {
-            server.respondWith(
-                &quot;GET&quot;,
-                new RegExp(file.replace(/([\/\.\-])/g, &quot;\\$1&quot;) + \
                &quot;$&quot;),
-                [
-                    200,
-                    { },
-                    deps[i]
-                ]
-            );
-        });
</del><span class="cx"> 
</span><span class="cx">         server.respondWith(
</span><del>-            &quot;GET&quot;,   
</del><ins>+            &quot;GET&quot;,
</ins><span class="cx">             &quot;/openidm/info/login&quot;,
</span><span class="cx">             [
</span><del>-                200, 
</del><ins>+                200,
</ins><span class="cx">                 { },
</span><span class="cx">                 \
&quot;{\&quot;authorizationId\&quot;:{\&quot;id\&quot;:\&quot;openidm-admin\&quot;,\&q \
uot;component\&quot;:\&quot;repo/internal/user\&quot;,\&quot;roles\&quot;:[\&quot;open \
idm-admin\&quot;,\&quot;openidm-authorized\&quot;]},\&quot;parent\&quot;:{\&quot;id\&q \
uot;:\&quot;c0ab0f10-94dc-4c9c-9367-1e29f420b1b6\&quot;,\&quot;parent\&quot;:null,\&qu \
ot;class\&quot;:\&quot;org.forgerock.json.resource.RootContext\&quot;},\&quot;class\&q \
uot;:\&quot;org.forgerock.json.resource.SecurityContext\&quot;,\&quot;authenticationId\&quot;:\&quot;openidm-admin\&quot;}&quot;
 </span><span class="cx">             ]
</span><span class="cx">         );
</span><del>-    
</del><ins>+
</ins><span class="cx">         server.respondWith(
</span><del>-            &quot;GET&quot;,   
</del><ins>+            &quot;GET&quot;,
</ins><span class="cx">             \
&quot;/openidm/repo/internal/user/openidm-admin&quot;, </span><span class="cx">       \
[ </span><del>-                200, 
</del><ins>+                200,
</ins><span class="cx">                 { },
</span><span class="cx">                 \
&quot;{\&quot;_id\&quot;:\&quot;openidm-admin\&quot;,\&quot;_rev\&quot;:\&quot;1\&quot \
;,\&quot;roles\&quot;:\&quot;openidm-admin,openidm-authorized\&quot;,\&quot;userName\& \
quot;:\&quot;openidm-admin\&quot;,\&quot;password\&quot;:\&quot;openidm-admin\&quot;}&quot;
 </span><span class="cx">             ]
</span><span class="cx">         );
</span><del>-    
</del><ins>+
</ins><span class="cx">         server.respondWith(
</span><del>-            &quot;GET&quot;,   
</del><ins>+            &quot;GET&quot;,
</ins><span class="cx">             \
&quot;/openidm/policy/repo/internal/user/openidm-admin&quot;, </span><span \
class="cx">             [ </span><del>-                200, 
</del><ins>+                200,
</ins><span class="cx">                 { },
</span><span class="cx">                 \
&quot;{\&quot;resource\&quot;:\&quot;repo/internal/user/*\&quot;,\&quot;properties\&qu \
ot;:[{\&quot;policyRequirements\&quot;:[\&quot;CANNOT_CONTAIN_CHARACTERS\&quot;],\&quo \
t;policies\&quot;:[{\&quot;policyRequirements\&quot;:[\&quot;CANNOT_CONTAIN_CHARACTERS \
\&quot;],\&quot;params\&quot;:{\&quot;forbiddenChars\&quot;:[\&quot;/\&quot;]},\&quot; \
policyId\&quot;:\&quot;cannot-contain-characters\&quot;,\&quot;policyFunction\&quot;:\&quot;\\nfunction \
(fullObject, value, params, property) {\\n    var i, join = function (arr, d) {\\n    \
var j, list = \\\&quot;\\\&quot;;\\n        for (j in arr) {\\n            list += \
arr[j] + d;\\n        }\\n        return list.replace(new RegExp(d + \
\\\&quot;$\\\&quot;), \\\&quot;\\\&quot;);\\n    };\\n    if (typeof (value) === \
\\\&quot;string\\\&quot; &amp;&amp; value.length) {\\n        for (i in \
params.forbiddenChars) {\\n            if (value.indexOf(params.forbiddenChars[i]) \
!== -1) {\\n             return \
[{\\\&quot;policyRequirement\\\&quot;:\\\&quot;CANNOT_CONTAIN_CHARACTERS\\\&quot;, \
\\\&quot;params\\\&quot;:{\\\&quot;forbiddenChars\\\&quot;:join(params.forbiddenChars, \
\\\&quot;, \\\&quot;)}}];\\n            }\\n        }\\n    }\\n    return \
[];\\n}\\n\&quot;}],\&quot;name\&quot;:\&quot;_id\&quot;},{\&quot;policyRequirements\& \
quot;:[\&quot;REQUIRED\&quot;,\&quot;AT_LEAST_X_CAPITAL_LETTERS\&quot;,\&quot;AT_LEAST \
_X_NUMBERS\&quot;,\&quot;MIN_LENGTH\&quot;],\&quot;policies\&quot;:[{\&quot;policyRequ \
irements\&quot;:[\&quot;REQUIRED\&quot;],\&quot;policyId\&quot;:\&quot;required\&quot;,\&quot;policyFunction\&quot;:\&quot;\\nfunction \
(fullObject, value, params, propName) {\\n    if (value === undefined) {\\n        \
return [{\\\&quot;policyRequirement\\\&quot;:\\\&quot;REQUIRED\\\&quot;}];\\n    }\\n \
return [];\\n}\\n\&quot;},{\&quot;policyRequirements\&quot;:[\&quot;REQUIRED\&quot;],\ \
&quot;policyId\&quot;:\&quot;not-empty\&quot;,\&quot;policyFunction\&quot;:\&quot  \
;\\nfunction (fullObject, value, params, property) {\\n    if (value !== undefined \
&amp;&amp; (value === null || !value.length)) {\\n        return \
[{\\\&quot;policyRequirement\\\&quot;:\\\&quot;REQUIRED\\\&quot;}];\\n    } else {\\n \
return [];\\n    }\\n}\\n\&quot;},{\&quot;policyRequirements\&quot;:[\&quot;AT_LEAST_X \
_CAPITAL_LETTERS\&quot;],\&quot;params\&quot;:{\&quot;numCaps\&quot;:1},\&quot;policyI \
d\&quot;:\&quot;at-least-X-capitals\&quot;,\&quot;policyFunction\&quot;:\&quot;\\nfunction \
(fullObject, value, params, property) {\\n    var isRequired = \
_.find(this.failedPolicyRequirements, function (fpr) {\\n        return \
fpr.policyRequirement === \\\&quot;REQUIRED\\\&quot;;\\n    }), isNonEmptyString = \
(typeof (value) === \\\&quot;string\\\&quot; &amp;&amp; value.length), \
valuePassesRegexp = (function (v) {\\n        var test = isNonEmptyString ? \
v.match(/[(A-Z)]/g) : null;\\n        return test !== null &amp;&amp; test.length \
&gt;= params.numCaps;\\n    }(value));  \\n    if ((isRequired || isNonEmptyString) \
&amp;&amp; !valuePassesRegexp) {\\n        return \
[{\\\&quot;policyRequirement\\\&quot;:\\\&quot;AT_LEAST_X_CAPITAL_LETTERS\\\&quot;, \
\\\&quot;params\\\&quot;:{\\\&quot;numCaps\\\&quot;:params.numCaps}}];\\n    }\\n    \
return [];\\n}\\n\&quot;},{\&quot;policyRequirements\&quot;:[\&quot;AT_LEAST_X_NUMBERS \
\&quot;],\&quot;params\&quot;:{\&quot;numNums\&quot;:1},\&quot;policyId\&quot;:\&quot;at-least-X-numbers\&quot;,\&quot;policyFunction\&quot;:\&quot;\\nfunction \
(fullObject, value, params, property) {\\n    var isRequired = \
_.find(this.failedPolicyRequirements, function (fpr) {\\n        return \
fpr.policyRequirement === \\\&quot;REQUIRED\\\&quot;;\\n    }), isNonEmptyString = \
(typeof (value) === \\\&quot;string\\\&quot; &amp;&amp; value.length), \
valuePassesRegexp = (function (v) {\\n        var test = isNonEmptyString ? \
v.match(/\\\\d/g) : null;\\n        return test !== null &amp;&amp; test.length &gt;= \
params.numNums;\\n    }(value  ));\\n    if ((isRequired || isNonEmptyString) \
&amp;&amp; !valuePassesRegexp) {\\n        return \
[{\\\&quot;policyRequirement\\\&quot;:\\\&quot;AT_LEAST_X_NUMBERS\\\&quot;, \
\\\&quot;params\\\&quot;:{\\\&quot;numNums\\\&quot;:params.numNums}}];\\n    }\\n    \
return [];\\n}\\n\&quot;},{\&quot;policyRequirements\&quot;:[\&quot;MIN_LENGTH\&quot;] \
,\&quot;params\&quot;:{\&quot;minLength\&quot;:8},\&quot;policyId\&quot;:\&quot;minimum-length\&quot;,\&quot;policyFunction\&quot;:\&quot;\\nfunction \
(fullObject, value, params, property) {\\n    var isRequired = \
_.find(this.failedPolicyRequirements, function (fpr) {\\n        return \
fpr.policyRequirement === \\\&quot;REQUIRED\\\&quot;;\\n    }), isNonEmptyString = \
(typeof (value) === \\\&quot;string\\\&quot; &amp;&amp; value.length), hasMinLength = \
isNonEmptyString ? (value.length &gt;= params.minLength) : false;\\n    if \
((isRequired || isNonEmptyString) &amp;&amp; !hasMinLength) {\\n        return \
[{\\\&quot;policyRequirement\\\&quot;  :\\\&quot;MIN_LENGTH\\\&quot;, \
\\\&quot;params\\\&quot;:{\\\&quot;minLength\\\&quot;:params.minLength}}];\\n    }\\n \
return [];\\n}\\n\&quot;}],\&quot;name\&quot;:\&quot;password\&quot;}]}&quot; \
</span><span class="cx">             ] </span><span class="cx">         );
</span><del>-    
</del><ins>+
</ins><span class="cx">         server.respondWith(
</span><del>-            &quot;POST&quot;,   
</del><ins>+            &quot;POST&quot;,
</ins><span class="cx">             \
&quot;/openidm/policy/repo/internal/user/openidm-admin?_action=validateObject&quot;, \
</span><span class="cx">             [ </span><del>-                200, 
</del><ins>+                200,
</ins><span class="cx">                 { },
</span><span class="cx">                 \
&quot;{\&quot;result\&quot;:false,\&quot;failedPolicyRequirements\&quot;:[{\&quot;poli \
cyRequirements\&quot;:[{\&quot;policyRequirement\&quot;:\&quot;REQUIRED\&quot;}],\&quo \
t;property\&quot;:\&quot;password\&quot;},{\&quot;policyRequirements\&quot;:[{\&quot;p \
olicyRequirement\&quot;:\&quot;AT_LEAST_X_CAPITAL_LETTERS\&quot;,\&quot;params\&quot;: \
{\&quot;numCaps\&quot;:1}}],\&quot;property\&quot;:\&quot;password\&quot;},{\&quot;pol \
icyRequirements\&quot;:[{\&quot;policyRequirement\&quot;:\&quot;AT_LEAST_X_NUMBERS\&qu \
ot;,\&quot;params\&quot;:{\&quot;numNums\&quot;:1}}],\&quot;property\&quot;:\&quot;pas \
sword\&quot;},{\&quot;policyRequirements\&quot;:[{\&quot;policyRequirement\&quot;:\&qu \
ot;MIN_LENGTH\&quot;,\&quot;params\&quot;:{\&quot;minLength\&quot;:8}}],\&quot;property\&quot;:\&quot;password\&quot;}]}&quot;
 </span><span class="cx">             ]
</span></span></pre></div>
<a id="trunkopenidmuiopenidmuicommonsrctestqunitmockssystemInitjs"></a>
<div class="modfile"><h4>Modified: \
trunk/openidm-ui/openidm-ui-common/src/test/qunit/mocks/systemInit.js (5357 => \
5358)</h4> <pre class="diff"><span>
<span class="info">--- \
trunk/openidm-ui/openidm-ui-common/src/test/qunit/mocks/systemInit.js	2015-05-22 \
                08:18:02 UTC (rev 5357)
+++ trunk/openidm-ui/openidm-ui-common/src/test/qunit/mocks/systemInit.js	2015-05-22 \
20:48:56 UTC (rev 5358) </span><span class="lines">@@ -25,39 +25,18 @@
</span><span class="cx"> /*global require, define*/
</span><span class="cx"> define([
</span><span class="cx">     &quot;text!locales/en/translation.json&quot;,
</span><del>-    &quot;text!libs/less-1.5.1-min.js&quot;,
-    &quot;text!libs/bootstrap.min.js&quot;,
-    &quot;text!libs/bootstrap-dialog.min.js&quot;,
-    &quot;text!css/styles.less&quot;,
-    &quot;text!css/common/bootstrap.min.css&quot;,
-    &quot;text!css/common/bootstrap-dialog.css&quot;,
-    &quot;text!templates/common/LoginBaseTemplate.html&quot;,
-    &quot;text!templates/common/LoginTemplate.html&quot;,
-    &quot;text!templates/common/NavigationTemplate.html&quot;,
-    &quot;text!templates/common/FooterTemplate.html&quot;,
-    &quot;text!templates/common/DialogTemplate.html&quot;
</del><ins>+    &quot;text!libs/less-1.5.1-min.js&quot;
</ins><span class="cx"> ], function () {
</span><span class="cx"> 
</span><span class="cx">     /* an unfortunate need to duplicate the file names here, \
but I haven't </span><span class="cx">      yet found a way to fool requirejs into \
doing dynamic dependencies */ </span><span class="cx">     var staticFiles = [
</span><span class="cx">             &quot;locales/en/translation.json&quot;,
</span><del>-            &quot;libs/less-1.5.1-min.js&quot;,
-            &quot;libs/bootstrap.min.js&quot;,
-            &quot;libs/bootstrap-dialog.min.js&quot;,
-            &quot;css/styles.less&quot;,
-            &quot;css/common/bootstrap.min.css&quot;,
-            &quot;css/common/bootstrap-dialog.css&quot;,
-
-            &quot;templates/common/LoginBaseTemplate.html&quot;,
-            &quot;templates/common/LoginTemplate.html&quot;,
-            &quot;templates/common/NavigationTemplate.html&quot;,
-            &quot;templates/common/FooterTemplate.html&quot;,
-            &quot;templates/common/DialogTemplate.html&quot;
</del><ins>+            &quot;libs/less-1.5.1-min.js&quot;
</ins><span class="cx">         ],
</span><span class="cx">         deps = arguments;
</span><span class="cx"> 
</span><del>-    return function (server) {
</del><ins>+         return function (server) {
</ins><span class="cx"> 
</span><span class="cx">         _.each(staticFiles, function (file, i) {
</span><span class="cx">             server.respondWith(
</span><span class="lines">@@ -72,10 +51,10 @@
</span><span class="cx">         });
</span><span class="cx"> 
</span><span class="cx">         server.respondWith(
</span><del>-            &quot;GET&quot;,   
</del><ins>+            &quot;GET&quot;,
</ins><span class="cx">             &quot;/openidm/config/ui/configuration&quot;,
</span><span class="cx">             [
</span><del>-                200, 
</del><ins>+                200,
</ins><span class="cx">                 { },
</span><span class="cx">                 \
&quot;{\&quot;configuration\&quot;:{\&quot;defaultNotificationType\&quot;:\&quot;info\ \
&quot;,\&quot;passwordResetLink\&quot;:\&quot;\&quot;,\&quot;selfRegistration\&quot;:false,\&quot;roles\&quot;:{\&quot;openidm-tasks-manager\&quot;:\&quot;Tasks \
Manager\&quot;,\&quot;openidm-authorized\&quot;:\&quot;User\&quot;,\&quot;openidm-admi \
n\&quot;:\&quot;Administrator\&quot;},\&quot;notificationTypes\&quot;:{\&quot;error\&q \
uot;:{\&quot;iconPath\&quot;:\&quot;images/notifications/error.png\&quot;,\&quot;name\ \
&quot;:\&quot;common.notification.types.error\&quot;},\&quot;warning\&quot;:{\&quot;ic \
onPath\&quot;:\&quot;images/notifications/warning.png\&quot;,\&quot;name\&quot;:\&quot \
;common.notification.types.warning\&quot;},\&quot;info\&quot;:{\&quot;iconPath\&quot;: \
\&quot;images/notifications/info.png\&quot;,\&quot;name\&quot;:\&quot;common.notificat \
ion.types.info\&quot;}},\&quot;siteImages\&quot;:[\&quot;images/passphrase/mail.png\&quot;,\&quot;im
  ages/passphrase/user.png\&quot;,\&quot;images/passphrase/report.png\&quot;,\&quot;im \
ages/passphrase/twitter.png\&quot;],\&quot;siteIdentification\&quot;:false,\&quot;lang\&quot;:\&quot;en\&quot;,\&quot;securityQuestions\&quot;:false}}&quot;
 </span><span class="cx">             ]
</span><span class="lines">@@ -83,24 +62,24 @@
</span><span class="cx"> 
</span><span class="cx"> 
</span><span class="cx">         server.respondWith(
</span><del>-            &quot;GET&quot;,   
</del><ins>+            &quot;GET&quot;,
</ins><span class="cx">             &quot;/openidm/info/login&quot;,
</span><span class="cx">             [
</span><del>-                401, 
</del><ins>+                401,
</ins><span class="cx">                 { },
</span><span class="cx">                 &quot;{ \&quot;code\&quot;: 401, \
\&quot;reason\&quot;: \&quot;Unauthorized\&quot;, \&quot;message\&quot;: \
\&quot;Access Denied\&quot; }&quot; </span><span class="cx">             ]
</span><span class="cx">         );
</span><del>-    
</del><ins>+
</ins><span class="cx">         server.respondWith(
</span><del>-            &quot;GET&quot;,   
</del><ins>+            &quot;GET&quot;,
</ins><span class="cx">             &quot;/openidm/config/ui/themeconfig&quot;,
</span><span class="cx">             [
</span><del>-                200, 
</del><ins>+                200,
</ins><span class="cx">                 { },
</span><span class="cx">                 \
&quot;{\&quot;icon\&quot;:\&quot;favicon.ico\&quot;,\&quot;settings\&quot;:{\&quot;foo \
ter\&quot;:{\&quot;mailto\&quot;:\&quot;info@forgerock.com\&quot;,\&quot;phone\&quot;: \
\&quot;+47-2108-1746\&quot;},\&quot;logo\&quot;:{\&quot;title\&quot;:\&quot;ForgeRock\ \
&quot;,\&quot;src\&quot;:\&quot;images/logo.png\&quot;,\&quot;height\&quot;:\&quot;80\ \
&quot;,\&quot;alt\&quot;:\&quot;ForgeRock\&quot;,\&quot;width\&quot;:\&quot;120\&quot; \
},\&quot;lessVars\&quot;:{\&quot;active-menu-font-color\&quot;:\&quot;#f9f9f9\&quot;,\ \
&quot;color-active\&quot;:\&quot;#80b7ab\&quot;,\&quot;color-info\&quot;:\&quot;blue\& \
quot;,\&quot;color-error\&quot;:\&quot;#d97986\&quot;,\&quot;header-border-color\&quot \
;:\&quot;#5D5D5D\&quot;,\&quot;login-container-width\&quot;:\&quot;430px\&quot;,\&quot \
;button-hover-lightness\&quot;:\&quot;4%\&quot;,\&quot;input-border-invalid-color\&quo \
t;:\&quot;#f8b9b3\&quot;,\&quot;footer-height\&quot;:\&quot;126px\&quot;,\&quot;color-war
  ning\&quot;:\&quot;yellow\&quot;,\&quot;line-height\&quot;:\&quot;18px\&quot;,\&quot \
;message-background-color\&quot;:\&quot;#fff\&quot;,\&quot;column-padding\&quot;:\&quo \
t;0px\&quot;,\&quot;href-color-hover\&quot;:\&quot;#5e887f\&quot;,\&quot;input-border- \
basic\&quot;:\&quot;#DBDBDB\&quot;,\&quot;font-size\&quot;:\&quot;14px\&quot;,\&quot;b \
ackground-font-color\&quot;:\&quot;#5a646d\&quot;,\&quot;login-container-label-align\& \
quot;:\&quot;left\&quot;,\&quot;background-image\&quot;:\&quot;url('../images/box-bg.png')\&quot;,\&quot;background-position\&quot;:\&quot;950px \
-100px\&quot;,\&quot;input-background-invalid-color\&quot;:\&quot;#fff\&quot;,\&quot;c \
ontent-background\&quot;:\&quot;#f9f9f9\&quot;,\&quot;highlight-color\&quot;:\&quot;#e \
eea07\&quot;,\&quot;background-color\&quot;:\&quot;#eee\&quot;,\&quot;inactive-menu-co \
lor\&quot;:\&quot;#5d6871\&quot;,\&quot;href-color\&quot;:\&quot;#80b7ab\&quot;,\&quot;active-menu-color\&quot;:\&quot;#80b7ab\&quot;,\&quot;site-width\&quot;
  :\&quot;960px\&quot;,\&quot;input-background-color\&quot;:\&quot;#fff\&quot;,\&quot; \
color-inactive\&quot;:\&quot;gray\&quot;,\&quot;inactive-menu-font-color\&quot;:\&quot;#f9f9f9\&quot;,\&quot;font-family\&quot;:\&quot;Arial, \
Helvetica, sans-serif\&quot;,\&quot;font-color\&quot;:\&quot;#5a646d\&quot;,\&quot;footer-background-color\&quot;:\&quot;rgba(238, \
238, 238, 0.7)\&quot;,\&quot;medium-container-width\&quot;:\&quot;850px\&quot;,\&quot; \
color-success\&quot;:\&quot;#71bd71\&quot;,\&quot;background-repeat\&quot;:\&quot;no-repeat\&quot;}}}&quot;
 </span><span class="cx">             ]
</span><span class="cx">         );
</span><span class="cx"> 
</span><span class="cx">     };
</span><del>-});
</del><span class="cx">\ No newline at end of file
</span><ins>+});
</ins></span></pre></div>
<a id="trunkopenidmuiopenidmuicommonsrctestresourcesqunithtml"></a>
<div class="modfile"><h4>Modified: \
trunk/openidm-ui/openidm-ui-common/src/test/resources/qunit.html (5357 => 5358)</h4> \
<pre class="diff"><span> <span class="info">--- \
trunk/openidm-ui/openidm-ui-common/src/test/resources/qunit.html	2015-05-22 08:18:02 \
                UTC (rev 5357)
+++ trunk/openidm-ui/openidm-ui-common/src/test/resources/qunit.html	2015-05-22 \
20:48:56 UTC (rev 5358) </span><span class="lines">@@ -1,9 +1,9 @@
</span><span class="cx"> &lt;!DOCTYPE html&gt;
</span><span class="cx"> &lt;html&gt;
</span><span class="cx"> &lt;head&gt;
</span><del>-    &lt;base href=&quot;../www/&quot;&gt;
</del><ins>+    &lt;base href=&quot;../www/&quot; /&gt;
</ins><span class="cx">     &lt;meta charset=&quot;utf-8&quot;&gt;
</span><del>-    &lt;title&gt;QUnit Tests&lt;/title&gt;
</del><ins>+    &lt;title&gt;ForgeRock UI - QUnit Tests&lt;/title&gt;
</ins><span class="cx">     &lt;link rel=&quot;stylesheet&quot; \
href=&quot;../test/css/qunit-1.14.0.css&quot;&gt; </span><span class="cx"> \
&lt;/head&gt; </span><span class="cx"> &lt;body&gt;
</span><span class="lines">@@ -16,17 +16,16 @@
</span><span class="cx">         &lt;div id=&quot;popup&quot;&gt;
</span><span class="cx">             &lt;div id=&quot;popup-content&quot; \
class=&quot;radious&quot;&gt;&lt;/div&gt; </span><span class="cx">         \
&lt;/div&gt; </span><del>-        &lt;div id=&quot;footer&quot;&gt;&lt;/div&gt;
</del><ins>+
</ins><span class="cx">         &lt;div \
id=&quot;dialog-background&quot;&gt;&lt;/div&gt; </span><span class="cx">         \
&lt;div id=&quot;dialogs&quot;&gt;&lt;/div&gt; </span><del>-        &lt;div \
id=&quot;content&quot;&gt;&lt;/div&gt; </del><ins>+        &lt;footer \
id=&quot;footer&quot; class=&quot;footer&quot;&gt;&lt;/footer&gt; </ins><span \
class="cx">  </span><span class="cx">     &lt;/div&gt;
</span><span class="cx"> 
</span><span class="cx">     &lt;script \
src=&quot;../test/libs/qunit-1.15.0.js&quot;&gt;&lt;/script&gt; </span><span \
class="cx">     &lt;script&gt;QUnit.config.autostart = false;&lt;/script&gt; \
</span><span class="cx">  </span><del>-    &lt;script data-main=&quot;main&quot; \
                src=&quot;libs/requirejs-2.1.14-min.js&quot;&gt;&lt;/script&gt;
-    &lt;script src=&quot;../test/run.js&quot;&gt;&lt;/script&gt;
</del><ins>+    &lt;script data-main=&quot;../test/config&quot; \
src=&quot;libs/requirejs-2.1.14-min.js&quot;&gt;&lt;/script&gt; </ins><span \
class="cx"> &lt;/body&gt; </span><span class="cx"> &lt;/html&gt;
</span></span></pre></div>
<a id="trunkopenidmuiopenidmuiendusersrcmainjsorgforgerockopenidmuiadminmainjs"></a>
<div class="modfile"><h4>Modified: \
trunk/openidm-ui/openidm-ui-enduser/src/main/js/org/forgerock/openidm/ui/admin/main.js \
(5357 => 5358)</h4> <pre class="diff"><span>
<span class="info">--- \
trunk/openidm-ui/openidm-ui-enduser/src/main/js/org/forgerock/openidm/ui/admin/main.js	2015-05-22 \
                08:18:02 UTC (rev 5357)
+++ trunk/openidm-ui/openidm-ui-enduser/src/main/js/org/forgerock/openidm/ui/admin/main.js	2015-05-22 \
20:48:56 UTC (rev 5358) </span><span class="lines">@@ -31,16 +31,16 @@
</span><span class="cx">     &quot;./users/AdminUserProfileView&quot;,
</span><span class="cx">     &quot;./users/ChangeUserPasswordDialog&quot;,
</span><span class="cx">     &quot;./users/UsersView&quot;,
</span><del>-	
</del><ins>+    
</ins><span class="cx">     &quot;./workflow/FormManager&quot;,
</span><del>-	
</del><ins>+    
</ins><span class="cx">     &quot;./workflow/tasks/TaskDetailsView&quot;,
</span><span class="cx">     &quot;./workflow/tasks/AbstractTaskForm&quot;,
</span><span class="cx">     \
&quot;./workflow/tasks/customview/ApplicationAcceptanceTask&quot;, </span><span \
class="cx">     &quot;./workflow/tasks/TasksMenuView&quot;, </span><span class="cx">  \
&quot;./workflow/tasks/TasksDashboard&quot;, </span><span class="cx">     \
&quot;./workflow/tasks/TemplateTaskForm&quot;, </span><del>-	
</del><ins>+    
</ins><span class="cx">     &quot;./workflow/processes/AbstractProcessForm&quot;,
</span><span class="cx">     \
&quot;./workflow/processes/StartProcessDashboardView&quot;, </span><span class="cx"> 
</span><span class="lines">@@ -51,9 +51,9 @@
</span><span class="cx">     &quot;./Dashboard&quot;,
</span><span class="cx">     
</span><span class="cx">     &quot;./ManagedObjectNavigation&quot;,
</span><del>-	
</del><ins>+    
</ins><span class="cx">     &quot;./notifications/NotificationDelegate&quot;,
</span><span class="cx">     &quot;./notifications/NotificationsView&quot;,
</span><span class="cx">     &quot;./notifications/NotificationViewHelper&quot;
</span><del>-	
</del><ins>+    
</ins><span class="cx"> ]);
</span><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkopenidmuipackagejson"></a>
<div class="modfile"><h4>Modified: trunk/openidm-ui/package.json (5357 => 5358)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/openidm-ui/package.json	2015-05-22 08:18:02 UTC (rev \
                5357)
+++ trunk/openidm-ui/package.json	2015-05-22 20:48:56 UTC (rev 5358)
</span><span class="lines">@@ -10,4 +10,4 @@
</span><span class="cx">     &quot;grunt-jslint&quot;: &quot;1.1.8&quot;,
</span><span class="cx">     &quot;grunt-contrib-qunit&quot;: &quot;~0.4.0&quot;
</span><span class="cx">   }
</span><del>-}
</del><span class="cx">\ No newline at end of file
</span><ins>+}
</ins></span></pre>
</div>
</div>
<div id="footer">Copyright (c) by ForgeRock. All rights reserved.</div>

</body>
</html>



_______________________________________________
CommitOpenIDM mailing list
CommitOpenIDM@forgerock.org
https://lists.forgerock.org/mailman/listinfo/commitopenidm


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic