Test schema
This commit is contained in:
parent
3c28d112b5
commit
67f502579e
|
@ -1,3 +1,5 @@
|
||||||
|
import { db } from "../../../src"
|
||||||
|
|
||||||
export function expectFunctionWasCalledTimesWith(
|
export function expectFunctionWasCalledTimesWith(
|
||||||
jestFunction: any,
|
jestFunction: any,
|
||||||
times: number,
|
times: number,
|
||||||
|
@ -7,3 +9,14 @@ export function expectFunctionWasCalledTimesWith(
|
||||||
jestFunction.mock.calls.filter((call: any) => call[0] === argument).length
|
jestFunction.mock.calls.filter((call: any) => call[0] === argument).length
|
||||||
).toBe(times)
|
).toBe(times)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export const expectAnyInternalColsAttributes: {
|
||||||
|
[K in (typeof db.CONSTANT_INTERNAL_ROW_COLS)[number]]: any
|
||||||
|
} = {
|
||||||
|
tableId: expect.anything(),
|
||||||
|
type: expect.anything(),
|
||||||
|
_id: expect.anything(),
|
||||||
|
_rev: expect.anything(),
|
||||||
|
createdAt: expect.anything(),
|
||||||
|
updatedAt: expect.anything(),
|
||||||
|
}
|
||||||
|
|
|
@ -17,7 +17,11 @@ import {
|
||||||
SortType,
|
SortType,
|
||||||
SortOrder,
|
SortOrder,
|
||||||
} from "@budibase/types"
|
} from "@budibase/types"
|
||||||
import { generator, structures } from "@budibase/backend-core/tests"
|
import {
|
||||||
|
expectAnyInternalColsAttributes,
|
||||||
|
generator,
|
||||||
|
structures,
|
||||||
|
} from "@budibase/backend-core/tests"
|
||||||
|
|
||||||
describe("/rows", () => {
|
describe("/rows", () => {
|
||||||
let request = setup.getRequest()
|
let request = setup.getRequest()
|
||||||
|
@ -987,22 +991,11 @@ describe("/rows", () => {
|
||||||
})
|
})
|
||||||
const response = await config.api.viewV2.search(createViewResponse.id)
|
const response = await config.api.viewV2.search(createViewResponse.id)
|
||||||
|
|
||||||
const anyRowAttributes: {
|
|
||||||
[K in (typeof db.CONSTANT_INTERNAL_ROW_COLS)[number]]: any
|
|
||||||
} = {
|
|
||||||
tableId: expect.anything(),
|
|
||||||
type: expect.anything(),
|
|
||||||
_id: expect.anything(),
|
|
||||||
_rev: expect.anything(),
|
|
||||||
createdAt: expect.anything(),
|
|
||||||
updatedAt: expect.anything(),
|
|
||||||
}
|
|
||||||
|
|
||||||
expect(response.body.rows).toHaveLength(10)
|
expect(response.body.rows).toHaveLength(10)
|
||||||
expect(response.body.rows).toEqual(
|
expect(response.body.rows).toEqual(
|
||||||
expect.arrayContaining(
|
expect.arrayContaining(
|
||||||
rows.map(r => ({
|
rows.map(r => ({
|
||||||
...anyRowAttributes,
|
...expectAnyInternalColsAttributes,
|
||||||
name: r.name,
|
name: r.name,
|
||||||
}))
|
}))
|
||||||
)
|
)
|
||||||
|
|
|
@ -2,7 +2,10 @@ import { FieldType, Row, Table } from "@budibase/types"
|
||||||
import TestConfiguration from "../../../../../tests/utilities/TestConfiguration"
|
import TestConfiguration from "../../../../../tests/utilities/TestConfiguration"
|
||||||
import { SearchParams } from "../../search"
|
import { SearchParams } from "../../search"
|
||||||
import { search } from "../internal"
|
import { search } from "../internal"
|
||||||
import { generator } from "@budibase/backend-core/tests"
|
import {
|
||||||
|
expectAnyInternalColsAttributes,
|
||||||
|
generator,
|
||||||
|
} from "@budibase/backend-core/tests"
|
||||||
|
|
||||||
describe("internal", () => {
|
describe("internal", () => {
|
||||||
const config = new TestConfiguration()
|
const config = new TestConfiguration()
|
||||||
|
@ -78,5 +81,29 @@ describe("internal", () => {
|
||||||
)
|
)
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
|
it("querying by fields will always return data attribute columns", async () => {
|
||||||
|
await config.doInContext(config.appId, async () => {
|
||||||
|
const tableId = config.table!._id!
|
||||||
|
|
||||||
|
const searchParams: SearchParams = {
|
||||||
|
tableId,
|
||||||
|
query: {},
|
||||||
|
fields: ["name", "age"],
|
||||||
|
}
|
||||||
|
const result = await search(searchParams)
|
||||||
|
|
||||||
|
expect(result.rows).toHaveLength(10)
|
||||||
|
expect(result.rows).toEqual(
|
||||||
|
expect.arrayContaining(
|
||||||
|
rows.map(r => ({
|
||||||
|
...expectAnyInternalColsAttributes,
|
||||||
|
name: r.name,
|
||||||
|
age: r.age,
|
||||||
|
}))
|
||||||
|
)
|
||||||
|
)
|
||||||
|
})
|
||||||
|
})
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
Loading…
Reference in New Issue