mirror of
https://github.com/ansible/awx.git
synced 2026-02-25 23:16:01 -03:30
Begin adding unit tests for split jobs
- Test split job tag method within Jobs List Controller.
This commit is contained in:
@@ -1,12 +1,14 @@
|
|||||||
import JobsStrings from './jobs.strings';
|
import JobsStrings from './jobs.strings';
|
||||||
import jobsRoute from './routes/jobs.route';
|
import jobsRoute from './routes/jobs.route';
|
||||||
import { jobsSchedulesRoute, jobsSchedulesEditRoute } from '../../src/scheduler/schedules.route';
|
import { jobsSchedulesRoute, jobsSchedulesEditRoute } from '../../src/scheduler/schedules.route';
|
||||||
|
import jobsListController from './jobsList.controller';
|
||||||
|
|
||||||
const MODULE_NAME = 'at.features.jobs';
|
const MODULE_NAME = 'at.features.jobs';
|
||||||
|
|
||||||
angular
|
angular
|
||||||
.module(MODULE_NAME, [])
|
.module(MODULE_NAME, [])
|
||||||
.service('JobsStrings', JobsStrings)
|
.service('JobsStrings', JobsStrings)
|
||||||
|
.controller('jobsListController', jobsListController)
|
||||||
.run(['$stateExtender', ($stateExtender) => {
|
.run(['$stateExtender', ($stateExtender) => {
|
||||||
$stateExtender.addState(jobsRoute);
|
$stateExtender.addState(jobsRoute);
|
||||||
$stateExtender.addState(jobsSchedulesRoute);
|
$stateExtender.addState(jobsSchedulesRoute);
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
import { N_ } from '../../../src/i18n';
|
import { N_ } from '../../../src/i18n';
|
||||||
import jobsListController from '../jobsList.controller';
|
|
||||||
import indexController from '../index.controller';
|
import indexController from '../index.controller';
|
||||||
|
|
||||||
const indexTemplate = require('~features/jobs/index.view.html');
|
const indexTemplate = require('~features/jobs/index.view.html');
|
||||||
@@ -69,7 +68,7 @@ export default {
|
|||||||
},
|
},
|
||||||
'jobsList@jobs': {
|
'jobsList@jobs': {
|
||||||
templateUrl: jobsListTemplate,
|
templateUrl: jobsListTemplate,
|
||||||
controller: jobsListController,
|
controller: 'jobsListController',
|
||||||
controllerAs: 'vm'
|
controllerAs: 'vm'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,4 +6,5 @@ import './file.unit';
|
|||||||
import './layout.unit';
|
import './layout.unit';
|
||||||
import './side-nav.unit';
|
import './side-nav.unit';
|
||||||
import './side-nav-item.unit';
|
import './side-nav-item.unit';
|
||||||
|
import './split-jobs.unit';
|
||||||
|
|
||||||
|
|||||||
95
awx/ui/test/unit/components/split-jobs.unit.js
Normal file
95
awx/ui/test/unit/components/split-jobs.unit.js
Normal file
@@ -0,0 +1,95 @@
|
|||||||
|
describe('View: Split Jobs List', () => {
|
||||||
|
let JobList,
|
||||||
|
scope,
|
||||||
|
state,
|
||||||
|
Dataset,
|
||||||
|
resolvedModels,
|
||||||
|
JobsStrings,
|
||||||
|
QuerySet,
|
||||||
|
Prompt,
|
||||||
|
filter,
|
||||||
|
ProcessErrors,
|
||||||
|
Wait,
|
||||||
|
Rest,
|
||||||
|
SearchBasePath;
|
||||||
|
|
||||||
|
beforeEach(angular.mock.module('at.features.jobs', ($provide) => {
|
||||||
|
Dataset = {
|
||||||
|
data: {
|
||||||
|
results: {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
state = {
|
||||||
|
params: {
|
||||||
|
job_search: {}
|
||||||
|
},
|
||||||
|
go: jasmine.createSpy('go'),
|
||||||
|
includes: jasmine.createSpy('includes')
|
||||||
|
}
|
||||||
|
resolvedModels = [
|
||||||
|
{
|
||||||
|
options: () => {
|
||||||
|
return ["foo", "bar"];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
|
||||||
|
ProcessErrors = jasmine.createSpy('ProcessErrors');
|
||||||
|
Wait = jasmine.createSpy('Wait');
|
||||||
|
Prompt = jasmine.createSpy('Prompt');
|
||||||
|
|
||||||
|
$provide.value('state', state);
|
||||||
|
$provide.value('Dataset', Dataset);
|
||||||
|
$provide.value('resolvedModels', resolvedModels);
|
||||||
|
$provide.value('ProcessErrors', ProcessErrors);
|
||||||
|
$provide.value('Wait', Wait);
|
||||||
|
$provide.value('Prompt', Prompt);
|
||||||
|
$provide.value('Rest', angular.noop);
|
||||||
|
$provide.value('SearchBasePath', '');
|
||||||
|
$provide.value('JobsStrings', angular.noop);
|
||||||
|
$provide.value('QuerySet', angular.noop);
|
||||||
|
|
||||||
|
$provide.provider('$stateProvider', { '$get': function() { return function() {}; } });
|
||||||
|
$provide.value('$stateExtender', { addState: jasmine.createSpy('addState'), });
|
||||||
|
}));
|
||||||
|
|
||||||
|
beforeEach(angular.mock.inject(function($controller, $rootScope, _state_, _Dataset_, _resolvedModels_, _JobsStrings_, _QuerySet_, _Prompt_, _$filter_, _ProcessErrors_, _Wait_, _Rest_, _SearchBasePath_){
|
||||||
|
scope = $rootScope.$new();
|
||||||
|
state = _state_;
|
||||||
|
Dataset = _Dataset_;
|
||||||
|
resolvedModels = _resolvedModels_;
|
||||||
|
JobsStrings = _JobsStrings_;
|
||||||
|
QuerySet = _QuerySet_;
|
||||||
|
Prompt = _Prompt_;
|
||||||
|
filter = _$filter_;
|
||||||
|
ProcessErrors = _ProcessErrors_;
|
||||||
|
Wait = _Wait_;
|
||||||
|
Rest = _Rest_;
|
||||||
|
SearchBasePath = _SearchBasePath_;
|
||||||
|
|
||||||
|
JobList = $controller('jobsListController', {
|
||||||
|
$scope: scope,
|
||||||
|
$state: state,
|
||||||
|
Dataset: Dataset,
|
||||||
|
resolvedModels: resolvedModels,
|
||||||
|
JobsStrings: JobsStrings,
|
||||||
|
ProcessErrors: ProcessErrors,
|
||||||
|
QuerySet: QuerySet,
|
||||||
|
Wait: Wait,
|
||||||
|
Prompt: Prompt,
|
||||||
|
$filter: filter,
|
||||||
|
Wait: Wait,
|
||||||
|
Rest: Rest,
|
||||||
|
SearchBasePath: SearchBasePath,
|
||||||
|
});
|
||||||
|
}));
|
||||||
|
|
||||||
|
describe('JobList Controller', () => {
|
||||||
|
it('is created successfully', () => {
|
||||||
|
expect(JobList).toBeDefined();
|
||||||
|
});
|
||||||
|
it('has method "getSplitJobDetails"', () => {
|
||||||
|
expect(JobList.getSplitJobDetails).toBeDefined();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
Reference in New Issue
Block a user