Example #1
0
 public SamplerTests()
 {
     m_Channel = SideChannelsManager.GetSideChannel <EnvironmentParametersChannel>();
     // if running test on its own
     if (m_Channel == null)
     {
         m_Channel = new EnvironmentParametersChannel();
         SideChannelsManager.RegisterSideChannel(m_Channel);
     }
 }
        public void TestAcademyDispose()
        {
            var envParams1    = SideChannelsManager.GetSideChannel <EnvironmentParametersChannel>();
            var engineParams1 = SideChannelsManager.GetSideChannel <EngineConfigurationChannel>();
            var statsParams1  = SideChannelsManager.GetSideChannel <StatsSideChannel>();

            Academy.Instance.Dispose();

            Academy.Instance.LazyInitialize();
            var envParams2    = SideChannelsManager.GetSideChannel <EnvironmentParametersChannel>();
            var engineParams2 = SideChannelsManager.GetSideChannel <EngineConfigurationChannel>();
            var statsParams2  = SideChannelsManager.GetSideChannel <StatsSideChannel>();

            Academy.Instance.Dispose();

            Assert.AreNotEqual(envParams1, envParams2);
            Assert.AreNotEqual(engineParams1, engineParams2);
            Assert.AreNotEqual(statsParams1, statsParams2);
        }
        public void TestAcademy()
        {
            Assert.AreEqual(false, Academy.IsInitialized);
            var aca = Academy.Instance;

            Assert.AreEqual(true, Academy.IsInitialized);

            // Check that init is idempotent
            aca.LazyInitialize();
            aca.LazyInitialize();

            Assert.AreEqual(0, aca.EpisodeCount);
            Assert.AreEqual(0, aca.StepCount);
            Assert.AreEqual(0, aca.TotalStepCount);
            Assert.AreNotEqual(null, SideChannelsManager.GetSideChannel <EnvironmentParametersChannel>());
            Assert.AreNotEqual(null, SideChannelsManager.GetSideChannel <EngineConfigurationChannel>());
            Assert.AreNotEqual(null, SideChannelsManager.GetSideChannel <StatsSideChannel>());

            // Check that Dispose is idempotent
            aca.Dispose();
            Assert.AreEqual(false, Academy.IsInitialized);
            aca.Dispose();
        }