adam@3: debugstack = debug.traceback adam@3: strmatch = string.match adam@3: adam@3: loadfile("../LibStub.lua")() adam@3: adam@3: adam@3: -- Pretend like loaded libstub is old and doesn't have :IterateLibraries adam@3: assert(LibStub.minor) adam@3: LibStub.minor = LibStub.minor - 0.0001 adam@3: LibStub.IterateLibraries = nil adam@3: adam@3: loadfile("../LibStub.lua")() adam@3: adam@3: assert(type(LibStub.IterateLibraries)=="function") adam@3: adam@3: adam@3: -- Now pretend that we're the same version -- :IterateLibraries should NOT be re-created adam@3: LibStub.IterateLibraries = 123 adam@3: adam@3: loadfile("../LibStub.lua")() adam@3: adam@3: assert(LibStub.IterateLibraries == 123) adam@3: adam@3: adam@3: -- Now pretend that a newer version is loaded -- :IterateLibraries should NOT be re-created adam@3: LibStub.minor = LibStub.minor + 0.0001 adam@3: adam@3: loadfile("../LibStub.lua")() adam@3: adam@3: assert(LibStub.IterateLibraries == 123) adam@3: adam@3: adam@3: -- Again with a huge number adam@3: LibStub.minor = LibStub.minor + 1234567890 adam@3: adam@3: loadfile("../LibStub.lua")() adam@3: adam@3: assert(LibStub.IterateLibraries == 123) adam@3: adam@3: adam@3: print("OK")