annotate Libs/LibStub/tests/test.lua @ 0:0de01324b4f2

first commit
author Tercio
date Tue, 23 Jun 2015 15:26:28 -0300
parents
children
rev   line source
Tercio@0 1 debugstack = debug.traceback
Tercio@0 2 strmatch = string.match
Tercio@0 3
Tercio@0 4 loadfile("../LibStub.lua")()
Tercio@0 5
Tercio@0 6 local lib, oldMinor = LibStub:NewLibrary("Pants", 1) -- make a new thingy
Tercio@0 7 assert(lib) -- should return the library table
Tercio@0 8 assert(not oldMinor) -- should not return the old minor, since it didn't exist
Tercio@0 9
Tercio@0 10 -- the following is to create data and then be able to check if the same data exists after the fact
Tercio@0 11 function lib:MyMethod()
Tercio@0 12 end
Tercio@0 13 local MyMethod = lib.MyMethod
Tercio@0 14 lib.MyTable = {}
Tercio@0 15 local MyTable = lib.MyTable
Tercio@0 16
Tercio@0 17 local newLib, newOldMinor = LibStub:NewLibrary("Pants", 1) -- try to register a library with the same version, should silently fail
Tercio@0 18 assert(not newLib) -- should not return since out of date
Tercio@0 19
Tercio@0 20 local newLib, newOldMinor = LibStub:NewLibrary("Pants", 0) -- try to register a library with a previous, should silently fail
Tercio@0 21 assert(not newLib) -- should not return since out of date
Tercio@0 22
Tercio@0 23 local newLib, newOldMinor = LibStub:NewLibrary("Pants", 2) -- register a new version
Tercio@0 24 assert(newLib) -- library table
Tercio@0 25 assert(rawequal(newLib, lib)) -- should be the same reference as the previous
Tercio@0 26 assert(newOldMinor == 1) -- should return the minor version of the previous version
Tercio@0 27
Tercio@0 28 assert(rawequal(lib.MyMethod, MyMethod)) -- verify that values were saved
Tercio@0 29 assert(rawequal(lib.MyTable, MyTable)) -- verify that values were saved
Tercio@0 30
Tercio@0 31 local newLib, newOldMinor = LibStub:NewLibrary("Pants", "Blah 3 Blah") -- register a new version with a string minor version (instead of a number)
Tercio@0 32 assert(newLib) -- library table
Tercio@0 33 assert(newOldMinor == 2) -- previous version was 2
Tercio@0 34
Tercio@0 35 local newLib, newOldMinor = LibStub:NewLibrary("Pants", "Blah 4 and please ignore 15 Blah") -- register a new version with a string minor version (instead of a number)
Tercio@0 36 assert(newLib)
Tercio@0 37 assert(newOldMinor == 3) -- previous version was 3 (even though it gave a string)
Tercio@0 38
Tercio@0 39 local newLib, newOldMinor = LibStub:NewLibrary("Pants", 5) -- register a new library, using a normal number instead of a string
Tercio@0 40 assert(newLib)
Tercio@0 41 assert(newOldMinor == 4) -- previous version was 4 (even though it gave a string)