ConvertDescriptors() 정적인 개인적인 메소드

Resolves any dependencies and converts FileDescriptorProtos into FileDescriptors. The list returned is in the same order as the protos are listed in the descriptor set. Note: this method is internal rather than private to allow testing.
Not all dependencies could be resolved.
static private ConvertDescriptors ( FileDescriptorSet descriptorProtos ) : IList
descriptorProtos FileDescriptorSet
리턴 IList
예제 #1
0
        public void SelfDependency()
        {
            FileDescriptorProto first = new FileDescriptorProto.Builder {
                Name = "First", DependencyList = { "First" }
            }.Build();
            FileDescriptorSet set = new FileDescriptorSet {
                FileList = { first }
            };

            try {
                Generator.ConvertDescriptors(CSharpFileOptions.DefaultInstance, set);
                Assert.Fail("Expected exception");
            } catch (DependencyResolutionException) {
                // Expected
            }
        }
예제 #2
0
        public void MissingDependency()
        {
            FileDescriptorProto first = new FileDescriptorProto.Builder {
                Name = "First", DependencyList = { "Second" }
            }.Build();
            FileDescriptorSet set = new FileDescriptorSet {
                FileList = { first }
            };

            try {
                Generator.ConvertDescriptors(set);
                Assert.Fail("Expected exception");
            } catch (DependencyResolutionException) {
                // Expected
            }
        }
예제 #3
0
        public void SecondDependsOnFirst()
        {
            FileDescriptorProto first = new FileDescriptorProto.Builder {
                Name = "First"
            }.Build();
            FileDescriptorProto second = new FileDescriptorProto.Builder {
                Name = "Second", DependencyList = { "First" }
            }.Build();
            FileDescriptorSet set = new FileDescriptorSet {
                FileList = { first, second }
            };
            IList <FileDescriptor> converted = Generator.ConvertDescriptors(CSharpFileOptions.DefaultInstance, set);

            Assert.AreEqual(2, converted.Count);
            Assert.AreEqual("First", converted[0].Name);
            Assert.AreEqual(0, converted[0].Dependencies.Count);
            Assert.AreEqual("Second", converted[1].Name);
            Assert.AreEqual(1, converted[1].Dependencies.Count);
            Assert.AreEqual(converted[0], converted[1].Dependencies[0]);
        }
        public void TwoDistinctFiles()
        {
            FileDescriptorProto first = new FileDescriptorProto.Builder {
                Name = "First"
            }.Build();
            FileDescriptorProto second = new FileDescriptorProto.Builder {
                Name = "Second"
            }.Build();
            var set = new List <FileDescriptorProto> {
                first, second
            };

            IList <FileDescriptor> converted = Generator.ConvertDescriptors(CSharpFileOptions.DefaultInstance, set);

            Assert.AreEqual(2, converted.Count);
            Assert.AreEqual("First", converted[0].Name);
            Assert.AreEqual(0, converted[0].Dependencies.Count);
            Assert.AreEqual("Second", converted[1].Name);
            Assert.AreEqual(0, converted[1].Dependencies.Count);
        }
        public void MissingDependency()
        {
            FileDescriptorProto first =
                new FileDescriptorProto.Builder {
                Name = "First", DependencyList = { "Second" }
            }.Build();
            var set = new List <FileDescriptorProto> {
                first
            };

            try
            {
                Generator.ConvertDescriptors(CSharpFileOptions.DefaultInstance, set);
                Assert.Fail("Expected exception");
            }
            catch (DependencyResolutionException)
            {
                // Expected
            }
        }
예제 #6
0
        public void FirstDependsOnSecond()
        {
            FileDescriptorProto first = new FileDescriptorProto.Builder {
                Name = "First", DependencyList = { "Second" }
            }.Build();
            FileDescriptorProto second = new FileDescriptorProto.Builder {
                Name = "Second"
            }.Build();
            FileDescriptorSet set = new FileDescriptorSet {
                FileList = { first, second }
            };
            IList <FileDescriptor> converted = Generator.ConvertDescriptors(set);

            Assert.AreEqual(2, converted.Count);
            Assert.AreEqual("First", converted[0].Name);
            Assert.AreEqual(1, converted[0].Dependencies.Count);
            Assert.AreEqual(converted[1], converted[0].Dependencies[0]);
            Assert.AreEqual("Second", converted[1].Name);
            Assert.AreEqual(0, converted[1].Dependencies.Count);
        }