Initial commit
Dieser Commit ist enthalten in:
87
.cleanup-backup/test-create-employee.js
Normale Datei
87
.cleanup-backup/test-create-employee.js
Normale Datei
@ -0,0 +1,87 @@
|
||||
const axios = require('axios');
|
||||
|
||||
const API_URL = 'http://localhost:3004/api';
|
||||
|
||||
async function testCreateEmployee() {
|
||||
try {
|
||||
console.log('=== Testing Employee Creation with User Account ===\n');
|
||||
|
||||
// First login as admin
|
||||
console.log('1. Logging in as admin...');
|
||||
const loginResponse = await axios.post(`${API_URL}/auth/login`, {
|
||||
username: 'admin',
|
||||
password: 'admin123'
|
||||
});
|
||||
|
||||
const token = loginResponse.data.token;
|
||||
console.log('✓ Login successful, token received\n');
|
||||
|
||||
// Create a new employee with user account
|
||||
console.log('2. Creating new employee with superuser account...');
|
||||
const employeeData = {
|
||||
firstName: 'Max',
|
||||
lastName: 'Mustermann',
|
||||
email: 'max.mustermann@test.com',
|
||||
department: 'IT',
|
||||
userRole: 'superuser',
|
||||
createUser: true
|
||||
};
|
||||
|
||||
const createResponse = await axios.post(
|
||||
`${API_URL}/employees`,
|
||||
employeeData,
|
||||
{
|
||||
headers: {
|
||||
'Authorization': `Bearer ${token}`,
|
||||
'Content-Type': 'application/json'
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
console.log('✓ Employee created successfully!');
|
||||
console.log('Response:', JSON.stringify(createResponse.data, null, 2));
|
||||
|
||||
if (createResponse.data.data?.temporaryPassword) {
|
||||
console.log('\n=== IMPORTANT ===');
|
||||
console.log('Temporary Password:', createResponse.data.data.temporaryPassword);
|
||||
console.log('Employee ID:', createResponse.data.data.id);
|
||||
console.log('User ID:', createResponse.data.data.userId);
|
||||
console.log('=================\n');
|
||||
}
|
||||
|
||||
// Try to fetch users to verify decryption works
|
||||
console.log('3. Fetching users list to verify decryption...');
|
||||
const usersResponse = await axios.get(
|
||||
`${API_URL}/admin/users`,
|
||||
{
|
||||
headers: {
|
||||
'Authorization': `Bearer ${token}`
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
console.log('✓ Users fetched successfully!');
|
||||
console.log('Total users:', usersResponse.data.data.length);
|
||||
|
||||
const newUser = usersResponse.data.data.find(u => u.email === employeeData.email);
|
||||
if (newUser) {
|
||||
console.log('✓ New user found in list:', {
|
||||
username: newUser.username,
|
||||
email: newUser.email,
|
||||
role: newUser.role
|
||||
});
|
||||
}
|
||||
|
||||
console.log('\n✓ All tests passed successfully!');
|
||||
|
||||
} catch (error) {
|
||||
console.error('\n✗ Test failed:', error.response?.data || error.message);
|
||||
if (error.response?.data?.error?.details) {
|
||||
console.error('Validation errors:', error.response.data.error.details);
|
||||
}
|
||||
process.exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
// Run the test
|
||||
testCreateEmployee();
|
||||
In neuem Issue referenzieren
Einen Benutzer sperren