public void LoadScriptRunnerConfigurationTest()
        {
            IConfigurationLoadeable objTest = new RuntimeConfigurationLoader();
            Assert.IsNotNull(objTest.LoadScriptRunnerConfiguration());
            Assert.IsTrue(objTest.LoadScriptRunnerConfiguration().Functionality.Any());
            Assert.IsTrue(objTest.LoadScriptRunnerConfiguration().ValuesParameters.Any());

        }
        public void LoadScriptRunnerConfigurationTest()
        {
            IConfigurationLoadeable objTest = new RuntimeConfigurationLoader();

            Assert.IsNotNull(objTest.LoadScriptRunnerConfiguration());
            Assert.IsTrue(objTest.LoadScriptRunnerConfiguration().Functionality.Any());
            Assert.IsTrue(objTest.LoadScriptRunnerConfiguration().ValuesParameters.Any());
        }
Ejemplo n.º 3
0
        public TestbenchAdapter(string configPath, RTLInstanceSimulator <TModule> simulator)
        {
            if (!File.Exists(configPath))
            {
                throw new FileNotFoundException(configPath);
            }

            _configPath = configPath;
            _simulator  = simulator;
            _config     = RuntimeConfigurationLoader.FromCommandLineArguments(new[] { _configPath });

            if (_config.Config.HDL != "Verilog")
            {
                throw new NotImplementedException($"Project creation for VHDL is not there yet");
            }
        }
        public void VGAStaticQRModuleTest()
        {
            var config    = RuntimeConfigurationLoader.FromConfigFile(RTLVerilogConfig);
            var container = new QuokkaContainer()
                            .WithRuntimeConfiguration(config);
            var module = container.Resolve <VGAStaticQRModule>();

            var sim = new RTLInstanceSimulator <VGAStaticQRModule, VGAStaticQRModuleInputs>(module, true);
            var tb  = sim.TBAdapter(RTLVerilogConfig);

            tb.TranslateInstance();


            var tl           = sim.TopLevel;
            int pixelCounter = 0;

            uint[] pixels = new uint[800 * 600];

            for (int row = 0; row < 628; row++)
            {
                for (int col = 0; col < 1056; col++)
                {
                    if (tl.OutVisible)
                    {
                        pixels[pixelCounter] = (uint)(((tl.R ? 255 : 0) << 16) | ((tl.G ? 255 : 0) << 8) | (tl.B ? 255 : 0));
                        pixelCounter++;
                    }

                    sim.ClockCycle(new VGAStaticQRModuleInputs());
                }
            }

            Assert.AreEqual(800 * 600, pixelCounter);

            var resized = new Bitmap(800, 600);

            for (var row = 0; row < 600; row++)
            {
                for (var col = 0; col < 800; col++)
                {
                    resized.SetPixel(col, row, Color.FromArgb((int)(0xFF000000 | pixels[row * 800 + col])));
                }
            }
            resized.Save(PNGOutputPath(), ImageFormat.Png);
        }