Adding test case for app import functionality.
This commit is contained in:
parent
61c12d88cf
commit
85887d0371
|
@ -0,0 +1,32 @@
|
||||||
|
import * as setup from "./utilities"
|
||||||
|
import path from "path"
|
||||||
|
|
||||||
|
jest.setTimeout(15000)
|
||||||
|
const PASSWORD = "testtest"
|
||||||
|
|
||||||
|
describe("/applications/:appId/import", () => {
|
||||||
|
let request = setup.getRequest()
|
||||||
|
let config = setup.getConfig()
|
||||||
|
|
||||||
|
afterAll(setup.afterAll)
|
||||||
|
|
||||||
|
beforeAll(async () => {
|
||||||
|
await config.init()
|
||||||
|
})
|
||||||
|
|
||||||
|
it("should be able to perform import", async () => {
|
||||||
|
const appId = config.getAppId()
|
||||||
|
const res = await request
|
||||||
|
.post(`/api/applications/${appId}/import`)
|
||||||
|
.field("encryptionPassword", PASSWORD)
|
||||||
|
.attach("appExport", path.join(__dirname, "assets", "export.tar.gz"))
|
||||||
|
.set(config.defaultHeaders())
|
||||||
|
.expect("Content-Type", /json/)
|
||||||
|
.expect(200)
|
||||||
|
expect(res.body.message).toBe("app updated")
|
||||||
|
const screens = await config.api.screen.list()
|
||||||
|
expect(screens.length).toBe(2)
|
||||||
|
expect(screens[0].routing.route).toBe("/derp")
|
||||||
|
expect(screens[1].routing.route).toBe("/blank")
|
||||||
|
})
|
||||||
|
})
|
Binary file not shown.
|
@ -53,7 +53,6 @@ import {
|
||||||
View,
|
View,
|
||||||
FieldType,
|
FieldType,
|
||||||
RelationshipType,
|
RelationshipType,
|
||||||
ViewV2,
|
|
||||||
CreateViewRequest,
|
CreateViewRequest,
|
||||||
} from "@budibase/types"
|
} from "@budibase/types"
|
||||||
|
|
||||||
|
|
|
@ -5,6 +5,7 @@ import { TableAPI } from "./table"
|
||||||
import { ViewV2API } from "./viewV2"
|
import { ViewV2API } from "./viewV2"
|
||||||
import { DatasourceAPI } from "./datasource"
|
import { DatasourceAPI } from "./datasource"
|
||||||
import { LegacyViewAPI } from "./legacyView"
|
import { LegacyViewAPI } from "./legacyView"
|
||||||
|
import { ScreenAPI } from "./screen"
|
||||||
|
|
||||||
export default class API {
|
export default class API {
|
||||||
table: TableAPI
|
table: TableAPI
|
||||||
|
@ -13,6 +14,7 @@ export default class API {
|
||||||
row: RowAPI
|
row: RowAPI
|
||||||
permission: PermissionAPI
|
permission: PermissionAPI
|
||||||
datasource: DatasourceAPI
|
datasource: DatasourceAPI
|
||||||
|
screen: ScreenAPI
|
||||||
|
|
||||||
constructor(config: TestConfiguration) {
|
constructor(config: TestConfiguration) {
|
||||||
this.table = new TableAPI(config)
|
this.table = new TableAPI(config)
|
||||||
|
@ -21,5 +23,6 @@ export default class API {
|
||||||
this.row = new RowAPI(config)
|
this.row = new RowAPI(config)
|
||||||
this.permission = new PermissionAPI(config)
|
this.permission = new PermissionAPI(config)
|
||||||
this.datasource = new DatasourceAPI(config)
|
this.datasource = new DatasourceAPI(config)
|
||||||
|
this.screen = new ScreenAPI(config)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,18 @@
|
||||||
|
import TestConfiguration from "../TestConfiguration"
|
||||||
|
import { Screen } from "@budibase/types"
|
||||||
|
import { TestAPI } from "./base"
|
||||||
|
|
||||||
|
export class ScreenAPI extends TestAPI {
|
||||||
|
constructor(config: TestConfiguration) {
|
||||||
|
super(config)
|
||||||
|
}
|
||||||
|
|
||||||
|
list = async (): Promise<Screen[]> => {
|
||||||
|
const res = await this.request
|
||||||
|
.get(`/api/screens`)
|
||||||
|
.set(this.config.defaultHeaders())
|
||||||
|
.expect("Content-Type", /json/)
|
||||||
|
.expect(200)
|
||||||
|
return res.body as Screen[]
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue