diff --git a/plugins/datalogger/JS/dataLoggerAutomatedTest.js b/plugins/datalogger/JS/dataLoggerAutomatedTest.js new file mode 100644 index 0000000000..590ff50ca7 --- /dev/null +++ b/plugins/datalogger/JS/dataLoggerAutomatedTest.js @@ -0,0 +1,38 @@ +//This import paht is relative to where scopy is build +importFileContent("../JS/scpyDefaultJsFunctions.js") +importFileContent("../plugins/datalogger/JS/dataLoggerFunctions.js") + +function dataLogAndLoadTest(){ + //TODO REPLACE WITH VAR + const filePath = "../plugins/datalogger/JS/test.csv" + + printToConsole("FILE IS " + filePath) + + //CONNECT TO EMU + connect() + + msleep(1000) + //TEST DATA LOGGER + printToConsole(datalogger.showAvailableMonitors()) + + //CREATE NEW TOOL + msleep(1000) + var tool = "DataLogger 0" + + if (tool !== "") { + //GET 2 CHANNELS OF THE TOOL + scopy.switchTool(tool) + var selectedMonitors = getMonitors(tool) + printToConsole("Monitors : " + selectedMonitors) + //LOG DATA ON THE TOOL CHANNELS + logData(tool, filePath, selectedMonitors) + msleep(1000) + //LOAD DATA FOR THE TOOL CHANNELS + loadData(tool, filePath, selectedMonitors) + msleep(1000) + } + disconnect() +} + +dataLogAndLoadTest() + diff --git a/plugins/datalogger/JS/dataLoggerFunctions.js b/plugins/datalogger/JS/dataLoggerFunctions.js new file mode 100644 index 0000000000..7607d885c7 --- /dev/null +++ b/plugins/datalogger/JS/dataLoggerFunctions.js @@ -0,0 +1,62 @@ +/* log data test */ +function logData(tool, filePath, selectedMonitors) { + datalogger.enableMonitorOfTool(tool, selectedMonitors[0]) + datalogger.enableMonitorOfTool(tool, selectedMonitors[1]) + datalogger.clearData() + msleep(500) + datalogger.setRunning(true) + msleep(1000) + datalogger.logAtPathForTool(tool, filePath) + datalogger.continuousLogAtPathForTool(tool, filePath) + msleep(5000) + datalogger.disableMonitorOfTool(tool, selectedMonitors[0]) + datalogger.disableMonitorOfTool(tool, selectedMonitors[1]) + datalogger.setRunning(false) + datalogger.stopContinuousLogForTool(tool) + + printToConsole("Data logged for tool : " + tool + " at :" + filePath) +} + +/* load data test */ +function loadData(tool, filePath, selectedMonitors) { + + datalogger.importDataFromPathForTool(tool, filePath) + msleep(500) + datalogger.enableMonitorOfTool(tool, "Import: test.csv:" + selectedMonitors[0]) + datalogger.enableMonitorOfTool(tool, "Import: test.csv:" + selectedMonitors[1]) + + printToConsole("Data loaded for tool : " + tool + " from :" + filePath) +} + +function getMonitors(tool){ + var monitors = datalogger.showAvailableMonitors() + printToConsole("Monitors list: " + monitors) + var monitorList = monitors.split(/\n/) + var voltage0Monitor = monitorList[2] + printToConsole("Monitor1 : " + voltage0Monitor) + var voltage1Monitor = monitorList[3] + printToConsole("Monitor2 : " + voltage1Monitor) + var selectedMonitors = [] + selectedMonitors[0] = voltage0Monitor + selectedMonitors[1] = voltage1Monitor + + return selectedMonitors +} + +function createTool(deviceID){ + printToConsole("############################### HERE in file ") + var newTool = datalogger.createTool() + if (newTool !== "") { + scopy.switchTool(deviceID, newTool) + printToConsole("New tool created: " + newTool) + } else { + printToConsole("ERROR: Tool creation failed") + exit(1) + } + return "DataLogger 1" +} + +function test(ceva){ + printToConsole("############################### HERE in file test " + ceva) +} + diff --git a/plugins/datalogger/JS/test.csv b/plugins/datalogger/JS/test.csv new file mode 100644 index 0000000000..f92eb0bc9e --- /dev/null +++ b/plugins/datalogger/JS/test.csv @@ -0,0 +1,7 @@ +Time, xadc:voltage0, xadc:voltage1 +10/07/2024 13:59:18, 1.01221, 1.79663 +10/07/2024 13:59:19, 1.0166, 1.79736 +10/07/2024 13:59:20, 1.01953, 1.79956 +10/07/2024 13:59:21, 1.01074, 1.79443 +10/07/2024 13:59:22, 1.01587, 1.79956 +10/07/2024 13:59:23, 1.00781, 1.79663