- use latest prettier 3.0 with eslint-plugin-prettier: 5.0.0-alpha.2
All checks were successful
CI Pipeline / japa-tests (push) Successful in 46s
All checks were successful
CI Pipeline / japa-tests (push) Successful in 46s
- npm normal updates - add all xslt and style asstes in extra folder public/assets2 - linting corrections - delete local .env.test from git tracking: git rm --cached .env.test - add .env.test into .gitignore file - add edit functionality for editing by submitter - npm updates -added xslt3 packeage for builfing sef files - added Language.ts class vor language table - added version to datasetxml2oai-pmh.xslt
This commit is contained in:
parent
f403c3109f
commit
4714dfdd94
70 changed files with 22920 additions and 17407 deletions
|
@ -47,7 +47,7 @@ export const reporters: Required<Config>['reporters'] = [specReporter()];
|
|||
|
|
||||
*/
|
||||
export const runnerHooks: Pick<Required<Config>, 'setup' | 'teardown'> = {
|
||||
setup: [() => TestUtils.ace().loadCommands()],
|
||||
setup: [() => TestUtils.ace().loadCommands(), () => TestUtils.db().migrate()],
|
||||
teardown: [],
|
||||
};
|
||||
|
||||
|
|
83
tests/functional/dataset_controller.spec.ts
Normal file
83
tests/functional/dataset_controller.spec.ts
Normal file
|
@ -0,0 +1,83 @@
|
|||
import { test } from '@japa/runner';
|
||||
import supertest from 'supertest';
|
||||
import Database from '@ioc:Adonis/Lucid/Database';
|
||||
import Dataset from 'App/Models/Dataset';
|
||||
import server from '@ioc:Adonis/Core/Server'; // Import the server instance
|
||||
import User from 'App/Models/User';
|
||||
|
||||
test.group('DatasetController', (group) => {
|
||||
// Write your test here
|
||||
// beforeEach(async () => {
|
||||
// await Database.beginGlobalTransaction();
|
||||
// });
|
||||
// In the following example, we start a global transaction before all the tests and roll back it after the tests.
|
||||
group.each.setup(async () => {
|
||||
await Database.beginGlobalTransaction();
|
||||
return () => Database.rollbackGlobalTransaction();
|
||||
});
|
||||
|
||||
test('should render dataset release page', async ({ assert }) => {
|
||||
// var agent = supertest(server.instance);
|
||||
|
||||
// const user = await loginUser(agent);
|
||||
const user = await User.create({
|
||||
login: 'test',
|
||||
email: 'alice@email.com',
|
||||
password: 'password',
|
||||
});
|
||||
|
||||
const dataset = new Dataset();
|
||||
dataset.type = 'analysisdata';
|
||||
dataset.creatingCorporation = 'Tethys RDR';
|
||||
dataset.language = 'de';
|
||||
dataset.server_state = 'inprogress'; // Set the desired server state here
|
||||
await dataset.save();
|
||||
|
||||
await user.related('datasets').save(dataset);
|
||||
|
||||
// Perform the login request to establish the session
|
||||
const loginResponse = await supertest(server.instance)
|
||||
.post('/app/login')
|
||||
// .field('email', user.email)
|
||||
// .field('password', user.password)
|
||||
// .set('Content-Type', 'application/x-www-form-urlencoded')
|
||||
.send({ email: user.email, password: 'password' })
|
||||
.set('Content-Type', 'application/json')
|
||||
.expect(302); // Assuming the login endpoint redirects, if succesful
|
||||
// Extract the session cookies from the login response
|
||||
assert.exists(loginResponse.headers['set-cookie']);
|
||||
const cookie = loginResponse.headers['set-cookie'];
|
||||
|
||||
// const response = await supertest(server.instance).get(`/submitter/dataset/${dataset.id}/release`).expect(302); //302 if authenticated, else 200
|
||||
const response = await supertest(server.instance)
|
||||
.get(`/submitter/dataset/${dataset.id}/release`)
|
||||
.set('Cookie', cookie)
|
||||
.set('X-Requested-With', 'XMLHttpRequest') // Set the X-Requested-With header to mimic an AJAX request
|
||||
.set('X-Inertia', 'true')
|
||||
// .set('X-Inertia-Version', '97c0899ca6e04e77a69f1ad5320e4ebe')
|
||||
.set('Accept', 'text/html, application/xhtml+xml')
|
||||
.set('Accept-Encoding', 'gzip, deflate, br')
|
||||
.set('Connection', 'keep-alive')
|
||||
.set(
|
||||
'User-Agent',
|
||||
'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36',
|
||||
)
|
||||
.set('Host', 'localhost:4001')
|
||||
// .set('Referer', 'http://localhost:3333/submitter/dataset')
|
||||
// .set('Authorization', `Bearer ${authToken}`) // Set the Authorization header with the authentication token .
|
||||
|
||||
.expect(200);
|
||||
|
||||
// assert.equal(response.statusCode, 302);
|
||||
|
||||
// Add more assertions based on the expected behavior
|
||||
// assert.equal(response.header('X-Inertia'), 'true');
|
||||
// assert.equal(response.header('Content-Type'), 'application/json');
|
||||
assert.equal(response.headers['x-inertia'], 'true');
|
||||
assert.equal(response.headers['content-type'], 'application/json; charset=utf-8');
|
||||
|
||||
const responseData = response.body as { component: string; props: { dataset: any }; url: string };
|
||||
// assert.equal(responseData.component, 'DatasetReleasePage');
|
||||
assert.equal(responseData.props.dataset.id, dataset.id);
|
||||
});
|
||||
});
|
Loading…
Add table
editor.link_modal.header
Reference in a new issue