[ADF-2025] Task List - The pagination should be fetched from the UserPreference (#2733)

[ADF-2025] Task List - The pagination should be fetched from the UserPreference
This commit is contained in:
madhukar23
2017-12-04 23:03:45 +05:30
committed by Eugenio Romano
parent 910b2b344c
commit 4462486df1
5 changed files with 28 additions and 10 deletions

View File

@@ -28,6 +28,7 @@ import { UserPreferencesService } from './user-preferences.service';
describe('UserPreferencesService', () => {
const defaultPaginationSize: number = 10;
const supportedPaginationSize = [5, 10, 15, 20];
let preferences: UserPreferencesService;
let storage: StorageService;
let appConfig: AppConfigService;
@@ -55,7 +56,8 @@ describe('UserPreferencesService', () => {
appConfig = TestBed.get(AppConfigService);
appConfig.config = {
pagination: {
size: 10
'size': 10,
'supportedPageSizes': [ 5, 10, 15, 20 ]
}
};
preferences = TestBed.get(UserPreferencesService);
@@ -64,7 +66,12 @@ describe('UserPreferencesService', () => {
});
it('should get default pagination from app config', () => {
expect(preferences.paginationSize).toBe(defaultPaginationSize);
expect(preferences.defaults.paginationSize).toBe(defaultPaginationSize);
});
it('should return supported page sizes defined in the app config', () => {
const supportedPages = preferences.getDifferentPageSizes();
expect(supportedPages).toEqual(supportedPaginationSize);
});
it('should use [GUEST] as default storage prefix', () => {

View File

@@ -26,8 +26,9 @@ import { StorageService } from './storage.service';
@Injectable()
export class UserPreferencesService {
private defaults = {
defaults = {
paginationSize: 25,
supportedPageSizes: [5, 10, 15, 20],
locale: 'en'
};
@@ -43,7 +44,8 @@ export class UserPreferencesService {
const currentLocale = this.locale || this.getDefaultLocale();
this.localeSubject = new BehaviorSubject(currentLocale);
this.locale$ = this.localeSubject.asObservable();
this.defaults.paginationSize = appConfig.get('pagination.size', 25);
this.defaults.paginationSize = this.appConfig.get('pagination.size', this.defaults.paginationSize);
this.defaults.supportedPageSizes = this.appConfig.get('pagination.supportedPageSizes', this.defaults.supportedPageSizes);
}
get(property: string, defaultValue?: string): string {
@@ -76,6 +78,10 @@ export class UserPreferencesService {
return `${this.getStoragePrefix()}__${property}`;
}
getDifferentPageSizes(): number[] {
return this.defaults.supportedPageSizes;
}
set authType(value: string) {
this.storage.setItem('AUTH_TYPE', value);
this.apiService.reset();