45 lines
1.9 KiB
JavaScript
45 lines
1.9 KiB
JavaScript
import './index';
|
|
|
|
describe('Client', () => {
|
|
describe('Component vnClientBalanceIndex', () => {
|
|
let $componentController;
|
|
let $scope;
|
|
let $httpBackend;
|
|
let $httpParamSerializer;
|
|
let controller;
|
|
|
|
beforeEach(ngModule('client'));
|
|
|
|
beforeEach(angular.mock.inject((_$componentController_, $rootScope, _$httpBackend_, _$httpParamSerializer_) => {
|
|
$componentController = _$componentController_;
|
|
$httpBackend = _$httpBackend_;
|
|
$httpParamSerializer = _$httpParamSerializer_;
|
|
$scope = $rootScope.$new();
|
|
controller = $componentController('vnClientBalanceIndex', {$scope});
|
|
}));
|
|
|
|
describe('balances() setter', () => {
|
|
it('should calculate the balance for each line from the oldest date to the newest', () => {
|
|
controller.getCurrentBalance = jasmine.createSpy(controller, 'getCurrentBalance').and.returnValue(1000);
|
|
let balances = [
|
|
{credit: -100, debit: 0},
|
|
{credit: 0, debit: 300},
|
|
{credit: 100, debit: 0},
|
|
{credit: 0, debit: -300}
|
|
];
|
|
const params = {filter: controller.filter};
|
|
let serializedParams = $httpParamSerializer(params);
|
|
$httpBackend.when('GET', `ClientRisks?${serializedParams}`).respond(balances);
|
|
$httpBackend.expect('GET', `ClientRisks?${serializedParams}`);
|
|
controller.balances = balances;
|
|
$httpBackend.flush();
|
|
|
|
expect(controller.balances[0].balance).toEqual(1000);
|
|
expect(controller.balances[1].balance).toEqual(900);
|
|
expect(controller.balances[2].balance).toEqual(600);
|
|
expect(controller.balances[3].balance).toEqual(700);
|
|
});
|
|
});
|
|
});
|
|
});
|