Browse Source

Merge pull request #5091 from abpframework/feat/5090

Created utility functions that return DatePipe format
pull/5104/head
Bunyamin Coskuner 6 years ago
committed by GitHub
parent
commit
c28e137a01
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 39
      npm/ng-packs/packages/core/src/lib/tests/date-utils.spec.ts
  2. 18
      npm/ng-packs/packages/core/src/lib/utils/date-utils.ts
  3. 1
      npm/ng-packs/packages/core/src/lib/utils/index.ts

39
npm/ng-packs/packages/core/src/lib/tests/date-utils.spec.ts

@ -0,0 +1,39 @@
import { ConfigStateService, getShortDateFormat, getShortDateShortTimeFormat } from '@abp/ng.core';
const dateTimeFormat = {
calendarAlgorithmType: 'SolarCalendar',
dateSeparator: '/',
dateTimeFormatLong: 'dddd, MMMM d, yyyy',
fullDateTimePattern: 'dddd, MMMM d, yyyy h:mm:ss tt',
longTimePattern: 'h:mm:ss tt',
shortDatePattern: 'M/d/yyyy',
shortTimePattern: 'h:mm tt',
};
describe('Date Utils', () => {
let config: ConfigStateService;
beforeEach(() => {
config = new ConfigStateService(undefined);
});
describe('#getShortDateFormat', () => {
test('should get the short date format from ConfigState and return it', () => {
const getDeepSpy = jest.spyOn(config, 'getDeep');
getDeepSpy.mockReturnValueOnce(dateTimeFormat);
expect(getShortDateFormat(config)).toBe('M/d/yyyy');
expect(getDeepSpy).toHaveBeenCalledWith('localization.currentCulture.dateTimeFormat');
});
});
describe('#getShortDateShortTimeFormat', () => {
test('should get the short date time format from ConfigState and return it', () => {
const getDeepSpy = jest.spyOn(config, 'getDeep');
getDeepSpy.mockReturnValueOnce(dateTimeFormat);
expect(getShortDateShortTimeFormat(config)).toBe('M/d/yyyy h:mm a');
expect(getDeepSpy).toHaveBeenCalledWith('localization.currentCulture.dateTimeFormat');
});
});
});

18
npm/ng-packs/packages/core/src/lib/utils/date-utils.ts

@ -0,0 +1,18 @@
import { ApplicationConfiguration } from '../models/application-configuration';
import { ConfigStateService } from '../services';
export function getShortDateFormat(configStateService: ConfigStateService) {
const dateTimeFormat = configStateService.getDeep(
'localization.currentCulture.dateTimeFormat',
) as ApplicationConfiguration.DateTimeFormat;
return dateTimeFormat.shortDatePattern;
}
export function getShortDateShortTimeFormat(configStateService: ConfigStateService) {
const dateTimeFormat = configStateService.getDeep(
'localization.currentCulture.dateTimeFormat',
) as ApplicationConfiguration.DateTimeFormat;
return `${dateTimeFormat.shortDatePattern} ${dateTimeFormat.shortTimePattern.replace('tt', 'a')}`;
}

1
npm/ng-packs/packages/core/src/lib/utils/index.ts

@ -1,5 +1,6 @@
export * from './array-utils';
export * from './common-utils';
export * from './date-utils';
export * from './environment-utils';
export * from './factory-utils';
export * from './form-utils';

Loading…
Cancel
Save