Exemplo n.º 1
0
        public async Task TypeName()
        {
            var typeNameDict = new TypeNameDict(Logger);

            var r = await typeNameDict.GetByName(new string[] { "200mm Railgun I Blueprint" });

            Assert.AreEqual(12345, r[0].Item1);

            r = await typeNameDict.GetByName(new string[] { "200mm Railgun I Blueprint" });

            Assert.AreEqual(12345, r[0].Item1);

            r = await typeNameDict.GetByName(new string[] { "200mm Railgun I Blueprint", "Confessor" });

            Assert.AreEqual(12345, r[0].Item1);
            Assert.AreEqual(34317, r[1].Item1);

            r = await typeNameDict.GetByName(new string[] { "Tengu" });

            Assert.IsTrue(r[0].Item1 > 0);

            r = await typeNameDict.GetByName(new string[] { "tengu" });

            Assert.IsTrue(r[0].Item1 > 0);

            r = await typeNameDict.GetByName(new string[] { "alamakota" });

            Assert.AreEqual(-1, r[0].Item1);
        }
Exemplo n.º 2
0
        public async Task SimpleCall()
        {
            var typeNameDict = new TypeNameDict(Logger);

            var r = await typeNameDict.GetById(new long[] { 12345 });

            Assert.AreEqual("200mm Railgun I Blueprint", r[0].Item2);

            r = await typeNameDict.GetById(new long[] { 12345, 34317 });

            Assert.AreEqual("200mm Railgun I Blueprint", r[0].Item2);
            Assert.AreEqual("Confessor", r[1].Item2);
        }
Exemplo n.º 3
0
 private static string TypeToName(Type type)
 {
     if (type.IsGenericType && !type.IsGenericTypeDefinition)
     {
         string name = TypeToName(type.GetGenericTypeDefinition());
         name = name.Substring(0, name.IndexOf('`')) + "<";
         foreach (Type genParam in type.GetGenericArguments())
         {
             name += TypeToName(genParam) + ",";
         }
         name = name.Substring(0, name.Length - 1) + ">";
         return(name);
     }
     if (TypeNameDict.ContainsKey(type))
     {
         return(TypeNameDict[type]);
     }
     return(type.FullName);
 }
Exemplo n.º 4
0
        public async Task CharacterSkills()
        {
            int    code  = 4107075;
            String vcode = "R27d16Sq1v1yrO8ViWBGdhS8uFftxiUONcPMH8m9vzbaxy6NoOGIwsMpuk0Vra2N";
            var    api   = EveApi;

            var characters = api.GetCharacters(code, vcode);
            var stryju     = characters.FirstOrDefault(x => x.CharacterName == "stryju");

            Assert.IsNotNull(stryju);
            var sheet = await stryju.GetCharacterSheetAsync();

            var ids       = sheet.Result.Skills.Select(x => (long)x.TypeId).ToList();
            var typenames = (await TypeNameDict.GetById(ids)).ToDictionary
                                (key => key.Item1, value => value.Item2);

            Assert.AreEqual(ids.Count, typenames.Count);
            var uknown = typenames.Where(x => x.Value == "Unknown").ToList();

            Assert.IsTrue(typenames.ContainsValue("Logistics Cruisers"));
        }
Exemplo n.º 5
0
        public void Performance()
        {
            var typeNameDict = new TypeNameDict(Logger);

            var ids  = new List <long>();
            var ids2 = new List <long>();
            var dict = new Dictionary <long, string>();

            for (long i = 0; i < 400000; ++i)
            {
                ids.Add(i);
                ids2.Add(369547L);
                dict.Add(i, i.ToString());
            }

            var z = BenchmarkIt.Benchmark.This("multiple call", async() =>
            {
                await typeNameDict.GetById(ids);
            }).Against.This("multiple call", async() =>
            {
                await typeNameDict.GetById(ids);
            }).Against.This("call last", async() =>
            {
                await typeNameDict.GetById(ids2);
            })
                    .Against.This("dict call", () =>
            {
                ids.Select(x => new Tuple <long, string>(x, dict[x])).ToList();
            })
                    .Against.This("dict call2", () =>
            {
                ids2.Select(x => new Tuple <long, string>(x, dict[x])).ToList();
            })
                    .For(1).Iterations();

            z.PrintComparison();
        }