ambari-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From niti...@apache.org
Subject [1/4] ambari git commit: AMBARI-19031: UI Enhancements, import/export assets and smart version configuration (Padma Priya via nitirajrathore)
Date Fri, 16 Dec 2016 09:32:57 GMT
Repository: ambari
Updated Branches:
  refs/heads/branch-2.5 c63d69276 -> 9bc0b9960


http://git-wip-us.apache.org/repos/asf/ambari/blob/9bc0b996/contrib/views/wfmanager/src/main/resources/ui/app/templates/components/search-create-new-bar.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/wfmanager/src/main/resources/ui/app/templates/components/search-create-new-bar.hbs
b/contrib/views/wfmanager/src/main/resources/ui/app/templates/components/search-create-new-bar.hbs
index 211f720..33539ea 100644
--- a/contrib/views/wfmanager/src/main/resources/ui/app/templates/components/search-create-new-bar.hbs
+++ b/contrib/views/wfmanager/src/main/resources/ui/app/templates/components/search-create-new-bar.hbs
@@ -27,7 +27,7 @@
           <li {{action 'search' 'bundles'}}><a href="#">Bundles</a></li>
         </ul>
       </div>
-      <input id="search-field" type="text" class="form-control" data-role="tagsinput"
placeholder="Start typing to filter" aria-describedby="basic-addon1">
+      <input id="search-field" type="text" class="form-control" data-role="tagsinput"
placeholder="Filter(Eg:name:workflowname)" aria-describedby="basic-addon1">
       <div class="search-icon"><i class="fa fa-search"></i></div>
     </div>
   </div>

http://git-wip-us.apache.org/repos/asf/ambari/blob/9bc0b996/contrib/views/wfmanager/src/main/resources/ui/app/templates/components/search-table.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/wfmanager/src/main/resources/ui/app/templates/components/search-table.hbs
b/contrib/views/wfmanager/src/main/resources/ui/app/templates/components/search-table.hbs
index 8b27496..33e3d56 100644
--- a/contrib/views/wfmanager/src/main/resources/ui/app/templates/components/search-table.hbs
+++ b/contrib/views/wfmanager/src/main/resources/ui/app/templates/components/search-table.hbs
@@ -23,9 +23,10 @@
       <th>Name</th>
       <th>Status</th>
       <th>User</th>
-      <th>Created Time</th>
+      <!--th>Created Time</th-->
       <th>Start Time</th>
       <th>End Time</th>
