예제 #1
0
        public void RoundtripSerialize()
        {
            var original = GroupImportDefinition.CreateDefinition(
                "a",
                new GroupRegistrationId("b"),
                null,
                new List <ImportRegistrationId> {
                new ImportRegistrationId(typeof(string), 0, "a")
            });
            var copy = AssertExtensions.RoundTripSerialize(original);

            Assert.AreEqual(original, copy);
        }
예제 #2
0
        public void Create()
        {
            var groupId      = new GroupRegistrationId("a");
            var contractName = "b";
            var vertex       = new InsertVertex(0, 1);
            var imports      = new List <ImportRegistrationId> {
                new ImportRegistrationId(typeof(string), 0, "a")
            };
            var obj = GroupImportDefinition.CreateDefinition(contractName, groupId, vertex, imports);

            Assert.AreEqual(groupId, obj.ContainingGroup);
            Assert.AreEqual(contractName, obj.ContractName);
            Assert.AreEqual(vertex, obj.ScheduleInsertPosition);
            Assert.That(obj.ImportsToMatch, Is.EquivalentTo(imports));
        }
예제 #3
0
        /// <summary>
        /// Initializes a new instance of the <see cref="GroupConnection"/> class.
        /// </summary>
        /// <param name="importingGroup">The ID of the group that provides the import.</param>
        /// <param name="exportingGroup">The ID of the group that provides the export.</param>
        /// <param name="import">The import definition that should be connected to.</param>
        /// <param name="partConnections">The collection that contains the mapping of the part imports to the part exports.</param>
        public GroupConnection(
            GroupCompositionId importingGroup,
            GroupCompositionId exportingGroup,
            GroupImportDefinition import,
            IEnumerable <PartImportToPartExportMap> partConnections)
        {
            {
                Lokad.Enforce.Argument(() => importingGroup);
                Lokad.Enforce.Argument(() => exportingGroup);
                Lokad.Enforce.Argument(() => import);
                Lokad.Enforce.Argument(() => partConnections);
            }

            m_ImportingGroup  = importingGroup;
            m_ExportingGroup  = exportingGroup;
            m_Import          = import;
            m_PartConnections = partConnections;
        }