return function() local CorePackages = game:GetService("CorePackages") local UIBlox = require(CorePackages.UIBlox) local StylePalette = require(script.Parent.StylePalette) local validateStye = UIBlox.Style.Validator.validateStyle it("should be able to create a style palette", function() local stylePalette = StylePalette.new() stylePalette:updateTheme("dark") stylePalette:updateFont("gotham") local appStyle = stylePalette:currentStyle() expect(validateStye(appStyle)).equal(true) end) it("should be able to create a style palette and be able to update theme 1", function() local stylePalette = StylePalette.new() stylePalette:updateTheme("dark") stylePalette:updateFont("gotham") local appStyle = stylePalette:currentStyle() expect(validateStye(appStyle)).equal(true) stylePalette:updateTheme("light") local newAppStyle = stylePalette:currentStyle() expect(validateStye(newAppStyle)).equal(true) end) it("should be able to create a style palette and be able to update theme 2", function() local stylePalette = StylePalette.new() stylePalette:updateTheme("dark") stylePalette:updateFont("gotham") local appStyle = stylePalette:currentStyle() expect(validateStye(appStyle)).equal(true) stylePalette:updateFont("gotham") local newAppStyle = stylePalette:currentStyle() expect(validateStye(newAppStyle)).equal(true) end) it("should be able to create a style palette and be able to merge an old one in", function() local stylePalette = StylePalette.new() stylePalette:updateTheme("dark") stylePalette:updateFont("gotham") local appStyle = stylePalette:currentStyle() expect(validateStye(appStyle)).equal(true) local newstylePalette = StylePalette.new(stylePalette) local newAppStyle = newstylePalette:currentStyle() expect(validateStye(newAppStyle)).equal(true) end) it("should be able to create a empty style palette", function() local stylePalette = StylePalette.new() local appStyle = stylePalette:currentStyle() expect(appStyle.Font).equal(nil) expect(appStyle.Theme).equal(nil) expect(validateStye(appStyle)).equal(false) end) end