Merge pull request #693 from DEV-DIBSTER/main

fix: validation
This commit is contained in:
Tweak authored and GitHub committed 2024-09-08 21:23:22 -06:00
commit 21b2a90029
3 files changed
+26 -10

No files matched your search

+9
View File
@@ -2,6 +2,7 @@ const core = require('@actions/core');
const getJSON = require('../utils/getJSON.js');
const checkInfo = require('../utils/checkInfo.js');
const checkRecords = require('../utils/checkRecords.js');
const getFileName = require('../utils/getFileName.js');
const data = getJSON(process.env.FILES);
function setupMessages() {
@@ -48,3 +49,11 @@ test('Check if JSON file follows format', () => {
core.setOutput('recordMessage', recordMessage);
expect(passed).toBe(true);
});
test('Check if JSON file matches the value name', () => {
const passed = getFileName(process.env.FILES, data);
let fileNameMessage = passed === true ? "File name matches target.RECORD_TYPE." : "File name does not match any target.RECORD_TYPE.";
core.setOutput('fileNameMessage', fileNameMessage);
expect(passed).toBe(true);
});
+17
View File
@@ -0,0 +1,17 @@
const { stripExt } = require('./utils.js');
async function getFileName(file, data) {
// Extract the file name without extension
const fileNameWithoutExt = stripExt(file);
// Validate if the file name matches any of the target.RECORD_TYPE values
const recordTypes = Object.keys(data.target);
if (!recordTypes.includes(fileNameWithoutExt.toUpperCase())) {
core.setOutput('infoMessage', `File name ${fileNameWithoutExt} does not match any target.RECORD_TYPE`);
return false;
} else {
return true;
}
}
module.exports = getFileName;
-10
View File
@@ -15,16 +15,6 @@ function getJSON(file, filename) {
const rawdata = fs.readFileSync(path); // Read the file
const data = JSON.parse(rawdata); // Parse it
// Extract the file name without extension
const fileNameWithoutExt = stripExt(file);
// Validate if the file name matches any of the target.RECORD_TYPE values
const recordTypes = Object.keys(data.target);
if (!recordTypes.includes(fileNameWithoutExt.toUpperCase())) {
core.setOutput('infoMessage', `File name ${fileNameWithoutExt} does not match any target.RECORD_TYPE`);
return false;
}
return data; // Return the parsed data if validation passes
}
return 3; // It doesn't exist