Merge pull request #3387 from github/koesie10/update-ruby-generate-query-constraints

Update Ruby model generation query constraints
This commit is contained in:
Koen Vlaswinkel
2024-02-22 13:27:43 +01:00
committed by GitHub
5 changed files with 10 additions and 8 deletions

View File

@@ -33,7 +33,7 @@ export type ModelsAsDataLanguagePredicate<T> = {
};
type ModelsAsDataLanguageModelGeneration = {
queryConstraints: QueryConstraints;
queryConstraints: (mode: Mode) => QueryConstraints;
filterQueries?: (queryPath: string) => boolean;
parseResults: (
// The path to the query that generated the results.

View File

@@ -172,9 +172,10 @@ export const ruby: ModelsAsDataLanguage = {
},
},
modelGeneration: {
queryConstraints: {
"query path": "queries/modeling/GenerateModel.ql",
},
queryConstraints: (mode) => ({
kind: "table",
"tags contain all": ["modeleditor", "generate-model", modeTag(mode)],
}),
parseResults: parseGenerateModelResults,
},
accessPathSuggestions: {

View File

@@ -141,9 +141,9 @@ export const staticLanguage: ModelsAsDataLanguage = {
},
},
modelGeneration: {
queryConstraints: {
queryConstraints: () => ({
"tags contain": ["modelgenerator"],
},
}),
filterQueries: filterFlowModelQueries,
parseResults: parseFlowModelResults,
},

View File

@@ -619,7 +619,7 @@ export class ModelEditorView extends AbstractWebview<
try {
await runGenerateQueries({
queryConstraints: modelGeneration.queryConstraints,
queryConstraints: modelGeneration.queryConstraints(mode),
filterQueries: modelGeneration.filterQueries,
parseResults: (queryPath, results) =>
modelGeneration.parseResults(

View File

@@ -13,6 +13,7 @@ import { runGenerateQueries } from "../../../../src/model-editor/generate";
import { ruby } from "../../../../src/model-editor/languages/ruby";
import type { ModeledMethod } from "../../../../src/model-editor/modeled-method";
import { EndpointType } from "../../../../src/model-editor/method";
import { Mode } from "../../../../src/model-editor/shared/mode";
describe("runGenerateQueries", () => {
const modelsAsDataLanguage = ruby;
@@ -125,7 +126,7 @@ describe("runGenerateQueries", () => {
};
await runGenerateQueries({
queryConstraints: modelGeneration.queryConstraints,
queryConstraints: modelGeneration.queryConstraints(Mode.Framework),
filterQueries: modelGeneration.filterQueries,
parseResults: (queryPath, results) =>
modelGeneration.parseResults(