Skip to content

Commit

Permalink
Merge pull request anihalaney#692 from milansar/BW-868
Browse files Browse the repository at this point in the history
BW-868 Unit test of User, Topics, categories and tags selector
  • Loading branch information
anihalaney authored Oct 8, 2020
2 parents ce8d3d0 + 9b482f3 commit b0dfc68
Show file tree
Hide file tree
Showing 9 changed files with 121 additions and 6 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@

import { testData } from 'test/data';
import { categoryDictionary, getCategories } from './categories.selector';
describe('Categories:Selector', () => {
const categories = testData.categoryList;
const categoryDict = testData.categoryDictionary;

it('getCategories', () => {
const state = { core: { categories } };
expect(getCategories(state)).toBe(categories);
});

it('categoryDictionary', () => {
const state = { core: { categories } };
expect(categoryDictionary(state)).toEqual(categoryDict);
});
});

Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ActionReducerMap, createSelector, createFeatureSelector } from '@ngrx/store';
import { createSelector } from '@ngrx/store';

import * as fromFeature from '../reducers';

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@

import { testData } from 'test/data';
import { getTags } from './tags.selector';
describe('Tags:Selector', () => {
const tags: string[] = testData.tagList;
it('getTags', () => {
const state = { core: { tags } };
expect(getTags(state)).toBe(tags);
});
});
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ActionReducerMap, createSelector, createFeatureSelector } from '@ngrx/store';
import { createSelector } from '@ngrx/store';

import * as fromFeature from '../reducers';

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@

import { testData } from 'test/data';
import { getTopTopics } from './topics.selector';
import { Topic } from 'shared-library/shared/model';
describe('Topics:Selector', () => {
const topTopics: Topic[] = testData.topics;

it('getTopTopics', () => {
const state = { core: { topTopics } };
expect(getTopTopics(state)).toBe(topTopics);
});
});
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@

import { testData } from 'test/data';
import { authorizationHeader, getUser } from './user.selector';
describe('User:Selector', () => {
const user = testData.userList[0];

it('getUser', () => {
const state = { core: { user } };
expect(getUser(state)).toBe(user);
});

it('getUser', () => {
const state = { core: { user } };
const token = `Bearer ${user.idToken}`;
expect(authorizationHeader(state)).toBe(token);
});

it('authorizationHeader with null', () => {
const state = { core: { user: '' } };
expect(authorizationHeader(state)).toBe(null);
});
});

Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
import { ActionReducerMap, createSelector, createFeatureSelector } from '@ngrx/store';
import { createSelector } from '@ngrx/store';

import * as fromFeature from '../reducers';


export const getUser = createSelector(fromFeature.coreState, (state: fromFeature.CoreState) => state.user);
export const authorizationHeader = createSelector(getUser, fromFeature.getAuthorizationHeader);

Expand Down
5 changes: 3 additions & 2 deletions test/data/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ import { GamePlayedWith } from './game-played-with';
import { TopCategories } from './top-categories';
import { ImageString } from './image-string';
import { AchievementRules } from './achievement-rules';

import { Topics } from './topics';

export const testData = {
categories: Categories,
Expand Down Expand Up @@ -69,6 +69,7 @@ export const testData = {
addressSuggestion: addressSuggestion,
topCategories: TopCategories,
imageString: ImageString,
achievementRules: AchievementRules
achievementRules: AchievementRules,
topics: Topics
};

52 changes: 52 additions & 0 deletions test/data/topics.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
export const Topics = [
{
'id': 1,
'categoryName': 'Bit of sci-fi',
'type': 'categories'
},
{
'id': 2,
'categoryName': 'Programming',
'type': 'categories'
},
{
'id': 3,
'categoryName': 'Architecture',
'type': 'categories'
},
{
'id': 4,
'categoryName': 'Networking/Infrastructure',
'type': 'categories'
},
{
'id': 5,
'categoryName': 'Database',
'type': 'category'
},
{
'id': 6,
'categoryName': 'Dev Ops',
'type': 'categories'
},
{
'id': 7,
'categoryName': 'UX/UI',
'type': 'categories'
},
{
'id': 8,
'categoryName': 'Bit of fact',
'type': 'categories'
},
{
'id': 9,
'categoryName': 'Hardware',
'type': 'categories'
},
{
'id': 'c',
'categoryName': 'c',
'type': 'tags'
},
];

0 comments on commit b0dfc68

Please sign in to comment.