Ejemplo n.º 1
0
            public object Fill(ITester tester, object instance, System.Type type)
            {
                var item = Utils.CreateInstance(type);

                tester.FillRandom(item);
                return(item);
            }
Ejemplo n.º 2
0
            public object Fill(ITester tester, object instance, System.Type type)
            {
                var genericTypeKey   = typeof(ulong);
                var genericTypeValue = type.GenericTypeArguments[0];
                var listType         = type.GetGenericTypeDefinition().MakeGenericType(genericTypeValue);
                var valIEnumerable   = (ME.ECS.Collections.IDictionaryULong)System.Activator.CreateInstance(listType, new object[] { 16 });

                for (int j = 0; j < 16; ++j)
                {
                    object k = null;
                    object v = null;
                    if (genericTypeKey.IsAbstract == false)
                    {
                        var itemKey = Utils.CreateInstance(genericTypeKey);
                        itemKey = tester.FillRandom(itemKey, genericTypeKey);
                        k       = itemKey;
                        if (genericTypeValue.IsAbstract == false)
                        {
                            var itemValue = Utils.CreateInstance(genericTypeValue);
                            itemValue = tester.FillRandom(itemValue, genericTypeValue);
                            v         = itemValue;
                        }
                    }
                    else
                    {
                        if (genericTypeValue.IsAbstract == false)
                        {
                            var itemValue = Utils.CreateInstance(genericTypeValue);
                            itemValue = tester.FillRandom(itemValue, genericTypeValue);
                            v         = itemValue;
                        }
                    }
                    if (valIEnumerable.ContainsKey((ulong)k) == false)
                    {
                        valIEnumerable.Add(k, v);
                    }
                }

                return(valIEnumerable);
            }
Ejemplo n.º 3
0
            public object Fill(ITester tester, object instance, System.Type type)
            {
                var ctor = type.GetConstructor(
                    System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Public,
                    null, new System.Type[] {}, null);

                if (ctor != null)
                {
                    var item = ctor.Invoke(new object[] {});
                    tester.FillRandom(item);
                    return(item);
                }

                return(null);
            }
Ejemplo n.º 4
0
            public object Fill(ITester tester, object instance, System.Type type)
            {
                if (type.GetGenericTypeDefinition() == typeof(ME.ECS.Collections.ListCopyable <>))
                {
                    var genericType    = type.GenericTypeArguments[0];
                    var listType       = type.GetGenericTypeDefinition().MakeGenericType(genericType);
                    var valIEnumerable = (System.Collections.IEnumerable)System.Activator.CreateInstance(listType, new object[] { 16 });
                    for (int j = 0; j < 16; ++j)
                    {
                        var item = Utils.CreateInstance(genericType);
                        item = tester.FillRandom(item, genericType);
                        ((ME.ECS.Collections.IListCopyableBase)valIEnumerable).Add(item);
                    }

                    return(valIEnumerable);
                }

                return(null);
            }
Ejemplo n.º 5
0
        public static object CreateArray(ITester tester, System.Type type, System.Type elementType = null)
        {
            var genericType = elementType ?? type.GenericTypeArguments[0];
            var arr         = System.Array.CreateInstance(genericType, 16);

            for (int j = 0; j < 16; ++j)
            {
                if (genericType.IsAbstract == false)
                {
                    var item = Utils.CreateInstance(genericType);
                    item = tester.FillRandom(item, genericType);
                    arr.SetValue(item, j);
                }
                else
                {
                    arr.SetValue(null, j);
                }
            }

            return(arr);
        }
Ejemplo n.º 6
0
            public object Fill(ITester tester, object instance, System.Type type)
            {
                var genericType = type.GenericTypeArguments[0];
                var listType    = type.GetGenericTypeDefinition().MakeGenericType(genericType);
                var ctor        = listType.GetConstructor(
                    System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Public,
                    null, new System.Type[] { typeof(int) }, null);

                System.Collections.IList valIEnumerable = null;
                if (ctor != null)
                {
                    valIEnumerable = (System.Collections.IList)System.Activator.CreateInstance(listType, new object[] { 16 });
                }
                else
                {
                    ctor = listType.GetConstructor(
                        System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Public,
                        null, new System.Type[] {}, null);
                    valIEnumerable = (System.Collections.IList)ctor.Invoke(new object[] {});
                }

                for (int j = 0; j < 16; ++j)
                {
                    if (genericType.IsAbstract == false)
                    {
                        var item = Utils.CreateInstance(genericType);
                        item = tester.FillRandom(item, genericType);
                        valIEnumerable.Add(item);
                    }
                    else
                    {
                        valIEnumerable.Add(null);
                    }
                }

                return(valIEnumerable);
            }