コード例 #1
0
        //[Values("T:int", "int")]
        public void PrimitiveType_Converter_Test(/*string primitiveTypeId, string primitiveName*/)
        {
            TargetIdConverter conv = new TargetIdConverter("T:int");
            TypeTarget        tt   = (TypeTarget)conv.ToTarget();

            Assert.AreEqual("int", tt.Name);
            Assert.IsNull(tt.Namespace);
        }
コード例 #2
0
        public void Type_NoNamespace_Converter_Test()
        {
            TargetIdConverter conv = new TargetIdConverter("T:Class1");
            TypeTarget        tt   = (TypeTarget)conv.ToTarget();

            Assert.AreEqual("Class1", tt.Name);
            Assert.IsNotNull(tt.Namespace);
            Assert.AreEqual("N:", tt.Namespace.Id);
        }
コード例 #3
0
        public void Namespace_Converter_Test()
        {
            TargetIdConverter conv   = new TargetIdConverter("N:java.lang");
            Target            target = conv.ToTarget();

            Assert.AreEqual(LinkType2.External, target.DefaultLinkType);
            Assert.IsInstanceOf <NamespaceTarget>(target);

            NamespaceTarget nt = (NamespaceTarget)target;

            Assert.AreEqual("java.lang", nt.Name);
            Assert.AreEqual("java.lang", nt.Container);
        }
コード例 #4
0
        protected override Target GetTarget(string targetId)
        {
            Target target = base.GetTarget(targetId);

            if (target == null)
            {
                // Assume the target is from Java and create dummy Target object.

                TargetIdConverter parser = new TargetIdConverter(targetId);
                target = parser.ToTarget();
            }

            return(target);
        }
コード例 #5
0
        public void Type_Converter_Test()
        {
            TargetIdConverter conv   = new TargetIdConverter("T:java.lang.Integer");
            Target            target = conv.ToTarget();

            Assert.AreEqual(LinkType2.External, target.DefaultLinkType);
            Assert.IsInstanceOf <TypeTarget>(target);

            TypeTarget tt = (TypeTarget)target;

            Assert.AreEqual("Integer", tt.Name);
            Assert.AreEqual("java.lang", tt.Container);
            Assert.IsNotNull(tt.Namespace);
            StringAssert.Contains("java.lang", tt.Namespace.Id);
            CollectionAssert.IsEmpty(tt.Templates);
        }
コード例 #6
0
        public void Method_Converter_Test()
        {
            TargetIdConverter conv   = new TargetIdConverter("M:java.lang.Boolean.booleanValue");
            Target            target = conv.ToTarget();

            Assert.AreEqual(LinkType2.External, target.DefaultLinkType);
            Assert.IsInstanceOf <MethodTarget>(target);

            MethodTarget mt = (MethodTarget)target;

            Assert.AreEqual("booleanValue", mt.Name);
            //Assert.AreEqual("java.lang", tt.Container);
            //Assert.IsNotNull(mt.Type);
            CollectionAssert.IsEmpty(mt.Templates);
            CollectionAssert.IsEmpty(mt.Parameters);
            CollectionAssert.IsEmpty(mt.TemplateArgs);
        }
コード例 #7
0
        public string GetExternalUrl(string targetId)
        {
            int lastDot = targetId.LastIndexOf('.');

            if (lastDot == -1)
            {
                string wrapper;
                if (IsPrimitiveType(targetId, out wrapper))
                {
                    targetId = wrapper;
                }
                else
                {
                    return(null);
                }
            }

            TargetIdConverter conv = new TargetIdConverter(targetId);
            Target            t    = conv.ToTarget();

            if (t is MethodTarget)
            {
                return(null);
            }

            this.EnsureCache();

            string          packageName = "";
            NamespaceTarget nt          = t as NamespaceTarget;

            if (nt != null)
            {
                packageName = nt.Name;

                string slashedPackage = packageName.Replace('.', '/');
                return(this.JavadocUrl + "/" + slashedPackage + "/package-summary.html");
            }

            TypeTarget tt = t as TypeTarget;

            if (tt == null)
            {
                return(null);
            }

            packageName = tt.Container;

            if (!this.packagesCache.Contains(packageName))
            {
                return(null);
            }

            string slashedTypeName = packageName.Replace('.', '/');

            slashedTypeName += "/" + tt.Name;
            if (!this.JavadocUrl.EndsWith("/"))
            {
                this.JavadocUrl += "/";
            }

            return(this.JavadocUrl + slashedTypeName + ".html");
        }