Merge pull request #2 from gordominossi/feature/miner

Adding miner mock and datasource
This commit is contained in:
gordominossi 2020-12-31 15:27:39 -03:00 committed by GitHub
commit 1a27861436
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 73 additions and 20 deletions

View File

@ -7,12 +7,11 @@ local Parser = {
local noCommaString = string.gsub(storedEnergyString, ",", "")
local current = string.sub(noCommaString, string.find(noCommaString, "%ba§"))
current = string.gsub(current, "a", "")
current = tonumber((string.gsub(current, "§", "")))
current = tonumber((string.gsub(string.gsub(current, "a", ""), "§", "")))
local maximum = string.sub(noCommaString, string.find(noCommaString, "%be§"))
maximum = string.gsub(maximum, "e", "")
maximum = tonumber((string.gsub(maximum, "§", "")))
maximum = tonumber((string.gsub(string.gsub(maximum, "e", ""), "§", "")))
return {current = current, maximum = maximum}
end,
parseAverageInput = function(averageInputString)
@ -24,12 +23,20 @@ local Parser = {
return tonumber((string.sub(noCommaString, string.find(noCommaString, "%d+"))))
end,
parseProblems = function(problemsString)
return tonumber((string.gsub(string.sub(problemsString, string.find(problemsString, "c%d")), "c", "")))
local problems = string.sub(problemsString, string.find(problemsString, "c%d"))
return tonumber((string.gsub(problems, "c", "")))
end,
parseEfficiency = function(efficiencyString)
local noParagraphMarkString = string.gsub(efficiencyString, "§r", "")
local efficiency = string.sub(noParagraphMarkString, string.find(noParagraphMarkString, "%d+%.*%d*%s%%"))
return tonumber((string.gsub(efficiency, "%s%%", "")))
end,
parseName = function(nameString)
return string.gsub(string.gsub(nameString, "§9", ""), "§r", "")
end,
parseWorkArea = function(worAreaString)
local size = string.sub(worAreaString, string.find(worAreaString, "§a%d+x%d+§r"))
return string.gsub(string.gsub(size, "§a", ""), "§r", "")
end
}

View File

@ -1,7 +1,7 @@
-- Import section
local parser = require("util.parser")
local inherits = require("util.class.inherits")
local SingleBlock = require("data.datasource.single-block")
parser = require("parser")
inherits = require("inherits")
SingleBlock = require("single-block")
local mock = require("mock-energy-provider")
--

View File

@ -0,0 +1,27 @@
-- Import section
parser = require("parser")
inherits = require("inherits")
SingleBlock = require("single-block")
local mock = require("mock-multi-block")
--
local Miner =
inherits(
SingleBlock,
{
mock = mock,
name = "MultiBlock"
}
)
function Miner:getName()
local sensorInformation = self:getSensorInformation()
return parser.parseProblems(sensorInformation[1])
end
function Miner:getWoarkArea()
local sensorInformation = self:getSensorInformation()
return parser.parseWorkArea(sensorInformation[2])
end
return Miner

View File

@ -1,7 +1,7 @@
-- Import section
local parser = require("util.parser")
local inherits = require("util.class.inherits")
local SingleBlock = require("data.datasource.single-block")
parser = require("parser")
inherits = require("inherits")
SingleBlock = require("single-block")
local mock = require("mock-multi-block")
--

View File

@ -1,5 +1,5 @@
-- Import section
local component = require("component")
component = require("component")
local mock = require("mock-single-block")
--

22
Resources/Mock/miner.lua Normal file
View File

@ -0,0 +1,22 @@
-- Import section
MockSingleBlock = require("mock-single-block")
inherits = require("inherits")
--
local MockMiner =
inherits(
MockSingleBlock,
{
name = "MockMiner"
}
)
function MockMiner.getSensorInformation()
return {
"§9Multiblock Miner§r",
"Work Area: §a2x2§r Chunks",
n = 2
}
end
return MockMiner

View File

@ -1,8 +1,6 @@
-- Import section
local parser = require("util.parser")
local inherits = require("util.class.inherits")
local MockSingleBlock = require("data.mock.mock-single-block")
local new = require("util.class.new")
inherits = require("inherits")
MockSingleBlock = require("mock-single-block")
--
local MockEnergyProvider =

View File

@ -1,7 +1,6 @@
-- Import section
local MockSingleBlock = require("data.mock.mock-single-block")
local inherits = require("util.class.inherits")
local new = require("util.class.new")
MockSingleBlock = require("mock-single-block")
inherits = require("inherits")
--
local MockMultiBlock =

View File

@ -1,5 +1,5 @@
-- Import section
local new = require("util.class.new")
new = require("new")
--
local MockSingleBlock = {