Return-Path: X-Original-To: apmail-ambari-commits-archive@www.apache.org Delivered-To: apmail-ambari-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id A7B2111D47 for ; Fri, 15 Aug 2014 14:05:38 +0000 (UTC) Received: (qmail 83617 invoked by uid 500); 15 Aug 2014 14:05:38 -0000 Delivered-To: apmail-ambari-commits-archive@ambari.apache.org Received: (qmail 83590 invoked by uid 500); 15 Aug 2014 14:05:38 -0000 Mailing-List: contact commits-help@ambari.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: ambari-dev@ambari.apache.org Delivered-To: mailing list commits@ambari.apache.org Received: (qmail 83581 invoked by uid 99); 15 Aug 2014 14:05:38 -0000 Received: from tyr.zones.apache.org (HELO tyr.zones.apache.org) (140.211.11.114) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 15 Aug 2014 14:05:38 +0000 Received: by tyr.zones.apache.org (Postfix, from userid 65534) id 3C4CE9C50A9; Fri, 15 Aug 2014 14:05:38 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: akovalenko@apache.org To: commits@ambari.apache.org Date: Fri, 15 Aug 2014 14:05:38 -0000 Message-Id: X-Mailer: ASF-Git Admin Mailer Subject: [1/2] AMBARI-6874. Fix UI unit tests after jobs, admin and recommendation changes.. (Denys Buzhor via akovalenko) Repository: ambari Updated Branches: refs/heads/trunk c26968df4 -> e2fc2c731 http://git-wip-us.apache.org/repos/asf/ambari/blob/e2fc2c73/ambari-web/test/views/main/jobs/hive_job_details_view_test.js ---------------------------------------------------------------------- diff --git a/ambari-web/test/views/main/jobs/hive_job_details_view_test.js b/ambari-web/test/views/main/jobs/hive_job_details_view_test.js deleted file mode 100644 index 7423620..0000000 --- a/ambari-web/test/views/main/jobs/hive_job_details_view_test.js +++ /dev/null @@ -1,155 +0,0 @@ -/** - * 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. - */ - -var App = require('app'); -require('views/main/jobs/hive_job_details_view'); - -describe('App.MainHiveJobDetailsView', function () { - var mainHiveJobDetailsView = App.MainHiveJobDetailsView.create({ - controller: App.MainHiveJobDetailsController.create({ - content: Ember.Object.create({ - id: 'id', - queryText: 'show tables', - stages: [{ - id: 'Stage-0', - description: '. Fetch Operator' - }, { - id: 'Stage-1', - description: '. Tez' - }], - name: 'id', - startTime: 1394569191001, - endTime: null, - tezDagId: 'id:1', - tezDag: { - id: 'id:1', - instanceId: 'dag_1394502141829_0425_1', - name: 'id:1', - yarnApplicationId: 'application_1395263571423_0014', - stage: 'Stage-1', - vertices: [ - Ember.Object.create({ - id: 'id:1/Map 1', - name: 'Map 1', - type: 'MAP', - operations: ['TableScan', 'Filter Operator', 'Reduce Output Operator'], - operationPlan: '[\n {\n "TableScan": {\n "filterExpr:": "((hd_dep_count = 4) or (hd_vehicle_count = 3)) (type: boolean)",\n "alias:": "household_demographics",\n "children": {\n "Filter Operator": {\n "predicate:": "((hd_dep_count = 4) or (hd_vehicle_count = 3)) (type: boolean)",\n "children": {\n "Reduce Output Operator": {\n "Map-reduce partition columns:": "hd_demo_sk (type: int)",\n "sort order:": "+",\n "value expressions:": "hd_demo_sk (type: int), hd_dep_count (type: int), hd_vehicle_count (type: int)",\n "Statistics:": "Num rows: 7200 Data size: 770400 Basic stats: COMPLETE Column stats: NONE",\n "key expressions:": "hd_demo_sk (type: int)"\n }\n },\n "Statistics:": "Num rows: 7200 Data size: 770400 Basic stats: COMPLETE Column stats: NONE"\n }\n },\n "Statistics:": "Num rows: 7200 Data size: 77040 0 Basic stats: COMPLETE Column stats: NONE"\n }\n }\n]' - }), Ember.Object.create({ - id: 'id:1/Map 2', - name: 'Map 2', - state: 'KILLED', - type: 'MAP', - startTime: 1394569231819, - endTime: 1394569303554, - operations: ['TableScan', 'Map Join Operator', 'Map Join Operator', 'Map Join Operator', 'Map Join Operator', 'Filter Operator', 'Select Operator', 'Group By Operator', 'Reduce Output Operator'], - operationPlan: '[\n {\n "TableScan": {\n "alias:": "store_sales",\n "children": {\n "Map Join Operator": {\n "keys:": {\n "0": "ss_sold_date_sk (type: int)",\n "1": "d_date_sk (type: int)"\n },\n "outputColumnNames:": [\n "_col0",\n "_col3",\n "_col5",\n "_col6",\n "_col8",\n "_col18",\n "_col21",\n "_col22",\n "_col25",\n "_col31",\n "_col32"\n ],\n "children": {\n "Map Join Operator": {\n "keys:": {\n "0": "UDFToDouble(_col22) (type: double)",\n "1": "UDFToDouble(s_store_sk) (type: double)"\n },\n "outputColumnNames:": [\n "_col0",\n "_col3",\n "_col5",\n "_col6",\n "_col8",\n "_col18",\n "_col21",\n "_col22",\n "_col25",\n "_col31",\n "_col32",\n "_col55",\n "_col77"\n ],\n "children": {\n "Map Join Operator": {\n "keys:": {\n "0": "_col5 (type: int)",\n "1": "hd_demo_sk (type: int)"\n },\n "outputColumnNames:": [\n "_col0",\n "_col22",\n "_col31",\n "_col34",\n "_col36",\n "_col37",\n "_col39",\n "_col49",\n "_col52",\n "_col53",\n "_col56",\n "_col62",\n "_col63",\n "_col86",\n "_col89",\n "_col90"\n ],\n "c hildren": {\n "Map Join Operator": {\n "keys:": {\n "0": "_col37 (type: int)",\n "1": "ca_address_sk (type: int)"\n },\n "outputColumnNames:": [\n "_col0",\n "_col3",\n "_col4",\n "_col7",\n "_col29",\n "_col38",\n "_col41",\n "_col43",\n "_col44",\n "_col46",\n "_col56",\n "_col59",\n "_col60",\n "_col63",\n "_col69",\n "_col70",\n "_col93",\n "_col99"\n ],\n "children": {\n "Filter Ope rator": {\n "predicate:": "((((((((_col38 = _col63) and (_col60 = _col7)) and (_col43 = _col0)) and (_col44 = _col93)) and ((_col3 = 4) or (_col4 = 3))) and (_col70) IN (6, 0)) and (_col69) IN (1999, (1999 + 1), (1999 + 2))) and (_col29) IN (\'Fairview\', \'Fairview\', \'Fairview\', \'Midway\', \'Fairview\')) (type: boolean)",\n "children": {\n "Select Operator": {\n "expressions:": "_col46 (type: int), _col41 (type: int), _col44 (type: int), _col99 (type: string), _col56 (type: decimal(7,2)), _col59 (type: decimal(7,2))",\n "outputColumnNames:": [\n "_col46",\n "_col41",\n "_col44",\n "_col99",\n "_col56",\n "_col59"\n ],\n "children": {\n "Group By Operator": {\n "mode:": "hash",\n "aggregations:": [\n "sum(_col56)",\n "sum(_col59)"\n ],\n "keys:": "_col46 (type: int), _col41 (type: int), _col44 (type: int), _col99 (type: string)",\n "outputColumnNames:": [\n "_col0",\n "_col1",\n "_col2",\n "_col3",\n "_col4",\n "_col5"\n ],\n "children": {\n "Reduce Output Operator": {\n "Map-reduce partition columns:": "_col0 (type: int), _col1 (type: int), _col2 (type: int), _col3 (type: string)",\n "sort order:": "++++",\n "value expressions:": "_col4 (type: decimal(17,2)), _col5 (type: decimal(17,2))",\n "Statistics:": "Num rows: 32946 Data size: 43551613 Basic stats: COMPLETE Column stats: NONE",\n "key expressions:": "_col0 (type: int), _col1 (type: int), _col2 (type: int), _col3 (type: string)"\n }\n },\n "Statistics:": "Num rows: 32946 Data size: 43551613 Basic stats: COMPLETE Column stats: NONE"\n }\n },\n "Statistics:": "Num rows: 32946 Data size: 43551613 Basic stats: COMPLETE Column stats: NONE"\n }\n },\n "Statistics:": "Num rows: 32946 Data size: 43551613 Basic stats: COMPLETE Column stats: NONE"\n }\n },\n "Statistics:": "Num rows: 4217199 Data size: 5574753280 Basic stats: COMPLETE Column stats: NONE",\n "condition map:": [\n {\n "": "Inner Join 0 to 1"\n }\n ],\n "condition expressions:": {\n "0": "{_col86} {_col89} {_col90} {_col0} {_col22} {_col31} {_col34} {_col36} {_col37} {_col39} {_col49} {_col52} {_col53} {_col56} {_col62} {_col63}",\n "1": "{ca_address_sk} {ca_city}"\n }\n }\n },\n "Statistics:": "Num rows: 3833817 Data size: 5067957248 Basic stats: COMPLETE Column stats: NONE",\n "condition m ap:": [\n {\n "": "Inner Join 0 to 1"\n }\n ],\n "condition expressions:": {\n "0": "{_col55} {_col77} {_col0} {_col3} {_col5} {_col6} {_col8} {_col18} {_col21} {_col22} {_col25} {_col31} {_col32}",\n "1": "{hd_demo_sk} {hd_dep_count} {hd_vehicle_count}"\n }\n }\n },\n "Statistics:": "Num rows: 3485288 Data size: 4607233536 Basic stats: COMPLETE Column stats: NONE",\n "condition map:": [\n {\n "": "Inner Join 0 to 1"\n }\n ],\n "condition expressions:": {\n "0": "{_col0} {_col3} {_col5} {_col6} {_col8} {_col18} {_col21} {_col22} {_col25} {_col31} {_col32}",\n "1": "{s_store_sk} {s_city}"\n }\n }\n },\n "Statistics:": "Num rows: 3168444 Data s ize: 4188394240 Basic stats: COMPLETE Column stats: NONE",\n "condition map:": [\n {\n "": "Inner Join 0 to 1"\n }\n ],\n "condition expressions:": {\n "0": "{ss_sold_date_sk} {ss_customer_sk} {ss_hdemo_sk} {ss_addr_sk} {ss_ticket_number} {ss_coupon_amt} {ss_net_profit} {ss_store_sk}",\n "1": "{d_date_sk} {d_year} {d_dow}"\n }\n }\n },\n "Statistics:": "Num rows: 2880404 Data size: 3807631184 Basic stats: COMPLETE Column stats: NONE"\n }\n }\n]', - tasksCount: 6, - fileReadBytes: 0, - fileWriteBytes: 337559, - fileReadOps: 0, - fileWriteOps: 0, - spilledRecords: 7194, - hdfsReadBytes: 12854749, - hdfsWriteBytes: 0, - hdfsReadOps: 12, - hdfsWriteOps: 0 - }) - ] - } - }) - }) - }); - describe('#zoomStep', function () { - it('should be calculated according to difference between zoomScaleTo and zoomScaleFrom', function () { - mainHiveJobDetailsView.set('zoomScaleFrom', 0); - mainHiveJobDetailsView.set('zoomScaleTo', 1); - expect(mainHiveJobDetailsView.get('zoomStep')).to.equal(0.2); - mainHiveJobDetailsView.set('zoomScaleFrom', 2); - expect(mainHiveJobDetailsView.get('zoomStep')).to.equal(0.01); - }); - }); - describe('#canGraphZoomIn', function () { - it('should be calculated according to comparison between zoomScale and zoomScaleTo', function () { - mainHiveJobDetailsView.set('zoomScale', 2); - expect(mainHiveJobDetailsView.get('canGraphZoomIn')).to.equal(false); - mainHiveJobDetailsView.set('zoomScaleTo', 3); - expect(mainHiveJobDetailsView.get('canGraphZoomIn')).to.equal(true); - }); - }); - describe('#canGraphZoomOut', function () { - it('should be calculated according to comparison between zoomScale and zoomScaleFrom', function () { - mainHiveJobDetailsView.set('zoomScale', 3); - expect(mainHiveJobDetailsView.get('canGraphZoomOut')).to.equal(true); - mainHiveJobDetailsView.set('zoomScaleFrom', 4); - expect(mainHiveJobDetailsView.get('canGraphZoomOut')).to.equal(false); - }); - }); - describe('#doGraphZoomIn', function () { - it('should be calculated according to zoomScale, zoomScaleTo and zoomScaleFrom', function () { - mainHiveJobDetailsView.set('zoomScale', 0); - mainHiveJobDetailsView.set('zoomScaleTo', 1); - mainHiveJobDetailsView.set('zoomScaleFrom', 0); - mainHiveJobDetailsView.doGraphZoomIn(); - expect(mainHiveJobDetailsView.get('zoomScale')).to.equal(0.2); - mainHiveJobDetailsView.set('zoomScale', 0); - mainHiveJobDetailsView.set('zoomScaleTo', 10); - mainHiveJobDetailsView.set('zoomScaleFrom', 0); - mainHiveJobDetailsView.doGraphZoomIn(); - expect(mainHiveJobDetailsView.get('zoomScale')).to.equal(2); - }); - }); - describe('#doGraphZoomOut', function () { - it('should be calculated according to zoomScale, zoomScaleTo and zoomScaleFrom', function () { - mainHiveJobDetailsView.set('zoomScale', 3); - mainHiveJobDetailsView.set('zoomScaleTo', 2); - mainHiveJobDetailsView.set('zoomScaleFrom', 1); - mainHiveJobDetailsView.doGraphZoomOut(); - expect(mainHiveJobDetailsView.get('zoomScale')).to.equal(2.8); - mainHiveJobDetailsView.set('zoomScale', 1); - mainHiveJobDetailsView.set('zoomScaleTo', 10); - mainHiveJobDetailsView.set('zoomScaleFrom', 0); - mainHiveJobDetailsView.doGraphZoomOut(); - expect(mainHiveJobDetailsView.get('zoomScale')).to.equal(0); - }); - }); - describe('#toggleShowQueryText', function () { - it('should be toggled according to showQuery', function () { - mainHiveJobDetailsView.set('showQuery', true); - expect(mainHiveJobDetailsView.get('toggleShowQueryText')).to.equal(Em.I18n.t('jobs.hive.less')); - mainHiveJobDetailsView.toggleProperty('showQuery'); - expect(mainHiveJobDetailsView.get('toggleShowQueryText')).to.equal(Em.I18n.t('jobs.hive.more')); - }); - }); - describe('#summaryMetricTypeDisplay', function () { - it('should return the correct message for output', function () { - mainHiveJobDetailsView.set('summaryMetricType', 'output'); - expect(mainHiveJobDetailsView.get('summaryMetricTypeDisplay')).to.equal(Em.I18n.t('jobs.hive.tez.metric.output')); - }); - }); - describe('#initialDataLoaded', function () { - it('controller.content should be loaded to view.content', function () { - mainHiveJobDetailsView.set('controller.loaded', true); - expect(mainHiveJobDetailsView.get('content.id')).to.equal(mainHiveJobDetailsView.get('controller.content.id')); - }); - }); - describe('#jobObserver', function () { - it('should set selection of the first vertex as default', function () { - expect(mainHiveJobDetailsView.get('selectedVertex.id')).to.equal(mainHiveJobDetailsView.get('controller.content.tezDag.vertices').objectAt(0).get('id')); - }); - }); -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/e2fc2c73/ambari-web/test/views/main/jobs_view_test.js ---------------------------------------------------------------------- diff --git a/ambari-web/test/views/main/jobs_view_test.js b/ambari-web/test/views/main/jobs_view_test.js deleted file mode 100644 index c143cbd..0000000 --- a/ambari-web/test/views/main/jobs_view_test.js +++ /dev/null @@ -1,102 +0,0 @@ -/** - * 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. - */ - -var App = require('app'); -require('views/main/jobs_view'); - -describe('App.MainJobsView', function () { - var mainJobsView = App.MainJobsView.create({ - controller: Ember.Object.create({ - filterObject: Ember.Object.create(), - navIDs: Ember.Object.create({ - backIDs: ['id0', 'id1'], - nextID: 'id2' - }), - content: [ - Ember.Object.create({ - id: 'id', - query_text: 'show tables', - name: 'id', - user: ['user'], - failed: false, - startTime: 1393443850756, - endTime: 1393443875265, - tezDagId: 'id:1', - hasTezDag: true - }) - ] - }) - }); - mainJobsView.get('controller').set('sortedContent', mainJobsView.controller.get('content').toArray()); - var jobNameView = mainJobsView.jobNameView.create(); - jobNameView.set('job', mainJobsView.get('controller.content').objectAt(0)); - describe('#noDataToShow', function () { - it('should be false if content is not empty', function () { - mainJobsView.noDataToShowObserver(); - expect(mainJobsView.get('noDataToShow')).to.equal(false); - }); - }); - describe('#rowsPerPageSelectView.disabled', function() { - it('should be true if controller.navIDs.backIDs.length > 1', function () { - var rowsPerPageSelectView = mainJobsView.rowsPerPageSelectView.create({ - parentView: Ember.View.create({ - hasBackLinks: true - }) - }); - rowsPerPageSelectView.disabledObserver(); - expect(rowsPerPageSelectView.get('disabled')).to.equal(true); - }); - }); - describe('#hasNextJobs', function () { - it('should be true if controller.navIDs.nextID is not empty', function () { - expect(mainJobsView.get('hasNextJobs')).to.equal(true); - }); - }); - describe('#hasBackLinks', function () { - it('should be true if there are several controller.navIDs.backIDs', function () { - expect(mainJobsView.get('hasBackLinks')).to.equal(true); - }); - }); - describe('#jobsPaginationLeft.class', function () { - it('should be paginate_next if there are new jobs and no filter is applied', function () { - mainJobsView.get('controller.filterObject').set('isAnyFilterApplied', false); - var jobsPaginationLeft = mainJobsView.jobsPaginationLeft.create({ - parentView: Ember.View.create({ - hasBackLinks: true - }) - }); - expect(jobsPaginationLeft.get('class')).to.equal('paginate_previous'); - }); - }); - describe('#jobsPaginationRight.class', function () { - it('should be paginate_next if there are new jobs and no filter is applied', function () { - var jobsPaginationRight = mainJobsView.jobsPaginationRight.create({ - parentView: Ember.View.create({ - hasNextJobs: true - }) - }); - expect(jobsPaginationRight.get('class')).to.equal('paginate_next'); - }); - }); - describe('#jobNameView.isLink', function () { - it('should be empty if job has Tez DAG', function () { - jobNameView.isLinkObserver(); - expect(jobNameView.get('isLink')).to.equal(''); - }); - }); -});