-
Notifications
You must be signed in to change notification settings - Fork 176
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* 🚧 add getProjects module * 🚧 improve getProjects module * 🔥 remove APP.getProjects method * 🚧 use the new getProjects function * 🚧 add getMateCatDomain module * 🚧 add getMatecatApiDomain module * 🚧 switch to fetch * Fix rebase * add fetch for jest * add tests
- Loading branch information
1 parent
9deb928
commit 093b14f
Showing
8 changed files
with
188 additions
and
109 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
import _ from 'lodash' | ||
|
||
import {getMatecatApiDomain} from '../../utils/getMatecatApiDomain' | ||
|
||
/** | ||
* Fetch the project list based on: | ||
* | ||
* - the given team | ||
* - the given page | ||
* | ||
* @param {number} param.page | ||
* @param {object} param.searchFilter | ||
* @param {object} param.team | ||
* @returns {Promise<object>} | ||
*/ | ||
export const getProjects = ({ | ||
searchFilter, | ||
team, | ||
page = searchFilter.currentPage, | ||
}) => { | ||
const data = { | ||
id_team: team.id, | ||
page, | ||
filter: _.isEmpty(searchFilter.filter) ? 0 : 1, | ||
...searchFilter.filter, | ||
} | ||
|
||
const formData = new FormData() | ||
|
||
Object.keys(data).forEach((key) => { | ||
formData.append(key, data[key]) | ||
}) | ||
|
||
return fetch(`${getMatecatApiDomain()}?action=getProjects`, { | ||
method: 'POST', | ||
credentials: 'include', | ||
body: formData, | ||
}).then((res) => res.json()) | ||
} |
45 changes: 45 additions & 0 deletions
45
public/js/cat_source/es6/api/getProjects/getProjects.test.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
import {rest} from 'msw' | ||
|
||
import {getProjects} from '.' | ||
import {mswServer} from '../../../../../mocks/mswServer' | ||
|
||
test('works properly with empty filter', async () => { | ||
const payload = {fake: 'data'} | ||
|
||
mswServer.use( | ||
rest.post('*.ajax.localhost', (req, res, ctx) => { | ||
return res(ctx.status(200), ctx.json(payload)) | ||
}), | ||
) | ||
|
||
global.config = { | ||
enableMultiDomainApi: true, | ||
ajaxDomainsNumber: 20, | ||
} | ||
|
||
const data = await getProjects({searchFilter: {}, team: {}}) | ||
|
||
expect(data).toEqual(payload) | ||
}) | ||
|
||
test('works properly with full filter', async () => { | ||
const payload = {fake: 'data'} | ||
|
||
mswServer.use( | ||
rest.post('*.ajax.localhost', (req, res, ctx) => { | ||
return res(ctx.status(200), ctx.json(payload)) | ||
}), | ||
) | ||
|
||
global.config = { | ||
enableMultiDomainApi: true, | ||
ajaxDomainsNumber: 20, | ||
} | ||
|
||
const data = await getProjects({ | ||
searchFilter: {filter: {foo: 'bar'}}, | ||
team: {}, | ||
}) | ||
|
||
expect(data).toEqual(payload) | ||
}) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
export * from './getProjects' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,5 @@ | ||
import 'whatwg-fetch' | ||
|
||
global.$ = require('./public/api/dist/lib/jquery-3.3.1.min.js') | ||
global.jQuery = $ | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters