Adding getStatusUsecase

This commit is contained in:
Gabriel Moreira Minossi 2021-01-01 19:13:38 -03:00
parent 57e077ad43
commit dc26aece93
2 changed files with 23 additions and 2 deletions

View File

@ -0,0 +1,12 @@
local function exec(multiblocks)
local statuses = {}
for _, multiblock in ipairs(multiblocks) do
statuses[multiblock.name] = {
problems = multiblock:getNumberOfProblems(),
efficiencyPercentage = multiblock:getEfficiencyPercentage()
}
end
return statuses
end
return exec

View File

@ -15,25 +15,34 @@ local getEnergyStatus = require("domain.energy.get-energy-status-usecase")
-- --
local cleanroom = MultiBlock:new(multiBlockAddresses.cleanroom) local cleanroom = MultiBlock:new(multiBlockAddresses.cleanroom)
cleanroom.name = "cleanroom"
local cleanroomMachines = {} local cleanroomMachines = {}
for _, address in pairs(cleanroomAddresses) do for _, address in pairs(cleanroomAddresses) do
table.insert(cleanroomMachines, SingleBlock:new(address)) table.insert(cleanroomMachines, SingleBlock:new(address))
end end
local EBF11 = MultiBlock:new(multiBlockAddresses.EBF11) local EBF11 = MultiBlock:new(multiBlockAddresses.EBF11)
EBF11.name = "EBF11"
local multiblocks = {cleanroom, EBF11} local multiblocks = {cleanroom, EBF11}
local energyBuffer = EnergyProvider:new(energyBufferAddress.batteryBuffer1) local energyBuffer = EnergyProvider:new(energyBufferAddress.batteryBuffer1)
local energyProducers = {} local energyProducers = {}
local multiblockStatuses = {}
for i = 0, 100 do for i = 0, 100 do
print(i) print(i)
protectCleanroomRecipes(cleanroom, cleanroomMachines) protectCleanroomRecipes(cleanroom, cleanroomMachines)
-- local multiblockStatuses = getMultiblockStatuses(multiblocks) multiblockStatuses = getMultiblockStatuses(multiblocks)
local energyStatus = getEnergyStatus(energyProducers, energyBuffer) local energyStatus = getEnergyStatus(energyProducers, energyBuffer)
os.sleep(0) os.sleep(0)
i = i + 1 i = i + 1
end end
require('resources.sound.zelda-secret')()
for multiblock, status in pairs(multiblockStatuses) do
print(multiblock .. ": \
problems: " .. status.problems .. "\
efficiency: " .. status.efficiencyPercentage)
end
require("resources.sound.zelda-secret")()