コード例 #1
0
        public void PortsToUpper(UpperCasePortsRequest request)
        {
            _netlistDataBuilder.Build(request.SourceNetlist);
            _netlistCloner.Clone(request.SourceNetlist, request.TargetNetlist);

            _libraryGatesPortsReplacer.PortsToUpper(request.TargetNetlist);

            var content = _netlistFileContentDirector.Construct(request.TargetNetlist);

            _fileWriter.Write(request.TargetNetlist, "Uppercase Library Gates Ports", content);
        }
コード例 #2
0
        public void PortsToUpper_BothLibraryGatesAndNonLibraryGatesInstances_UppercasePortsOnlyForLibraryGatesInstances()
        {
            _netlistRepository.Add(new Netlist(DummyNetlist));
            _moduleRepository.Add(new Module(DummyNetlist, "m1"));
            _moduleRepository.Add(new Module(DummyNetlist, "m2"));
            _instanceRepository.Add(new InstanceBuilder(DummyNetlist, "m1").New("an2", "inst1").Add("a", "w").Build());
            _instanceRepository.Add(new InstanceBuilder(DummyNetlist, "m1").New("some-non-library-gate", "inst2", InstanceType.Module).Add("b", "w").Build());
            _instanceRepository.Add(new InstanceBuilder(DummyNetlist, "m2").New("an2", "inst3").Add("c", "w").Build());

            _target.PortsToUpper(DummyNetlist);

            var instances = _instanceRepository.GetBy(DummyNetlist).ToList();

            Assert.That(instances, Has.Exactly(1).Matches <Instance>(i => i.InstanceName == "inst1" && i.Net[0].Port == "A"));
            Assert.That(instances, Has.Exactly(1).Matches <Instance>(i => i.InstanceName == "inst2" && i.Net[0].Port == "b"));
            Assert.That(instances, Has.Exactly(1).Matches <Instance>(i => i.InstanceName == "inst3" && i.Net[0].Port == "C"));
        }