+      <th>Job Id</th>
       <th>
         Action
         {{#if showBulkAction}}

http://git-wip-us.apache.org/repos/asf/ambari/blob/9bc0b996/contrib/views/wfmanager/src/main/resources/ui/app/templates/components/workflow-actions.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/wfmanager/src/main/resources/ui/app/templates/components/workflow-actions.hbs
b/contrib/views/wfmanager/src/main/resources/ui/app/templates/components/workflow-actions.hbs
index 7c883af..50a87d8 100644
--- a/contrib/views/wfmanager/src/main/resources/ui/app/templates/components/workflow-actions.hbs
+++ b/contrib/views/wfmanager/src/main/resources/ui/app/templates/components/workflow-actions.hbs
@@ -28,8 +28,14 @@
       <div class="clearfix"></div>
       <h4>Action Nodes</h4>
       {{#if clipboardHasContents}}
-        <div><span class="paste-action">Paste from clipboard</span><span
class="btn paste-action-btn" {{action 'pasteNode'}}><i class="fa fa-paste"></i></span></div>
+        <div>
+           <span class="btn paste-action-btn" {{action 'pasteNode'}}>
+             <i class="fa fa-paste"></i>
+             <span class="paste-action">Paste from clipboard</span>
+           </span>
+        </div>     
       {{/if}}
+      <div {{action 'showImportActionNodeFileBrowser'}} class="btn btn-default"> <i
class="fa fa-download"></i> <span class="paste-action">Import action</span></div>
       <div class="clearfix"></div>
       <ul class="actions_list_left actionNodes">
           <li {{action 'addAction' 'hive'}} class="dr_action enabled" data-name="Hive"
data-type="hive"> <i class="fa fa-server"></i> Hive </li>

http://git-wip-us.apache.org/repos/asf/ambari/blob/9bc0b996/contrib/views/wfmanager/src/main/resources/ui/app/templates/components/workflow-icon.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/wfmanager/src/main/resources/ui/app/templates/components/workflow-icon.hbs
b/contrib/views/wfmanager/src/main/resources/ui/app/templates/components/workflow-icon.hbs
new file mode 100644
index 0000000..43de986
--- /dev/null
+++ b/contrib/views/wfmanager/src/main/resources/ui/app/templates/components/workflow-icon.hbs
@@ -0,0 +1,24 @@
+{{!
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements.  See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership.  The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+}}
+{{#if (eq workflowType "bundles")}}
+  <i class="fa fa-cubes"></i>
+{{else if (eq workflowType "coords")}}
+  <i class="fa fa-history"></i>
+{{else}}
+  <i class="fa fa-sitemap"></i>
+{{/if}}

http://git-wip-us.apache.org/repos/asf/ambari/blob/9bc0b996/contrib/views/wfmanager/src/main/resources/ui/app/templates/components/workflow-job-details.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/wfmanager/src/main/resources/ui/app/templates/components/workflow-job-details.hbs
b/contrib/views/wfmanager/src/main/resources/ui/app/templates/components/workflow-job-details.hbs
index 5b33c41..114ca37 100644
--- a/contrib/views/wfmanager/src/main/resources/ui/app/templates/components/workflow-job-details.hbs
+++ b/contrib/views/wfmanager/src/main/resources/ui/app/templates/components/workflow-job-details.hbs
@@ -128,7 +128,9 @@
   <div role="tabpanel" class="tab-pane" id="jobDefinition">
     <div class="panel panel-default">
       <div class="panel-body preview">
-        <pre class="prettyprint">{{model.jobDefinition}}</pre>
+        <pre class="prettyprint">
+          {{ivy-codemirror value=jobDefinition options=(hash lineNumbers=false mode="xml"
indentWithTabs=true readOnly=true)}}
+        </pre>
       </div>
     </div>
   </div>
@@ -143,7 +145,7 @@
             </tr>
           </thead>
           <tbody>
-            {{#each model.configurationProperties as |configurationProperty|}}
+            {{#each configurationProperties as |configurationProperty|}}
               <tr>
                 <td class="propertyName">{{configurationProperty.name}}</td>
                 <td class="propertyValue">{{configurationProperty.value}}</td>
@@ -231,20 +233,20 @@
               </div>
             </div>
             {{#if model.actionDetails}}
-            <div class="modal fade" role="dialog" id="actionDetailsModal">
-              <div class="modal-dialog">
-                <div class="modal-content">
-                  <div class="modal-header">
-                    <button type="button" class="close" data-dismiss="modal">&times;</button>
-                    <h4 class="modal-title">Job Action Details</h4>
-                  </div>
-                  <div class="modal-body">
-                    {{#workflow-job-action-info actionInfo=model.actionDetails}}
-                    {{/workflow-job-action-info}}
+              <div class="modal fade" role="dialog" id="actionDetailsModal">
+                <div class="modal-dialog">
+                  <div class="modal-content">
+                    <div class="modal-header">
+                      <button type="button" class="close" data-dismiss="modal">&times;</button>
+                      <h4 class="modal-title">Job Action Details</h4>
+                    </div>
+                    <div class="modal-body">
+                      {{#workflow-job-action-info actionInfo=model.actionDetails}}
+                      {{/workflow-job-action-info}}
+                    </div>
                   </div>
                 </div>
               </div>
-            </div>
             {{/if}}
             {{/if}}
           </div>

http://git-wip-us.apache.org/repos/asf/ambari/blob/9bc0b996/contrib/views/wfmanager/src/main/resources/ui/app/templates/design.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/wfmanager/src/main/resources/ui/app/templates/design.hbs b/contrib/views/wfmanager/src/main/resources/ui/app/templates/design.hbs
index cb0462c..d52c893 100644
--- a/contrib/views/wfmanager/src/main/resources/ui/app/templates/design.hbs
+++ b/contrib/views/wfmanager/src/main/resources/ui/app/templates/design.hbs
@@ -15,4 +15,4 @@
 * See the License for the specific language governing permissions and
 * limitations under the License.
 }}
-{{designer-workspace xmlAppPath=xmlAppPath}}
+{{designer-workspace xmlAppPath=xmlAppPath showDashboard="showDashboard" hideDashboard="hideDashboard"}}

http://git-wip-us.apache.org/repos/asf/ambari/blob/9bc0b996/contrib/views/wfmanager/src/main/resources/ui/app/templates/design/dashboardtab.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/wfmanager/src/main/resources/ui/app/templates/design/dashboardtab.hbs
b/contrib/views/wfmanager/src/main/resources/ui/app/templates/design/dashboardtab.hbs
new file mode 100644
index 0000000..78c3595
--- /dev/null
+++ b/contrib/views/wfmanager/src/main/resources/ui/app/templates/design/dashboardtab.hbs
@@ -0,0 +1,30 @@
+{{!
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements.  See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership.  The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+}}
+
+<div id="dashboard" class="panel panel-default">
+    {{outlet 'error'}}
+    <div class="panel-body main-panel">
+      {{#search-create-new-bar onSearch="doSearch" onCreate="launchDesign" onRefresh="doRefresh"
jobType=model.type filterParams=filterParams}}{{/search-create-new-bar}}
+      {{#search-table onSearch="doSearch" onAction="onJobAction" onShowJobDetails="onShowJobDetails"
onBulkAction="onBulkAction" doRefresh="doRefresh" jobs=model jobType=model.type}}{{/search-table}}
+    </div>
+</div>
+<div >
+<div id='loading'>
+    {{spin-spinner lines=13 length=20 width=10}}
+</div>
+</div>

http://git-wip-us.apache.org/repos/asf/ambari/blob/9bc0b996/contrib/views/wfmanager/src/main/resources/ui/app/templates/design/jobtab.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/wfmanager/src/main/resources/ui/app/templates/design/jobtab.hbs
b/contrib/views/wfmanager/src/main/resources/ui/app/templates/design/jobtab.hbs
new file mode 100644
index 0000000..8c0c1dc
--- /dev/null
+++ b/contrib/views/wfmanager/src/main/resources/ui/app/templates/design/jobtab.hbs
@@ -0,0 +1,21 @@
+{{!
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements.  See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership.  The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+}}
+{{#job-details from=from back="back" model=model error=error currentTab=currentTab
+onTabChange="onTabChange" close="close" doRefresh="doRefresh" showWorkflow="showWorkflow"
+showCoord="showCoord" dashboardContext=dashboardContext fromBundleId=fromBundleId
+fromCoordId=fromCoordId editWorkflow="editWorkflow"}}{{/job-details}}

http://git-wip-us.apache.org/repos/asf/ambari/blob/9bc0b996/contrib/views/wfmanager/src/main/resources/ui/app/templates/job.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/wfmanager/src/main/resources/ui/app/templates/job.hbs b/contrib/views/wfmanager/src/main/resources/ui/app/templates/job.hbs
index 0a6da66..04efe5b 100644
--- a/contrib/views/wfmanager/src/main/resources/ui/app/templates/job.hbs
+++ b/contrib/views/wfmanager/src/main/resources/ui/app/templates/job.hbs
@@ -15,4 +15,4 @@
 * See the License for the specific language governing permissions and
 * limitations under the License.
 }}
-{{#job-details from=from back="back" model=model error=error currentTab=currentTab onTabChange="onTabChange"
close="close" doRefresh="doRefresh" showWorkflow="showWorkflow" showCoord="showCoord"}}{{/job-details}}
+{{#job-details from=from back="back" model=model error=error currentTab=currentTab onTabChange="onTabChange"
close="close" doRefresh="doRefresh" showWorkflow="showWorkflow" showCoord="showCoord" dashboardContext=dashboardContext
fromBundleId=fromBundleId fromCoordId=fromCoordId}}{{/job-details}}

http://git-wip-us.apache.org/repos/asf/ambari/blob/9bc0b996/contrib/views/wfmanager/src/main/resources/ui/app/utils/common-utils.js
----------------------------------------------------------------------
diff --git a/contrib/views/wfmanager/src/main/resources/ui/app/utils/common-utils.js b/contrib/views/wfmanager/src/main/resources/ui/app/utils/common-utils.js
index e575d20..e3be7da 100644
--- a/contrib/views/wfmanager/src/main/resources/ui/app/utils/common-utils.js
+++ b/contrib/views/wfmanager/src/main/resources/ui/app/utils/common-utils.js
@@ -22,5 +22,8 @@ export default Ember.Object.create({
   },
   extractSchema(xmlns){
     return xmlns.substr(0,xmlns.lastIndexOf(":"));
+  },
+  setTestContext(context){
+    window.flowDesignerTestContext=context;
   }
 });

http://git-wip-us.apache.org/repos/asf/ambari/blob/9bc0b996/contrib/views/wfmanager/src/main/resources/ui/app/utils/constants.js
----------------------------------------------------------------------
diff --git a/contrib/views/wfmanager/src/main/resources/ui/app/utils/constants.js b/contrib/views/wfmanager/src/main/resources/ui/app/utils/constants.js
index 2f7df82..6e281d3 100644
--- a/contrib/views/wfmanager/src/main/resources/ui/app/utils/constants.js
+++ b/contrib/views/wfmanager/src/main/resources/ui/app/utils/constants.js
@@ -37,7 +37,7 @@ export default Ember.Object.create({
     hiveAction:{name : "hive",supportsSchema : true, currentVersion:''},
     hive2Action:{name : "hive2",supportsSchema : true, currentVersion:''},
     javaAction:{name : "java",supportsSchema : false, currentVersion:''},
-    pigAction:{name : "pig",supportsSchema : true, currentVersion:''},
+    pigAction:{name : "pig",supportsSchema : false, currentVersion:''},
     sqoopAction:{name : "sqoop",supportsSchema : true, currentVersion:''},
     shellAction:{name : "shell",supportsSchema : true, currentVersion:''},
     sparkAction:{name : "spark",supportsSchema : true, currentVersion:''},

http://git-wip-us.apache.org/repos/asf/ambari/blob/9bc0b996/contrib/views/wfmanager/src/main/resources/ui/bower.json
----------------------------------------------------------------------
diff --git a/contrib/views/wfmanager/src/main/resources/ui/bower.json b/contrib/views/wfmanager/src/main/resources/ui/bower.json
index 0d897f1..7fc1736 100644
--- a/contrib/views/wfmanager/src/main/resources/ui/bower.json
+++ b/contrib/views/wfmanager/src/main/resources/ui/bower.json
@@ -25,6 +25,7 @@
     "vkBeautify": "https://github.com/vkiryukhin/vkBeautify.git",
     "cytoscape": "^2.7.7",
     "cytoscape-dagre": "^1.3.0",
-    "cytoscape-panzoom": "^2.4.0"
+    "cytoscape-panzoom": "^2.4.0",
+    "codemirror": "~5.15.0"
   }
 }

http://git-wip-us.apache.org/repos/asf/ambari/blob/9bc0b996/contrib/views/wfmanager/src/main/resources/ui/ember-cli-build.js
----------------------------------------------------------------------
diff --git a/contrib/views/wfmanager/src/main/resources/ui/ember-cli-build.js b/contrib/views/wfmanager/src/main/resources/ui/ember-cli-build.js
index 5f8b81c..5dfb87c 100644
--- a/contrib/views/wfmanager/src/main/resources/ui/ember-cli-build.js
+++ b/contrib/views/wfmanager/src/main/resources/ui/ember-cli-build.js
@@ -20,8 +20,15 @@
 var EmberApp = require('ember-cli/lib/broccoli/ember-app');
 
 module.exports = function(defaults) {
+
+
     var app = new EmberApp(defaults, {
         // Add options here
+  codemirror: {
+    // modes: ['xml'],
+    // keyMaps: ['vim'],
+    // themes: ['solarized']
+  }
     });
 
     // Use `app.import` to add additional libraries to the generated

http://git-wip-us.apache.org/repos/asf/ambari/blob/9bc0b996/contrib/views/wfmanager/src/main/resources/ui/package.json
----------------------------------------------------------------------
diff --git a/contrib/views/wfmanager/src/main/resources/ui/package.json b/contrib/views/wfmanager/src/main/resources/ui/package.json
index ab9426a..b5973c1 100644
--- a/contrib/views/wfmanager/src/main/resources/ui/package.json
+++ b/contrib/views/wfmanager/src/main/resources/ui/package.json
@@ -26,6 +26,7 @@
     "ember-cli-app-version": "^1.0.0",
     "ember-cli-babel": "^5.1.5",
     "ember-cli-dependency-checker": "^1.2.0",
+    "ember-cli-file-picker": "0.0.9",
     "ember-cli-htmlbars": "^1.0.1",
     "ember-cli-htmlbars-inline-precompile": "^0.3.1",
     "ember-cli-inject-live-reload": "^1.3.1",
@@ -36,7 +37,7 @@
     "ember-cli-sri": "^2.0.0",
     "ember-cli-uglify": "^1.2.0",
     "ember-cp-validations": "2.9.5",
-    "ember-data": "2.7.0",
+    "ember-data": "^2.3.0",
     "ember-disable-proxy-controllers": "^1.0.1",
     "ember-export-application-global": "^1.0.4",
     "ember-load-initializers": "^0.5.0",
@@ -47,6 +48,7 @@
     "ember-uploader": "1.0.0",
     "ember-uuid": "1.0.0",
     "ember-validations": "~ 2.0.0-alpha.4",
+    "ivy-codemirror": "2.0.3",
     "loader.js": "^4.0.0"
   },
   "ember-addon": {

http://git-wip-us.apache.org/repos/asf/ambari/blob/9bc0b996/contrib/views/wfmanager/src/main/resources/ui/tests/integration/components/bundle-version-settings-test.js
----------------------------------------------------------------------
diff --git a/contrib/views/wfmanager/src/main/resources/ui/tests/integration/components/bundle-version-settings-test.js
b/contrib/views/wfmanager/src/main/resources/ui/tests/integration/components/bundle-version-settings-test.js
new file mode 100644
index 0000000..2423027
--- /dev/null
+++ b/contrib/views/wfmanager/src/main/resources/ui/tests/integration/components/bundle-version-settings-test.js
@@ -0,0 +1,40 @@
+/*
+ *    Licensed to the Apache Software Foundation (ASF) under one or more
+ *    contributor license agreements.  See the NOTICE file distributed with
+ *    this work for additional information regarding copyright ownership.
+ *    The ASF licenses this file to You under the Apache License, Version 2.0
+ *    (the "License"); you may not use this file except in compliance with
+ *    the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *    Unless required by applicable law or agreed to in writing, software
+ *    distributed under the License is distributed on an "AS IS" BASIS,
+ *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *    See the License for the specific language governing permissions and
+ *    limitations under the License.
+ */
+import { moduleForComponent, test } from 'ember-qunit';
+import hbs from 'htmlbars-inline-precompile';
+
+moduleForComponent('bundle-version-settings', 'Integration | Component | bundle version settings',
{
+  integration: true
+});
+
+test('it renders', function(assert) {
+  // Set any properties with this.set('myProperty', 'value');
+  // Handle any actions with this.on('myAction', function(val) { ... });"
+
+  this.render(hbs`{{bundle-version-settings}}`);
+
+  assert.equal(this.$().text().trim(), '');
+
+  // Template block usage:"
+  this.render(hbs`
+    {{#bundle-version-settings}}
+      template block text
+    {{/bundle-version-settings}}
+  `);
+
+  assert.equal(this.$().text().trim(), 'template block text');
+});

http://git-wip-us.apache.org/repos/asf/ambari/blob/9bc0b996/contrib/views/wfmanager/src/main/resources/ui/tests/integration/components/coord-version-settings-test.js
----------------------------------------------------------------------
diff --git a/contrib/views/wfmanager/src/main/resources/ui/tests/integration/components/coord-version-settings-test.js
b/contrib/views/wfmanager/src/main/resources/ui/tests/integration/components/coord-version-settings-test.js
new file mode 100644
index 0000000..12e8bd8
--- /dev/null
+++ b/contrib/views/wfmanager/src/main/resources/ui/tests/integration/components/coord-version-settings-test.js
@@ -0,0 +1,40 @@
+/*
+ *    Licensed to the Apache Software Foundation (ASF) under one or more
+ *    contributor license agreements.  See the NOTICE file distributed with
+ *    this work for additional information regarding copyright ownership.
+ *    The ASF licenses this file to You under the Apache License, Version 2.0
+ *    (the "License"); you may not use this file except in compliance with
+ *    the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *    Unless required by applicable law or agreed to in writing, software
+ *    distributed under the License is distributed on an "AS IS" BASIS,
+ *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *    See the License for the specific language governing permissions and
+ *    limitations under the License.
+ */
+import { moduleForComponent, test } from 'ember-qunit';
+import hbs from 'htmlbars-inline-precompile';
+
+moduleForComponent('coord-version-settings', 'Integration | Component | coord version settings',
{
+  integration: true
+});
+
+test('it renders', function(assert) {
+  // Set any properties with this.set('myProperty', 'value');
+  // Handle any actions with this.on('myAction', function(val) { ... });"
+
+  this.render(hbs`{{coord-version-settings}}`);
+
+  assert.equal(this.$().text().trim(), '');
+
+  // Template block usage:"
+  this.render(hbs`
+    {{#coord-version-settings}}
+      template block text
+    {{/coord-version-settings}}
+  `);
+
+  assert.equal(this.$().text().trim(), 'template block text');
+});

http://git-wip-us.apache.org/repos/asf/ambari/blob/9bc0b996/contrib/views/wfmanager/src/main/resources/ui/tests/integration/components/import-from-stream-test.js
----------------------------------------------------------------------
diff --git a/contrib/views/wfmanager/src/main/resources/ui/tests/integration/components/import-from-stream-test.js
b/contrib/views/wfmanager/src/main/resources/ui/tests/integration/components/import-from-stream-test.js
new file mode 100644
index 0000000..77d4876
--- /dev/null
+++ b/contrib/views/wfmanager/src/main/resources/ui/tests/integration/components/import-from-stream-test.js
@@ -0,0 +1,41 @@
+/*
+*    Licensed to the Apache Software Foundation (ASF) under one or more
+*    contributor license agreements.  See the NOTICE file distributed with
+*    this work for additional information regarding copyright ownership.
+*    The ASF licenses this file to You under the Apache License, Version 2.0
+*    (the "License"); you may not use this file except in compliance with
+*    the License.  You may obtain a copy of the License at
+*
+*        http://www.apache.org/licenses/LICENSE-2.0
+*
+*    Unless required by applicable law or agreed to in writing, software
+*    distributed under the License is distributed on an "AS IS" BASIS,
+*    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+*    See the License for the specific language governing permissions and
+*    limitations under the License.
+*/
+
+import { moduleForComponent, test } from 'ember-qunit';
+import hbs from 'htmlbars-inline-precompile';
+
+moduleForComponent('import-from-stream', 'Integration | Component | import from stream',
{
+  integration: true
+});
+
+test('it renders', function(assert) {
+  // Set any properties with this.set('myProperty', 'value');
+  // Handle any actions with this.on('myAction', function(val) { ... });"
+
+  this.render(hbs`{{import-from-stream}}`);
+
+  assert.equal(this.$().text().trim(), '');
+
+  // Template block usage:"
+  this.render(hbs`
+    {{#import-from-stream}}
+      template block text
+    {{/import-from-stream}}
+  `);
+
+  assert.equal(this.$().text().trim(), 'template block text');
+});

http://git-wip-us.apache.org/repos/asf/ambari/blob/9bc0b996/contrib/views/wfmanager/src/main/resources/ui/tests/integration/components/workflow-icon-test.js
----------------------------------------------------------------------
diff --git a/contrib/views/wfmanager/src/main/resources/ui/tests/integration/components/workflow-icon-test.js
b/contrib/views/wfmanager/src/main/resources/ui/tests/integration/components/workflow-icon-test.js
new file mode 100644
index 0000000..0cd18dd
--- /dev/null
+++ b/contrib/views/wfmanager/src/main/resources/ui/tests/integration/components/workflow-icon-test.js
@@ -0,0 +1,40 @@
+/*
+*    Licensed to the Apache Software Foundation (ASF) under one or more
+*    contributor license agreements.  See the NOTICE file distributed with
+*    this work for additional information regarding copyright ownership.
+*    The ASF licenses this file to You under the Apache License, Version 2.0
+*    (the "License"); you may not use this file except in compliance with
+*    the License.  You may obtain a copy of the License at
+*
+*        http://www.apache.org/licenses/LICENSE-2.0
+*
+*    Unless required by applicable law or agreed to in writing, software
+*    distributed under the License is distributed on an "AS IS" BASIS,
+*    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+*    See the License for the specific language governing permissions and
+*    limitations under the License.
+*/
+import { moduleForComponent, test } from 'ember-qunit';
+import hbs from 'htmlbars-inline-precompile';
+
+moduleForComponent('workflow-icon', 'Integration | Component | workflow icon', {
+  integration: true
+});
+
+test('it renders', function(assert) {
+  // Set any properties with this.set('myProperty', 'value');
+  // Handle any actions with this.on('myAction', function(val) { ... });"
+
+  this.render(hbs`{{workflow-icon}}`);
+
+  assert.equal(this.$().text().trim(), '');
+
+  // Template block usage:"
+  this.render(hbs`
+    {{#workflow-icon}}
+      template block text
+    {{/workflow-icon}}
+  `);
+
+  assert.equal(this.$().text().trim(), 'template block text');
+});

http://git-wip-us.apache.org/repos/asf/ambari/blob/9bc0b996/contrib/views/wfmanager/src/main/resources/ui/tests/unit/routes/design/dashboardtab-test.js
----------------------------------------------------------------------
diff --git a/contrib/views/wfmanager/src/main/resources/ui/tests/unit/routes/design/dashboardtab-test.js
b/contrib/views/wfmanager/src/main/resources/ui/tests/unit/routes/design/dashboardtab-test.js
new file mode 100644
index 0000000..145b05a
--- /dev/null
+++ b/contrib/views/wfmanager/src/main/resources/ui/tests/unit/routes/design/dashboardtab-test.js
@@ -0,0 +1,27 @@
+/*
+*    Licensed to the Apache Software Foundation (ASF) under one or more
+*    contributor license agreements.  See the NOTICE file distributed with
+*    this work for additional information regarding copyright ownership.
+*    The ASF licenses this file to You under the Apache License, Version 2.0
+*    (the "License"); you may not use this file except in compliance with
+*    the License.  You may obtain a copy of the License at
+*
+*        http://www.apache.org/licenses/LICENSE-2.0
+*
+*    Unless required by applicable law or agreed to in writing, software
+*    distributed under the License is distributed on an "AS IS" BASIS,
+*    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+*    See the License for the specific language governing permissions and
+*    limitations under the License.
+*/
+import { moduleFor, test } from 'ember-qunit';
+
+moduleFor('route:design/dashboardtab', 'Unit | Route | design/dashboardtab', {
+  // Specify the other units that are required for this test.
+  // needs: ['controller:foo']
+});
+
+test('it exists', function(assert) {
+  let route = this.subject();
+  assert.ok(route);
+});

http://git-wip-us.apache.org/repos/asf/ambari/blob/9bc0b996/contrib/views/wfmanager/src/main/resources/ui/tests/unit/services/dashboard-context-test.js
----------------------------------------------------------------------
diff --git a/contrib/views/wfmanager/src/main/resources/ui/tests/unit/services/dashboard-context-test.js
b/contrib/views/wfmanager/src/main/resources/ui/tests/unit/services/dashboard-context-test.js
new file mode 100644
index 0000000..7b7f518
--- /dev/null
+++ b/contrib/views/wfmanager/src/main/resources/ui/tests/unit/services/dashboard-context-test.js
@@ -0,0 +1,28 @@
+/*
+*    Licensed to the Apache Software Foundation (ASF) under one or more
+*    contributor license agreements.  See the NOTICE file distributed with
+*    this work for additional information regarding copyright ownership.
+*    The ASF licenses this file to You under the Apache License, Version 2.0
+*    (the "License"); you may not use this file except in compliance with
+*    the License.  You may obtain a copy of the License at
+*
+*        http://www.apache.org/licenses/LICENSE-2.0
+*
+*    Unless required by applicable law or agreed to in writing, software
+*    distributed under the License is distributed on an "AS IS" BASIS,
+*    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+*    See the License for the specific language governing permissions and
+*    limitations under the License.
+*/
+import { moduleFor, test } from 'ember-qunit';
+
+moduleFor('service:dashboard-context', 'Unit | Service | dashboard context', {
+  // Specify the other units that are required for this test.
+  // needs: ['service:foo']
+});
+
+// Replace this with your real tests.
+test('it exists', function(assert) {
+  let service = this.subject();
+  assert.ok(service);
+});

http://git-wip-us.apache.org/repos/asf/ambari/blob/9bc0b996/contrib/views/wfmanager/src/main/resources/ui/tests/unit/services/save-job-test.js
----------------------------------------------------------------------
diff --git a/contrib/views/wfmanager/src/main/resources/ui/tests/unit/services/save-job-test.js
b/contrib/views/wfmanager/src/main/resources/ui/tests/unit/services/save-job-test.js
new file mode 100644
index 0000000..5ba423f
--- /dev/null
+++ b/contrib/views/wfmanager/src/main/resources/ui/tests/unit/services/save-job-test.js
@@ -0,0 +1,29 @@
+/*
+*    Licensed to the Apache Software Foundation (ASF) under one or more
+*    contributor license agreements.  See the NOTICE file distributed with
+*    this work for additional information regarding copyright ownership.
+*    The ASF licenses this file to You under the Apache License, Version 2.0
+*    (the "License"); you may not use this file except in compliance with
+*    the License.  You may obtain a copy of the License at
+*
+*        http://www.apache.org/licenses/LICENSE-2.0
+*
+*    Unless required by applicable law or agreed to in writing, software
+*    distributed under the License is distributed on an "AS IS" BASIS,
+*    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+*    See the License for the specific language governing permissions and
+*    limitations under the License.
+*/
+
+import { moduleFor, test } from 'ember-qunit';
+
+moduleFor('service:save-job', 'Unit | Service | save job', {
+  // Specify the other units that are required for this test.
+  // needs: ['service:foo']
+});
+
+// Replace this with your real tests.
+test('it exists', function(assert) {
+  let service = this.subject();
+  assert.ok(service);
+});


Mime
View raw message