mirror of
https://github.com/ansible/awx.git
synced 2026-03-18 09:27:31 -02:30
fixes missing key values in ad hoc credental step advanced search
This commit is contained in:
@@ -153,6 +153,10 @@ describe('<AdHocCommands />', () => {
|
|||||||
count: 5,
|
count: 5,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
CredentialsAPI.readOptions.mockResolvedValue({
|
||||||
|
data: { actions: { GET: {} } },
|
||||||
|
});
|
||||||
|
|
||||||
ExecutionEnvironmentsAPI.read.mockResolvedValue({
|
ExecutionEnvironmentsAPI.read.mockResolvedValue({
|
||||||
data: {
|
data: {
|
||||||
results: [
|
results: [
|
||||||
@@ -310,6 +314,10 @@ describe('<AdHocCommands />', () => {
|
|||||||
count: 5,
|
count: 5,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
CredentialsAPI.readOptions.mockResolvedValue({
|
||||||
|
data: { actions: { GET: {} } },
|
||||||
|
});
|
||||||
|
|
||||||
ExecutionEnvironmentsAPI.read.mockResolvedValue({
|
ExecutionEnvironmentsAPI.read.mockResolvedValue({
|
||||||
data: {
|
data: {
|
||||||
results: [
|
results: [
|
||||||
|
|||||||
@@ -127,6 +127,9 @@ describe('<AdHocCommandsWizard/>', () => {
|
|||||||
count: 2,
|
count: 2,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
CredentialsAPI.readOptions.mockResolvedValue({
|
||||||
|
data: { actions: { GET: {} } },
|
||||||
|
});
|
||||||
await waitForElement(wrapper, 'WizardNavItem', el => el.length > 0);
|
await waitForElement(wrapper, 'WizardNavItem', el => el.length > 0);
|
||||||
|
|
||||||
await act(async () => {
|
await act(async () => {
|
||||||
@@ -246,6 +249,9 @@ describe('<AdHocCommandsWizard/>', () => {
|
|||||||
},
|
},
|
||||||
})
|
})
|
||||||
);
|
);
|
||||||
|
CredentialsAPI.readOptions.mockResolvedValue({
|
||||||
|
data: { actions: { GET: {} } },
|
||||||
|
});
|
||||||
await waitForElement(wrapper, 'WizardNavItem', el => el.length > 0);
|
await waitForElement(wrapper, 'WizardNavItem', el => el.length > 0);
|
||||||
|
|
||||||
await act(async () => {
|
await act(async () => {
|
||||||
|
|||||||
@@ -27,23 +27,45 @@ function AdHocCredentialStep({ credentialTypeId, onEnableLaunch }) {
|
|||||||
error,
|
error,
|
||||||
isLoading,
|
isLoading,
|
||||||
request: fetchCredentials,
|
request: fetchCredentials,
|
||||||
result: { credentials, credentialCount },
|
result: {
|
||||||
|
credentials,
|
||||||
|
credentialCount,
|
||||||
|
relatedSearchableKeys,
|
||||||
|
searchableKeys,
|
||||||
|
},
|
||||||
} = useRequest(
|
} = useRequest(
|
||||||
useCallback(async () => {
|
useCallback(async () => {
|
||||||
const params = parseQueryString(QS_CONFIG, history.location.search);
|
const params = parseQueryString(QS_CONFIG, history.location.search);
|
||||||
|
|
||||||
const {
|
const [
|
||||||
data: { results, count },
|
{
|
||||||
} = await CredentialsAPI.read(
|
data: { results, count },
|
||||||
mergeParams(params, { credential_type: credentialTypeId })
|
},
|
||||||
);
|
actionsResponse,
|
||||||
|
] = await Promise.all([
|
||||||
|
CredentialsAPI.read(
|
||||||
|
mergeParams(params, { credential_type: credentialTypeId })
|
||||||
|
),
|
||||||
|
CredentialsAPI.readOptions(),
|
||||||
|
]);
|
||||||
|
|
||||||
return {
|
return {
|
||||||
credentials: results,
|
credentials: results,
|
||||||
credentialCount: count,
|
credentialCount: count,
|
||||||
|
relatedSearchableKeys: (
|
||||||
|
actionsResponse?.data?.related_search_fields || []
|
||||||
|
).map(val => val.slice(0, -8)),
|
||||||
|
searchableKeys: Object.keys(
|
||||||
|
actionsResponse.data.actions?.GET || {}
|
||||||
|
).filter(key => actionsResponse.data.actions?.GET[key].filterable),
|
||||||
};
|
};
|
||||||
}, [credentialTypeId, history.location.search]),
|
}, [credentialTypeId, history.location.search]),
|
||||||
{ credentials: [], credentialCount: 0 }
|
{
|
||||||
|
credentials: [],
|
||||||
|
credentialCount: 0,
|
||||||
|
relatedSearchableKeys: [],
|
||||||
|
searchableKeys: [],
|
||||||
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
@@ -84,6 +106,8 @@ function AdHocCredentialStep({ credentialTypeId, onEnableLaunch }) {
|
|||||||
header={t`Machine Credential`}
|
header={t`Machine Credential`}
|
||||||
readOnly
|
readOnly
|
||||||
qsConfig={QS_CONFIG}
|
qsConfig={QS_CONFIG}
|
||||||
|
relatedSearchableKeys={relatedSearchableKeys}
|
||||||
|
searchableKeys={searchableKeys}
|
||||||
searchColumns={[
|
searchColumns={[
|
||||||
{
|
{
|
||||||
name: t`Name`,
|
name: t`Name`,
|
||||||
|
|||||||
@@ -23,6 +23,9 @@ describe('<AdHocCredentialStep />', () => {
|
|||||||
count: 2,
|
count: 2,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
CredentialsAPI.readOptions.mockResolvedValue({
|
||||||
|
data: { actions: { GET: {} } },
|
||||||
|
});
|
||||||
await act(async () => {
|
await act(async () => {
|
||||||
wrapper = mountWithContexts(
|
wrapper = mountWithContexts(
|
||||||
<Formik>
|
<Formik>
|
||||||
|
|||||||
Reference in New Issue
Block a user