You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
108 lines
3.0 KiB
108 lines
3.0 KiB
local ssl = require("openssl")
|
|
|
|
local Serialization = loadfile("Core/Serialization.lua")("Rarity", {})
|
|
|
|
local testImportString =
|
|
"AzFkA/8CalRhm6TZlHITUfiFqLhNpZ1iL+xG5SeiyjBSvynVUAkxHKGDEuqY6pzSQolaiipaTFTLEfRQQnpKsgzpOZGJqEpTEZlMlOmKi4iSZ4TrCGxEVLVZIg5T8hlV8liCaSjOo0pdQ+kyxWiJNB5R6SSq6htVp6m4h6pYiShaiyg1TmocJChnjCuBhBwkKEMu0U44KEPZLGmKZ4xLHAnRUOO4BjkURyxIICFHvvpnEYp89V8Rgbx91RphkG8VoiIs8tXbAqnI23f1iEe+gmEE0sjb9wWyyLuyP3KNvGsvRX7kvV4wyCnyffuKXCBf9u2RM8hX/wEeOYu8K9MCeUXelV2K3CPver3IG3kvy3rki7zXCwahGvmepQxCj7wrFYtQiry3BYNQgXypYBiEMshXa78IZZF33bMIrcjbr/YI9ci7VtEIbeQrGIYidJG3Z3cRoZG3X92IOPL2VVNEUOTddQUiBPKurF5EMMh36TYiWORLhT8iKvKuvgUiPPIVVFBENPL27DYGqlBqcQWDXGsNRWiIxhpLbjOQQxnOktuMDGWo4U00UPwkssiAMpwlt5lijrMTcAXjGm4klKFk1hgJJIRqSk/1ggRlzRiXOBLiGQxCNRWa/iBBjeMa5FDWjHGJIyEUg4FyXKKdcCCHcjhpLK5g+DolJU6BwDaOkUBCNMoYqBI7ASeDHIqzXANFtW7WQ7lmSu0yqBQpCmXNGJc4EkKhSu02R2bx5mlch5MZQpShJCNJjp0DCcqaMS5xJOQYKGeMyy9DqNbNegwGSnJ4cdYQEBoonuTz0yJ8GR7k8SBThxte/FyBHLKL+fCBkhM4Nhni3xj/Ag=="
|
|
|
|
local testItemEntry = {
|
|
build = 718,
|
|
items = {
|
|
{
|
|
attempts = 2,
|
|
chance = 1000,
|
|
dates = {
|
|
[20221209] = {
|
|
attempts = 74,
|
|
},
|
|
[20230211] = {
|
|
attempts = 2,
|
|
time = 1,
|
|
},
|
|
},
|
|
enableAnnouncements = true,
|
|
enabled = true,
|
|
export = true,
|
|
found = false,
|
|
holidayReminder = true,
|
|
import = false,
|
|
instanceDifficulties = {
|
|
[0] = true,
|
|
},
|
|
itemId = 200857,
|
|
lastAttempts = 0,
|
|
method = "NPC",
|
|
name = "200857",
|
|
npcs = {
|
|
190115,
|
|
190116,
|
|
187600,
|
|
196336,
|
|
190983,
|
|
187867,
|
|
193443,
|
|
187813,
|
|
186511,
|
|
186892,
|
|
189734,
|
|
191876,
|
|
195187,
|
|
190117,
|
|
186483,
|
|
186592,
|
|
186109,
|
|
189557,
|
|
189734,
|
|
191524,
|
|
186239,
|
|
189834,
|
|
192344,
|
|
190079,
|
|
186915,
|
|
187907,
|
|
186638,
|
|
193442,
|
|
187599,
|
|
187908,
|
|
187602,
|
|
188693,
|
|
186509,
|
|
199298,
|
|
192371,
|
|
186783,
|
|
193232,
|
|
187598,
|
|
},
|
|
repeatable = false,
|
|
session = {
|
|
attempts = 1,
|
|
},
|
|
time = 1,
|
|
type = "ITEM",
|
|
},
|
|
},
|
|
signature = "RFI2PD4jOjJ0NntgInc/ZA==",
|
|
}
|
|
|
|
describe("Serialization", function()
|
|
describe("DecodeBase64", function()
|
|
it("should return the original input if a valid Base64-encoded string was passed", function()
|
|
local decodedItemString = Serialization:DecodeBase64(testImportString)
|
|
assertEquals(decodedItemString, ssl.base64(testImportString, false))
|
|
end)
|
|
end)
|
|
|
|
describe("EncodeBase64", function()
|
|
it("should return the Base64-encoded representation of the input string", function()
|
|
local encodedString = Serialization:EncodeBase64("Hello world!")
|
|
assertEquals(encodedString, ssl.base64("Hello world!", true))
|
|
end)
|
|
end)
|
|
|
|
describe("DeserializeItemString", function()
|
|
it("should return a complete item entry if a valid import string was passed", function()
|
|
local actualResult = Serialization:DeserializeItemString(testImportString)
|
|
assertEquals(actualResult, testItemEntry)
|
|
end)
|
|
end)
|
|
end)
|
|
|