From da6889905e70c15af64505496add693673ca92ff Mon Sep 17 00:00:00 2001 From: Janusz Kocik Date: Tue, 16 Oct 2018 20:06:23 -0400 Subject: [PATCH] Add auth user icon to dashboard list --- src/components/buefy/BDashboardTable.vue | 2 +- src/components/dashboard/DashboardTable.vue | 8 ++++ .../specs/components/AppDashboard.spec.js | 46 ++++++++++++++++++- 3 files changed, 53 insertions(+), 3 deletions(-) diff --git a/src/components/buefy/BDashboardTable.vue b/src/components/buefy/BDashboardTable.vue index b247c15..dcfb1a3 100644 --- a/src/components/buefy/BDashboardTable.vue +++ b/src/components/buefy/BDashboardTable.vue @@ -5,7 +5,7 @@ extends: BTable, computed: { columnCount() { - return 11; + return 12; }, }, }; diff --git a/src/components/dashboard/DashboardTable.vue b/src/components/dashboard/DashboardTable.vue index c9a9c3f..ae33dc1 100644 --- a/src/components/dashboard/DashboardTable.vue +++ b/src/components/dashboard/DashboardTable.vue @@ -72,6 +72,14 @@ {{ row.countQueries() }} + +
+ +
+
+ +
+
diff --git a/test/feature/specs/components/AppDashboard.spec.js b/test/feature/specs/components/AppDashboard.spec.js index d433d71..375f5ba 100644 --- a/test/feature/specs/components/AppDashboard.spec.js +++ b/test/feature/specs/components/AppDashboard.spec.js @@ -29,7 +29,7 @@ describe('AppDashboard Component', () => { expect(wrapperTable.find('table tr:nth-child(1) td:nth-child(6)').text()).to.contain(tracker.path); expect(wrapperTable.find('table tr:nth-child(1) td:nth-child(7)').text()).to.contain(tracker.laravelExecutionTimeForHuman); expect(wrapperTable.find('table tr:nth-child(1) td:nth-child(8)').text()).to.contain(tracker.memoryUsageForHuman); - expect(wrapperTable.find('table tr:nth-child(1) td:nth-child(12)').text()).to.contain(tracker.laravelVersion); + expect(wrapperTable.find('table tr:nth-child(1) td:nth-child(13)').text()).to.contain(tracker.laravelVersion); }); it('has memory usage mark as confusing when running tests', async () => { @@ -133,6 +133,48 @@ describe('AppDashboard Component', () => { expect(wrapperTable.find('table tr:nth-child(1) .tracker-summary.queries').text()).that.is.empty; }); + it('sees positive auth icon after data are delivered and user was logged in', async () => { + let wrapperTable = wrapper.find({ name: 'dashboard-table' }); + let tracker = new Tracker(trackerFactory.create()); + wrapper.vm.$store.commit('trackers/store', tracker); + + wrapperTable.vm.$forceUpdate(); + await wrapperTable.vm.$nextTick(); + let positive = wrapperTable.find('table tr:nth-child(1) .tracker-summary.auth i.fa-user.has-text-success'); + let negative = wrapperTable.find('table tr:nth-child(1) .tracker-summary.auth i.fa-user-slash.has-text-grey-lighter'); + expect(positive.isVisible()).to.be.true; + expect(negative.isVisible()).to.be.false; + }); + + it('sees negative auth icon after data are delivered and user was not logged in', async () => { + let wrapperTable = wrapper.find({ name: 'dashboard-table' }); + let trackerSource = trackerFactory.create('data', { auth: null }); + let tracker = new Tracker(trackerSource); + wrapper.vm.$store.commit('trackers/store', tracker); + + wrapperTable.vm.$forceUpdate(); + await wrapperTable.vm.$nextTick(); + let positive = wrapperTable.find('table tr:nth-child(1) .tracker-summary.auth i.fa-user.has-text-success'); + let negative = wrapperTable.find('table tr:nth-child(1) .tracker-summary.auth i.fa-user-slash.has-text-grey-lighter'); + expect(positive.isVisible()).to.be.false; + expect(negative.isVisible()).to.be.true; + }); + + it('does not see auth icon after data are delivered but auth is not provided at all', async () => { + let wrapperTable = wrapper.find({ name: 'dashboard-table' }); + let trackerSource = trackerFactory.create('data', { auth: undefined }); + delete trackerSource.data.auth; + let tracker = new Tracker(trackerSource); + wrapper.vm.$store.commit('trackers/store', tracker); + + wrapperTable.vm.$forceUpdate(); + await wrapperTable.vm.$nextTick(); + let positive = wrapperTable.find('table tr:nth-child(1) .tracker-summary.auth i.fa-user.has-text-success'); + let negative = wrapperTable.find('table tr:nth-child(1) .tracker-summary.auth i.fa-user-slash.has-text-grey-lighter'); + expect(positive.isVisible()).to.be.false; + expect(negative.isVisible()).to.be.false; + }); + it('sees meta data of profiler in descending order', async () => { let trackerA = new Tracker(trackerFactory.create()); let trackerB = new Tracker(trackerFactory.create('meta', { env: 'testing' })); @@ -297,7 +339,7 @@ describe('AppDashboard Component', () => { let trDetailsA = wrapperTable.find('table tr:nth-child(1) + tr.detail'); expect(trDetailsA.exists()).to.be.true; expect(trDetailsA.isVisible()).to.be.true; - expect(trDetailsA.find('td').attributes().colspan).to.equal('11'); + expect(trDetailsA.find('td').attributes().colspan).to.equal('12'); tr.trigger('click'); let trDetailsABis = wrapperTable.find('table tr:nth-child(1) + tr.detail');