local K=game:GetService("\082\101\112\108\105\099\097\116\101\100\083\116\111\114\097\103\101")local H=require(K.Packages.Dex.Observables.State)local x=require(K.Packages.Dex.Observables.StateRecord)local d=require(K.Packages.Dex.Reflection.IsState)return function()it("\114\101\116\117\114\110\115 \116\114\117\101 \102\111\114 \083\116\097\116\101",function()local K=H.new(42);(expect(d(K))).to.equal(true)end)it("\114\101\116\117\114\110\115 \102\097\108\115\101 \102\111\114 \110\111\110-\083\116\097\116\101 \118\097\108\117\101\115",function()(expect(d(nil))).to.equal(false);(expect(d(true))).to.equal(false);(expect(d(42))).to.equal(false);(expect(d("\104\101\108\108\111"))).to.equal(false);(expect(d({}))).to.equal(false);(expect(d(function() end))).to.equal(false);(expect(d(x.new({})))).to.equal(false)end)end
--!strict
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local State = require(ReplicatedStorage.Packages.Dex.Observables.State)
local StateRecord = require(ReplicatedStorage.Packages.Dex.Observables.StateRecord)
local IsState = require(ReplicatedStorage.Packages.Dex.Reflection.IsState)

return function()
    it("returns true for State", function()
        local state = State.new(42)
        expect(IsState(state)).to.equal(true)
    end)

    it("returns false for non-State values", function()
        expect(IsState(nil)).to.equal(false)
        expect(IsState(true)).to.equal(false)
        expect(IsState(42)).to.equal(false)
        expect(IsState("hello")).to.equal(false)
        expect(IsState({})).to.equal(false)
        expect(IsState(function() end)).to.equal(false)
        expect(IsState(StateRecord.new({}))).to.equal(false)
    end)
end
