Add endpoint type to method definition

This adds an `endpointType` property to method definitions since we
already have different endpoints (for example methods and modules in
Ruby) and it would be useful to make a distinction between these (it's
not possible to model a module as a source/sink/summary, but it should
be possible to model as a type).
This commit is contained in:
Koen Vlaswinkel
2024-02-07 16:49:40 +01:00
parent bbfc5d88dd
commit c9be2ce32c
16 changed files with 121 additions and 8 deletions

View File

@@ -3,7 +3,7 @@ import type {
BqrsEntityValue,
} from "../common/bqrs-cli-types";
import type { Method, Usage } from "./method";
import { CallClassification } from "./method";
import { EndpointType, CallClassification } from "./method";
import type { ModeledMethodType } from "./modeled-method";
import { parseLibraryFilename } from "./library";
import { Mode } from "./shared/mode";
@@ -33,6 +33,7 @@ export function decodeBqrsToMethods(
let libraryVersion: string | undefined;
let type: ModeledMethodType;
let classification: CallClassification;
let endpointType = EndpointType.Method;
if (mode === Mode.Application) {
[
@@ -62,7 +63,12 @@ export function decodeBqrsToMethods(
classification = CallClassification.Unknown;
}
if (methodName === "") {
endpointType = EndpointType.Class;
}
const signature = definition.createMethodSignature({
endpointType,
packageName,
typeName,
methodName,
@@ -93,6 +99,7 @@ export function decodeBqrsToMethods(
library,
libraryVersion,
signature,
endpointType,
packageName,
typeName,
methodName,

View File

@@ -1,4 +1,5 @@
import { parseAccessPathTokens } from "../../shared/access-paths";
import { EndpointType } from "../../method";
const methodTokenRegex = /^Method\[(.+)]$/;
@@ -62,3 +63,7 @@ export function rubyPath(methodName: string, path: string) {
return `${methodPath}.${path}`;
}
export function rubyEndpointType(methodName: string) {
return methodName === "" ? EndpointType.Class : EndpointType.Method;
}

View File

@@ -7,6 +7,7 @@ import { getArgumentsList } from "../../method";
import {
parseRubyAccessPath,
parseRubyMethodFromPath,
rubyEndpointType,
rubyMethodPath,
rubyMethodSignature,
rubyPath,
@@ -42,6 +43,7 @@ export const ruby: ModelsAsDataLanguage = {
kind: row[2] as string,
provenance: "manual",
signature: rubyMethodSignature(typeName, methodName),
endpointType: rubyEndpointType(methodName),
packageName: "",
typeName,
methodName,
@@ -74,6 +76,7 @@ export const ruby: ModelsAsDataLanguage = {
kind: row[2] as string,
provenance: "manual",
signature: rubyMethodSignature(typeName, methodName),
endpointType: rubyEndpointType(methodName),
packageName: "",
typeName,
methodName,
@@ -104,6 +107,7 @@ export const ruby: ModelsAsDataLanguage = {
kind: row[4] as string,
provenance: "manual",
signature: rubyMethodSignature(typeName, methodName),
endpointType: rubyEndpointType(methodName),
packageName: "",
typeName,
methodName,
@@ -132,6 +136,7 @@ export const ruby: ModelsAsDataLanguage = {
kind: row[2] as string,
provenance: "manual",
signature: rubyMethodSignature(typeName, methodName),
endpointType: rubyEndpointType(methodName),
packageName: "",
typeName,
methodName,
@@ -156,6 +161,7 @@ export const ruby: ModelsAsDataLanguage = {
relatedTypeName: row[0] as string,
path,
signature: rubyMethodSignature(typeName, methodName),
endpointType: rubyEndpointType(methodName),
packageName: "",
typeName,
methodName,

View File

@@ -7,7 +7,11 @@ import type {
import type { ModelsAsDataLanguage } from "../models-as-data";
import type { AccessPathSuggestionRow } from "../../suggestions";
import { isDefinitionType } from "../../suggestions";
import { parseRubyMethodFromPath, rubyMethodSignature } from "./access-paths";
import {
parseRubyMethodFromPath,
rubyEndpointType,
rubyMethodSignature,
} from "./access-paths";
function checkTupleFormat(
tuple: BqrsCellValue[],
@@ -64,6 +68,7 @@ export function parseAccessPathSuggestionsResults(
return {
method: {
packageName: "",
endpointType: rubyEndpointType(methodName),
typeName: type,
methodName,
methodParameters: "",

View File

@@ -4,7 +4,7 @@ import type { DataTuple } from "../../model-extension-file";
import { sharedExtensiblePredicates, sharedKinds } from "../shared";
import { filterFlowModelQueries, parseFlowModelResults } from "./generate";
import type { MethodArgument } from "../../method";
import { getArgumentsList } from "../../method";
import { EndpointType, getArgumentsList } from "../../method";
function readRowToMethod(row: DataTuple[]): string {
return `${row[0]}.${row[1]}#${row[3]}${row[4]}`;
@@ -43,6 +43,7 @@ export const staticLanguage: ModelsAsDataLanguage = {
kind: row[7] as string,
provenance: row[8] as Provenance,
signature: readRowToMethod(row),
endpointType: EndpointType.Method,
packageName: row[0] as string,
typeName: row[1] as string,
methodName: row[3] as string,
@@ -74,6 +75,7 @@ export const staticLanguage: ModelsAsDataLanguage = {
kind: row[7] as string,
provenance: row[8] as Provenance,
signature: readRowToMethod(row),
endpointType: EndpointType.Method,
packageName: row[0] as string,
typeName: row[1] as string,
methodName: row[3] as string,
@@ -106,6 +108,7 @@ export const staticLanguage: ModelsAsDataLanguage = {
kind: row[8] as string,
provenance: row[9] as Provenance,
signature: readRowToMethod(row),
endpointType: EndpointType.Method,
packageName: row[0] as string,
typeName: row[1] as string,
methodName: row[3] as string,
@@ -133,6 +136,7 @@ export const staticLanguage: ModelsAsDataLanguage = {
kind: row[4] as string,
provenance: row[5] as Provenance,
signature: `${row[0]}.${row[1]}#${row[2]}${row[3]}`,
endpointType: EndpointType.Method,
packageName: row[0] as string,
typeName: row[1] as string,
methodName: row[2] as string,

View File

@@ -17,7 +17,13 @@ export type Usage = Call & {
readonly classification: CallClassification;
};
export enum EndpointType {
Method = "method",
Class = "class",
}
export interface MethodDefinition {
readonly endpointType: EndpointType;
/**
* The package name in Java, or the namespace in C#, e.g. `org.sql2o` or `System.Net.Http.Headers`.
*

View File

@@ -7,6 +7,7 @@ export function createEmptyModeledMethod(
methodSignature: MethodSignature,
) {
const canonicalMethodSignature: MethodSignature = {
endpointType: methodSignature.endpointType,
packageName: methodSignature.packageName,
typeName: methodSignature.typeName,
methodName: methodSignature.methodName,

View File

@@ -25,6 +25,7 @@ function canonicalizeModeledMethod(
modeledMethod: ModeledMethod,
): ModeledMethod {
const methodSignature: MethodSignature = {
endpointType: modeledMethod.endpointType,
signature: modeledMethod.signature,
packageName: modeledMethod.packageName,
typeName: modeledMethod.typeName,

View File

@@ -1,7 +1,7 @@
import type { Meta, StoryFn } from "@storybook/react";
import { LibraryRow as LibraryRowComponent } from "../../view/model-editor/LibraryRow";
import { CallClassification } from "../../model-editor/method";
import { CallClassification, EndpointType } from "../../model-editor/method";
import { createMockModelEditorViewState } from "../../../test/factories/model-editor/view-state";
export default {
@@ -22,6 +22,7 @@ LibraryRow.args = {
library: "sql2o",
libraryVersion: "1.6.0",
signature: "org.sql2o.Connection#createQuery(String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Connection",
methodName: "createQuery",
@@ -44,6 +45,7 @@ LibraryRow.args = {
library: "sql2o",
libraryVersion: "1.6.0",
signature: "org.sql2o.Query#executeScalar(Class)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Query",
methodName: "executeScalar",
@@ -66,6 +68,7 @@ LibraryRow.args = {
library: "sql2o",
libraryVersion: "1.6.0",
signature: "org.sql2o.Sql2o#open()",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Sql2o",
methodName: "open",
@@ -88,6 +91,7 @@ LibraryRow.args = {
library: "sql2o",
libraryVersion: "1.6.0",
signature: "org.sql2o.Sql2o#Sql2o(String,String,String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Sql2o",
methodName: "Sql2o",
@@ -110,6 +114,7 @@ LibraryRow.args = {
library: "sql2o",
libraryVersion: "1.6.0",
signature: "org.sql2o.Sql2o#Sql2o(String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Sql2o",
methodName: "Sql2o",
@@ -150,6 +155,7 @@ LibraryRow.args = {
kind: "jndi-injection",
provenance: "df-generated",
signature: "org.sql2o.Sql2o#Sql2o(String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Sql2o",
methodName: "Sql2o",
@@ -164,6 +170,7 @@ LibraryRow.args = {
kind: "taint",
provenance: "df-manual",
signature: "org.sql2o.Connection#createQuery(String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Connection",
methodName: "createQuery",
@@ -178,6 +185,7 @@ LibraryRow.args = {
kind: "taint",
provenance: "manual",
signature: "org.sql2o.Sql2o#open()",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Sql2o",
methodName: "open",
@@ -190,6 +198,7 @@ LibraryRow.args = {
kind: "summary",
provenance: "df-generated",
signature: "org.sql2o.Query#executeScalar(Class)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Query",
methodName: "executeScalar",
@@ -202,6 +211,7 @@ LibraryRow.args = {
kind: "sink",
provenance: "df-generated",
signature: "org.sql2o.Sql2o#Sql2o(String,String,String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Sql2o",
methodName: "Sql2o",

View File

@@ -4,7 +4,7 @@ import type { Meta, StoryFn } from "@storybook/react";
import { MethodRow as MethodRowComponent } from "../../view/model-editor/MethodRow";
import type { Method } from "../../model-editor/method";
import { CallClassification } from "../../model-editor/method";
import { EndpointType, CallClassification } from "../../model-editor/method";
import type { ModeledMethod } from "../../model-editor/modeled-method";
import { MULTIPLE_MODELS_GRID_TEMPLATE_COLUMNS } from "../../view/model-editor/ModeledMethodDataGrid";
import { DataGrid } from "../../view/common/DataGrid";
@@ -46,6 +46,7 @@ const Template: StoryFn<typeof MethodRowComponent> = (args) => {
const method: Method = {
library: "sql2o-1.6.0.jar",
signature: "org.sql2o.Sql2o#open()",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Sql2o",
methodName: "open",
@@ -86,6 +87,7 @@ const modeledMethod: ModeledMethod = {
kind: "taint",
provenance: "manual",
signature: "org.sql2o.Sql2o#open()",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Sql2o",
methodName: "open",

View File

@@ -1,7 +1,7 @@
import type { Meta, StoryFn } from "@storybook/react";
import { ModelEditor as ModelEditorComponent } from "../../view/model-editor/ModelEditor";
import { CallClassification } from "../../model-editor/method";
import { CallClassification, EndpointType } from "../../model-editor/method";
import { createMockModelEditorViewState } from "../../../test/factories/model-editor/view-state";
export default {
@@ -34,6 +34,7 @@ ModelEditor.args = {
library: "sql2o",
libraryVersion: "1.6.0",
signature: "org.sql2o.Connection#createQuery(String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Connection",
methodName: "createQuery",
@@ -56,6 +57,7 @@ ModelEditor.args = {
library: "sql2o",
libraryVersion: "1.6.0",
signature: "org.sql2o.Query#executeScalar(Class)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Query",
methodName: "executeScalar",
@@ -78,6 +80,7 @@ ModelEditor.args = {
library: "sql2o",
libraryVersion: "1.6.0",
signature: "org.sql2o.Sql2o#open()",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Sql2o",
methodName: "open",
@@ -99,6 +102,7 @@ ModelEditor.args = {
{
library: "rt",
signature: "java.io.PrintStream#println(String)",
endpointType: EndpointType.Method,
packageName: "java.io",
typeName: "PrintStream",
methodName: "println",
@@ -137,6 +141,7 @@ ModelEditor.args = {
libraryVersion: "3.0.2",
signature:
"org.springframework.boot.SpringApplication#run(Class,String[])",
endpointType: EndpointType.Method,
packageName: "org.springframework.boot",
typeName: "SpringApplication",
methodName: "run",
@@ -159,6 +164,7 @@ ModelEditor.args = {
library: "sql2o",
libraryVersion: "1.6.0",
signature: "org.sql2o.Sql2o#Sql2o(String,String,String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Sql2o",
methodName: "Sql2o",
@@ -181,6 +187,7 @@ ModelEditor.args = {
library: "sql2o",
libraryVersion: "1.6.0",
signature: "org.sql2o.Sql2o#Sql2o(String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Sql2o",
methodName: "Sql2o",
@@ -221,6 +228,7 @@ ModelEditor.args = {
kind: "jndi-injection",
provenance: "df-generated",
signature: "org.sql2o.Sql2o#Sql2o(String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Sql2o",
methodName: "Sql2o",
@@ -235,6 +243,7 @@ ModelEditor.args = {
kind: "taint",
provenance: "df-manual",
signature: "org.sql2o.Connection#createQuery(String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Connection",
methodName: "createQuery",
@@ -249,6 +258,7 @@ ModelEditor.args = {
kind: "taint",
provenance: "manual",
signature: "org.sql2o.Sql2o#open()",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Sql2o",
methodName: "open",
@@ -261,6 +271,7 @@ ModelEditor.args = {
kind: "sink",
provenance: "df-generated",
signature: "org.sql2o.Query#executeScalar(Class)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Query",
methodName: "executeScalar",
@@ -273,6 +284,7 @@ ModelEditor.args = {
kind: "sink",
provenance: "df-generated",
signature: "org.sql2o.Sql2o#Sql2o(String,String,String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Sql2o",
methodName: "Sql2o",

View File

@@ -1,5 +1,8 @@
import type { Method, Usage } from "../../../src/model-editor/method";
import { CallClassification } from "../../../src/model-editor/method";
import {
EndpointType,
CallClassification,
} from "../../../src/model-editor/method";
import type { UrlValueResolvable } from "../../../src/common/raw-result-types";
export function createMethod(data: Partial<Method> = {}): Method {
@@ -10,6 +13,7 @@ export function createMethod(data: Partial<Method> = {}): Method {
supportedType: "summary",
usages: [],
signature: "org.sql2o.Sql2o#open()",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Sql2o",
methodName: "open",

View File

@@ -6,6 +6,7 @@ import type {
SummaryModeledMethod,
} from "../../../src/model-editor/modeled-method";
import type { MethodSignature } from "../../../src/model-editor/method";
import { EndpointType } from "../../../src/model-editor/method";
export function createMethodSignature(
data: Partial<MethodSignature> = {},
@@ -13,6 +14,7 @@ export function createMethodSignature(
return {
libraryVersion: "1.6.0",
signature: "org.sql2o.Connection#createQuery(String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Connection",
methodName: "createQuery",

View File

@@ -9,6 +9,7 @@ import type { AutoModelQueriesResult } from "../../../src/model-editor/auto-mode
import type { Log } from "sarif";
import { gzipDecode } from "../../../src/common/zlib";
import type { Method } from "../../../src/model-editor/method";
import { EndpointType } from "../../../src/model-editor/method";
import type { ModeledMethod } from "../../../src/model-editor/modeled-method";
describe("createAutoModelRequest", () => {
@@ -90,6 +91,7 @@ describe("getCandidates", () => {
{
library: "my.jar",
signature: "org.my.A#x()",
endpointType: EndpointType.Method,
packageName: "org.my",
typeName: "A",
methodName: "x",
@@ -106,6 +108,7 @@ describe("getCandidates", () => {
kind: "sink",
provenance: "manual",
signature: "org.my.A#x()",
endpointType: EndpointType.Method,
packageName: "org.my",
typeName: "A",
methodName: "x",
@@ -122,6 +125,7 @@ describe("getCandidates", () => {
{
library: "my.jar",
signature: "org.my.A#x()",
endpointType: EndpointType.Method,
packageName: "org.my",
typeName: "A",
methodName: "x",
@@ -141,6 +145,7 @@ describe("getCandidates", () => {
methods.push({
library: "my.jar",
signature: "org.my.A#x()",
endpointType: EndpointType.Method,
packageName: "org.my",
typeName: "A",
methodName: "x",

View File

@@ -7,7 +7,10 @@ import {
loadDataExtensionYaml,
} from "../../../src/model-editor/yaml";
import type { Method } from "../../../src/model-editor/method";
import { CallClassification } from "../../../src/model-editor/method";
import {
CallClassification,
EndpointType,
} from "../../../src/model-editor/method";
import { QueryLanguage } from "../../../src/common/query-language";
import type { ModeledMethod } from "../../../src/model-editor/modeled-method";
@@ -20,6 +23,7 @@ describe("createDataExtensionYaml", () => {
kind: "sql",
provenance: "df-generated",
signature: "org.sql2o.Connection#createQuery(String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Connection",
methodName: "createQuery",
@@ -87,6 +91,7 @@ describe("createDataExtensionYamlsForApplicationMode", () => {
library: "sql2o",
libraryVersion: "1.6.0",
signature: "org.sql2o.Connection#createQuery(String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Connection",
methodName: "createQuery",
@@ -124,6 +129,7 @@ describe("createDataExtensionYamlsForApplicationMode", () => {
library: "sql2o",
libraryVersion: "1.6.0",
signature: "org.sql2o.Query#executeScalar(Class)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Query",
methodName: "executeScalar",
@@ -161,6 +167,7 @@ describe("createDataExtensionYamlsForApplicationMode", () => {
library: "sql2o",
libraryVersion: "2.5.0-alpha1",
signature: "org.sql2o.Sql2o#Sql2o(String,String,String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Sql2o",
methodName: "Sql2o",
@@ -187,6 +194,7 @@ describe("createDataExtensionYamlsForApplicationMode", () => {
libraryVersion: "3.0.2",
signature:
"org.springframework.boot.SpringApplication#run(Class,String[])",
endpointType: EndpointType.Method,
packageName: "org.springframework.boot",
typeName: "SpringApplication",
methodName: "run",
@@ -211,6 +219,7 @@ describe("createDataExtensionYamlsForApplicationMode", () => {
{
library: "rt",
signature: "java.io.PrintStream#println(String)",
endpointType: EndpointType.Method,
packageName: "java.io",
typeName: "PrintStream",
methodName: "println",
@@ -241,6 +250,7 @@ describe("createDataExtensionYamlsForApplicationMode", () => {
kind: "sql",
provenance: "df-generated",
signature: "org.sql2o.Connection#createQuery(String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Connection",
methodName: "createQuery",
@@ -254,6 +264,7 @@ describe("createDataExtensionYamlsForApplicationMode", () => {
provenance: "manual",
signature:
"org.springframework.boot.SpringApplication#run(Class,String[])",
endpointType: EndpointType.Method,
packageName: "org.springframework.boot",
typeName: "SpringApplication",
methodName: "run",
@@ -266,6 +277,7 @@ describe("createDataExtensionYamlsForApplicationMode", () => {
input: "Argument[0]",
kind: "jndi",
provenance: "manual",
endpointType: EndpointType.Method,
signature: "org.sql2o.Sql2o#Sql2o(String,String,String)",
packageName: "org.sql2o",
typeName: "Sql2o",
@@ -334,6 +346,7 @@ describe("createDataExtensionYamlsForApplicationMode", () => {
library: "sql2o",
libraryVersion: "1.6.0",
signature: "org.sql2o.Connection#createQuery(String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Connection",
methodName: "createQuery",
@@ -371,6 +384,7 @@ describe("createDataExtensionYamlsForApplicationMode", () => {
library: "sql2o",
libraryVersion: "1.6.0",
signature: "org.sql2o.Query#executeScalar(Class)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Query",
methodName: "executeScalar",
@@ -408,6 +422,7 @@ describe("createDataExtensionYamlsForApplicationMode", () => {
library: "sql2o",
libraryVersion: "2.5.0-alpha1",
signature: "org.sql2o.Sql2o#Sql2o(String,String,String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Sql2o",
methodName: "Sql2o",
@@ -434,6 +449,7 @@ describe("createDataExtensionYamlsForApplicationMode", () => {
libraryVersion: "3.0.2",
signature:
"org.springframework.boot.SpringApplication#run(Class,String[])",
endpointType: EndpointType.Method,
packageName: "org.springframework.boot",
typeName: "SpringApplication",
methodName: "run",
@@ -458,6 +474,7 @@ describe("createDataExtensionYamlsForApplicationMode", () => {
{
library: "rt",
signature: "java.io.PrintStream#println(String)",
endpointType: EndpointType.Method,
packageName: "java.io",
typeName: "PrintStream",
methodName: "println",
@@ -488,6 +505,7 @@ describe("createDataExtensionYamlsForApplicationMode", () => {
kind: "sql",
provenance: "df-generated",
signature: "org.sql2o.Connection#createQuery(String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Connection",
methodName: "createQuery",
@@ -501,6 +519,7 @@ describe("createDataExtensionYamlsForApplicationMode", () => {
provenance: "manual",
signature:
"org.springframework.boot.SpringApplication#run(Class,String[])",
endpointType: EndpointType.Method,
packageName: "org.springframework.boot",
typeName: "SpringApplication",
methodName: "run",
@@ -514,6 +533,7 @@ describe("createDataExtensionYamlsForApplicationMode", () => {
kind: "jndi",
provenance: "manual",
signature: "org.sql2o.Sql2o#Sql2o(String,String,String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Sql2o",
methodName: "Sql2o",
@@ -529,6 +549,7 @@ describe("createDataExtensionYamlsForApplicationMode", () => {
kind: "summary",
provenance: "manual",
signature: "org.sql2o.Connection#createQuery(String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Connection",
methodName: "createQuery",
@@ -541,6 +562,7 @@ describe("createDataExtensionYamlsForApplicationMode", () => {
kind: "summary",
provenance: "manual",
signature: "org.sql2o.Query#executeScalar(Class)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Query",
methodName: "executeScalar",
@@ -558,6 +580,7 @@ describe("createDataExtensionYamlsForApplicationMode", () => {
provenance: "df-generated",
signature:
"com.google.gson.TypeAdapter#fromJsonTree(JsonElement)",
endpointType: EndpointType.Method,
packageName: "com.google.gson",
typeName: "TypeAdapter",
methodName: "fromJsonTree",
@@ -627,6 +650,7 @@ describe("createDataExtensionYamlsForFrameworkMode", () => {
{
library: "sql2o",
signature: "org.sql2o.Connection#createQuery(String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Connection",
methodName: "createQuery",
@@ -663,6 +687,7 @@ describe("createDataExtensionYamlsForFrameworkMode", () => {
{
library: "sql2o",
signature: "org.sql2o.Query#executeScalar(Class)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Query",
methodName: "executeScalar",
@@ -699,6 +724,7 @@ describe("createDataExtensionYamlsForFrameworkMode", () => {
{
library: "sql2o",
signature: "org.sql2o.Sql2o#Sql2o(String,String,String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Sql2o",
methodName: "Sql2o",
@@ -729,6 +755,7 @@ describe("createDataExtensionYamlsForFrameworkMode", () => {
kind: "sql",
provenance: "df-generated",
signature: "org.sql2o.Connection#createQuery(String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Connection",
methodName: "createQuery",
@@ -742,6 +769,7 @@ describe("createDataExtensionYamlsForFrameworkMode", () => {
kind: "jndi",
provenance: "manual",
signature: "org.sql2o.Sql2o#Sql2o(String,String,String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Sql2o",
methodName: "Sql2o",
@@ -786,6 +814,7 @@ describe("createDataExtensionYamlsForFrameworkMode", () => {
{
library: "sql2o",
signature: "org.sql2o.Connection#createQuery(String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Connection",
methodName: "createQuery",
@@ -822,6 +851,7 @@ describe("createDataExtensionYamlsForFrameworkMode", () => {
{
library: "sql2o",
signature: "org.sql2o.Query#executeScalar(Class)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Query",
methodName: "executeScalar",
@@ -858,6 +888,7 @@ describe("createDataExtensionYamlsForFrameworkMode", () => {
{
library: "sql2o",
signature: "org.sql2o.Sql2o#Sql2o(String,String,String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Sql2o",
methodName: "Sql2o",
@@ -888,6 +919,7 @@ describe("createDataExtensionYamlsForFrameworkMode", () => {
kind: "sql",
provenance: "df-generated",
signature: "org.sql2o.Connection#createQuery(String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Connection",
methodName: "createQuery",
@@ -901,6 +933,7 @@ describe("createDataExtensionYamlsForFrameworkMode", () => {
kind: "jndi",
provenance: "manual",
signature: "org.sql2o.Sql2o#Sql2o(String,String,String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Sql2o",
methodName: "Sql2o",
@@ -916,6 +949,7 @@ describe("createDataExtensionYamlsForFrameworkMode", () => {
kind: "summary",
provenance: "manual",
signature: "org.sql2o.Connection#createQuery(String)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Connection",
methodName: "createQuery",
@@ -928,6 +962,7 @@ describe("createDataExtensionYamlsForFrameworkMode", () => {
kind: "summary",
provenance: "manual",
signature: "org.sql2o.Query#executeScalar(Class)",
endpointType: EndpointType.Method,
packageName: "org.sql2o",
typeName: "Query",
methodName: "executeScalar",
@@ -945,6 +980,7 @@ describe("createDataExtensionYamlsForFrameworkMode", () => {
provenance: "df-generated",
signature:
"com.google.gson.TypeAdapter#fromJsonTree(JsonElement)",
endpointType: EndpointType.Method,
packageName: "com.google.gson",
typeName: "TypeAdapter",
methodName: "fromJsonTree",
@@ -989,6 +1025,7 @@ describe("createDataExtensionYamlsForFrameworkMode", () => {
library: "HostTestAppDbContext",
signature:
"Volo.Abp.TestApp.MongoDb.HostTestAppDbContext#get_FifthDbContextDummyEntity()",
endpointType: EndpointType.Method,
packageName: "Volo.Abp.TestApp.MongoDb",
typeName: "HostTestAppDbContext",
methodName: "get_FifthDbContextDummyEntity",
@@ -1001,6 +1038,7 @@ describe("createDataExtensionYamlsForFrameworkMode", () => {
library: "CityRepository",
signature:
"Volo.Abp.TestApp.MongoDB.CityRepository#FindByNameAsync(System.String)",
endpointType: EndpointType.Method,
packageName: "Volo.Abp.TestApp.MongoDB",
typeName: "CityRepository",
methodName: "FindByNameAsync",
@@ -1020,6 +1058,7 @@ describe("createDataExtensionYamlsForFrameworkMode", () => {
provenance: "df-generated",
signature:
"Volo.Abp.TestApp.MongoDb.HostTestAppDbContext#get_FifthDbContextDummyEntity()",
endpointType: EndpointType.Method,
packageName: "Volo.Abp.TestApp.MongoDb",
typeName: "HostTestAppDbContext",
methodName: "get_FifthDbContextDummyEntity",
@@ -1034,6 +1073,7 @@ describe("createDataExtensionYamlsForFrameworkMode", () => {
provenance: "df-generated",
signature:
"Volo.Abp.TestApp.MongoDB.CityRepository#FindByNameAsync(System.String)",
endpointType: EndpointType.Method,
packageName: "Volo.Abp.TestApp.MongoDB",
typeName: "CityRepository",
methodName: "FindByNameAsync",
@@ -1093,6 +1133,7 @@ describe("createDataExtensionYamlsForFrameworkMode", () => {
provenance: "manual",
signature:
"Volo.Abp.TestApp.MongoDB.CityRepository#FindByNameAsync(System.String)",
endpointType: EndpointType.Method,
packageName: "Volo.Abp.TestApp.MongoDB",
typeName: "CityRepository",
methodName: "FindByNameAsync",

View File

@@ -13,6 +13,7 @@ import type { CodeQLCliServer } from "../../../../src/codeql-cli/cli";
import type { QueryRunner } from "../../../../src/query-server";
import * as queryResolver from "../../../../src/local-queries/query-resolver";
import type { MethodSignature } from "../../../../src/model-editor/method";
import { EndpointType } from "../../../../src/model-editor/method";
import { join } from "path";
import { pathExists, readFile } from "fs-extra";
import { load as loadYaml } from "js-yaml";
@@ -170,6 +171,7 @@ describe("generateCandidateFilterPack", () => {
const candidateMethods: MethodSignature[] = [
{
signature: "org.my.A#x()",
endpointType: EndpointType.Method,
packageName: "org.my",
typeName: "A",
methodName: "x",