新增評分項目設定、資料庫整合
This commit is contained in:
69
scripts/test-criteria-api.js
Normal file
69
scripts/test-criteria-api.js
Normal file
@@ -0,0 +1,69 @@
|
||||
const fetch = (...args) => import('node-fetch').then(({default: fetch}) => fetch(...args));
|
||||
|
||||
const API_BASE = 'http://localhost:3000/api';
|
||||
|
||||
async function testCriteriaAPI() {
|
||||
try {
|
||||
console.log('🔄 測試評分標準 API...');
|
||||
|
||||
// 1. 測試獲取預設模板
|
||||
console.log('\n1. 測試獲取預設模板...');
|
||||
const defaultResponse = await fetch(`${API_BASE}/criteria-templates/default`);
|
||||
const defaultData = await defaultResponse.json();
|
||||
|
||||
if (defaultData.success) {
|
||||
console.log('✅ 預設模板獲取成功');
|
||||
console.log(` 模板名稱: ${defaultData.data.name}`);
|
||||
console.log(` 評分項目數量: ${defaultData.data.items.length}`);
|
||||
defaultData.data.items.forEach((item, index) => {
|
||||
console.log(` ${index + 1}. ${item.name} (權重: ${item.weight}%)`);
|
||||
});
|
||||
} else {
|
||||
console.log('❌ 預設模板獲取失敗:', defaultData.error);
|
||||
}
|
||||
|
||||
// 2. 測試創建新模板
|
||||
console.log('\n2. 測試創建新模板...');
|
||||
const newTemplate = {
|
||||
name: '測試模板',
|
||||
description: '這是一個測試模板',
|
||||
items: [
|
||||
{ name: '測試項目1', description: '測試描述1', weight: 50, maxScore: 10 },
|
||||
{ name: '測試項目2', description: '測試描述2', weight: 50, maxScore: 10 }
|
||||
]
|
||||
};
|
||||
|
||||
const createResponse = await fetch(`${API_BASE}/criteria-templates`, {
|
||||
method: 'POST',
|
||||
headers: { 'Content-Type': 'application/json' },
|
||||
body: JSON.stringify(newTemplate)
|
||||
});
|
||||
const createData = await createResponse.json();
|
||||
|
||||
if (createData.success) {
|
||||
console.log('✅ 新模板創建成功');
|
||||
console.log(` 模板 ID: ${createData.data.id}`);
|
||||
} else {
|
||||
console.log('❌ 新模板創建失敗:', createData.error);
|
||||
}
|
||||
|
||||
// 3. 測試獲取所有模板
|
||||
console.log('\n3. 測試獲取所有模板...');
|
||||
const allResponse = await fetch(`${API_BASE}/criteria-templates`);
|
||||
const allData = await allResponse.json();
|
||||
|
||||
if (allData.success) {
|
||||
console.log('✅ 所有模板獲取成功');
|
||||
console.log(` 模板總數: ${allData.data.length}`);
|
||||
} else {
|
||||
console.log('❌ 所有模板獲取失敗:', allData.error);
|
||||
}
|
||||
|
||||
console.log('\n🎉 API 測試完成!');
|
||||
|
||||
} catch (error) {
|
||||
console.error('❌ 測試失敗:', error.message);
|
||||
}
|
||||
}
|
||||
|
||||
testCriteriaAPI();
|
Reference in New Issue
Block a user