CodeQL model editor: Make "add" and "delete" buttons more intuitive (#3123)
This commit is contained in:
@@ -269,7 +269,7 @@ const ModelableMethodRow = forwardRef<HTMLElement | undefined, MethodRowProps>(
|
|||||||
</DataGridCell>
|
</DataGridCell>
|
||||||
{viewState.showMultipleModels && (
|
{viewState.showMultipleModels && (
|
||||||
<DataGridCell>
|
<DataGridCell>
|
||||||
{index === modeledMethods.length - 1 ? (
|
{index === 0 ? (
|
||||||
<CodiconRow
|
<CodiconRow
|
||||||
appearance="icon"
|
appearance="icon"
|
||||||
aria-label="Add new model"
|
aria-label="Add new model"
|
||||||
|
|||||||
@@ -350,7 +350,7 @@ describe(MethodRow.name, () => {
|
|||||||
expect(removeButton?.getElementsByTagName("input")[0]).toBeEnabled();
|
expect(removeButton?.getElementsByTagName("input")[0]).toBeEnabled();
|
||||||
});
|
});
|
||||||
|
|
||||||
it("shows add model button on last row and remove model button on all other rows", async () => {
|
it("shows add model button on first row and remove model button on all other rows", async () => {
|
||||||
render({
|
render({
|
||||||
modeledMethods: [
|
modeledMethods: [
|
||||||
{ ...modeledMethod, type: "source" },
|
{ ...modeledMethod, type: "source" },
|
||||||
@@ -401,7 +401,7 @@ describe(MethodRow.name, () => {
|
|||||||
]);
|
]);
|
||||||
});
|
});
|
||||||
|
|
||||||
it("can delete the first modeled method", async () => {
|
it("cannot delete the first modeled method (but delete second instead)", async () => {
|
||||||
render({
|
render({
|
||||||
modeledMethods: [
|
modeledMethods: [
|
||||||
{ ...modeledMethod, type: "source" },
|
{ ...modeledMethod, type: "source" },
|
||||||
@@ -420,7 +420,7 @@ describe(MethodRow.name, () => {
|
|||||||
|
|
||||||
expect(onChange).toHaveBeenCalledTimes(1);
|
expect(onChange).toHaveBeenCalledTimes(1);
|
||||||
expect(onChange).toHaveBeenCalledWith(method.signature, [
|
expect(onChange).toHaveBeenCalledWith(method.signature, [
|
||||||
{ ...modeledMethod, type: "sink" },
|
{ ...modeledMethod, type: "source" },
|
||||||
{ ...modeledMethod, type: "none" },
|
{ ...modeledMethod, type: "none" },
|
||||||
{ ...modeledMethod, type: "summary" },
|
{ ...modeledMethod, type: "summary" },
|
||||||
]);
|
]);
|
||||||
@@ -441,7 +441,7 @@ describe(MethodRow.name, () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
onChange.mockReset();
|
onChange.mockReset();
|
||||||
await userEvent.click(screen.getAllByLabelText("Remove model")[2]);
|
await userEvent.click(screen.getAllByLabelText("Remove model")[1]);
|
||||||
|
|
||||||
expect(onChange).toHaveBeenCalledTimes(1);
|
expect(onChange).toHaveBeenCalledTimes(1);
|
||||||
expect(onChange).toHaveBeenCalledWith(method.signature, [
|
expect(onChange).toHaveBeenCalledWith(method.signature, [
|
||||||
|
|||||||
Reference in New Issue
Block a user