예제 #1
0
        public static void FixtureSetup(TestContext testContext)
        {
            Trace.Listeners.Add(new DefaultTraceListener());
            if (Directory.Exists(DbPath))
            {
                Directory.Delete(DbPath, true);
            }
            _database = new LitesonDatabase(Culture, DbPath, new JsonTextSerializer(Culture));
            SomeClassList.Clear();
            var rnd = new Random(1);

            for (int i = 0; i < 1000; i++)
            {
                var someClass = new SomeClass(rnd.Next(1, 30));
                if (i % 2 == 0)
                {
                    someClass.SomeEnum        = SomeEnum.Five;
                    someClass.SomeEnumN       = SomeEnum.Zero;
                    someClass.TimeSpan        = new TimeSpan(long.MaxValue);
                    someClass.TimeSpanN       = new TimeSpan(long.MinValue);
                    someClass.BigInteger      = i * int.MaxValue;
                    someClass.BigIntegerN     = i * int.MinValue;
                    someClass.Bool            = true;
                    someClass.BoolN           = false;
                    someClass.Byte            = Byte.MaxValue;
                    someClass.ByteN           = Byte.MinValue;
                    someClass.Char            = 'C';
                    someClass.CharN           = 'c';
                    someClass.Bytes           = Encoding.UTF8.GetBytes("Liteson");
                    someClass.DateTime        = DateTime.MaxValue;
                    someClass.DateTimeN       = DateTime.MinValue;
                    someClass.DateTimeOffset  = DateTimeOffset.MaxValue;
                    someClass.DateTimeOffsetN = DateTimeOffset.MinValue;
                    someClass.Decimal         = decimal.MaxValue;
                    someClass.DecimalN        = decimal.MinValue;
                    someClass.Double          = double.MaxValue - i;
                    someClass.DoubleN         = double.MinValue + i;
                    someClass.Float           = float.MaxValue - i;
                    someClass.FloatN          = float.MinValue + i;
                    someClass.Guid            = Guid.NewGuid();
                    someClass.GuidN           = Guid.Empty;
                    someClass.Int             = int.MaxValue;
                    someClass.IntN            = int.MinValue;
                    someClass.Uint            = uint.MaxValue;
                    someClass.UintN           = uint.MinValue;
                    someClass.Long            = long.MaxValue;
                    someClass.LongN           = long.MinValue;
                    someClass.Ulong           = ulong.MaxValue;
                    someClass.UlongN          = ulong.MinValue;
                    someClass.Sbyte           = sbyte.MaxValue;
                    someClass.SbyteN          = sbyte.MinValue;
                    someClass.Short           = short.MaxValue;
                    someClass.ShortN          = short.MinValue;
                    someClass.Ushort          = ushort.MaxValue;
                    someClass.UshortN         = ushort.MinValue;

                    someClass.SubClass1 = new SubClass()
                    {
                        Key = i + 1, Value = $"Value{i+1}"
                    };
                    someClass.SubClass2 = new SubClass()
                    {
                        Key = i + 2, Value = $"Value{i+2}"
                    };

                    someClass.Strinig = $"SomeClass({i})";
                    someClass.Uri     = new Uri(new Uri("http://www.titaniumsoft.com/"), someClass.Strinig);
                }
                else if (i % 3 == 0)
                {
                    someClass.SomeEnum        = SomeEnum.Zero;
                    someClass.SomeEnumN       = null;
                    someClass.TimeSpan        = TimeSpan.Zero;
                    someClass.TimeSpanN       = null;
                    someClass.BigInteger      = i * long.MaxValue;
                    someClass.BigIntegerN     = null;
                    someClass.Bool            = true;
                    someClass.BoolN           = false;
                    someClass.Byte            = Byte.MaxValue;
                    someClass.ByteN           = null;
                    someClass.Char            = 'C';
                    someClass.CharN           = null;
                    someClass.Bytes           = Encoding.UTF8.GetBytes("Liteson");
                    someClass.DateTime        = DateTime.Today;
                    someClass.DateTimeN       = null;
                    someClass.DateTimeOffset  = DateTimeOffset.UnixEpoch;
                    someClass.DateTimeOffsetN = null;
                    someClass.Decimal         = decimal.One;
                    someClass.DecimalN        = null;
                    someClass.Double          = double.Epsilon + i;
                    someClass.DoubleN         = null;
                    someClass.Float           = float.Epsilon + i;
                    someClass.FloatN          = null;
                    someClass.Guid            = Guid.NewGuid();
                    someClass.GuidN           = null;
                    someClass.Int             = int.MaxValue;
                    someClass.IntN            = null;
                    someClass.Uint            = uint.MaxValue;
                    someClass.UintN           = null;
                    someClass.Long            = long.MaxValue;
                    someClass.LongN           = null;
                    someClass.Ulong           = ulong.MaxValue;
                    someClass.UlongN          = null;
                    someClass.Sbyte           = sbyte.MaxValue;
                    someClass.SbyteN          = null;
                    someClass.Short           = short.MaxValue;
                    someClass.ShortN          = null;
                    someClass.Ushort          = ushort.MaxValue;
                    someClass.UshortN         = null;

                    someClass.SubClass1 = new SubClass()
                    {
                        Key = i + 1, Value = $"Value{i+1}"
                    };
                    someClass.SubClass2 = new SubClass()
                    {
                        Key = i + 2, Value = $"Value{i+2}"
                    };

                    someClass.Strinig = $"SomeClass({i})";
                    someClass.Uri     = new Uri(new Uri("http://www.titaniumsoft.com/"), someClass.Strinig);
                }
                else
                {
                    someClass.SomeEnum        = SomeEnum.One;
                    someClass.SomeEnumN       = SomeEnum.Zero;
                    someClass.TimeSpan        = TimeSpan.Zero;
                    someClass.TimeSpanN       = new TimeSpan(long.MinValue);
                    someClass.BigInteger      = i * long.MaxValue;
                    someClass.BigIntegerN     = i * long.MinValue;
                    someClass.Bool            = true;
                    someClass.BoolN           = false;
                    someClass.Byte            = Byte.MaxValue;
                    someClass.ByteN           = Byte.MinValue;
                    someClass.Char            = 'C';
                    someClass.CharN           = 'c';
                    someClass.Bytes           = Encoding.UTF8.GetBytes("Liteson");
                    someClass.DateTime        = DateTime.Today;
                    someClass.DateTimeN       = DateTime.Today;
                    someClass.DateTimeOffset  = DateTimeOffset.UnixEpoch;
                    someClass.DateTimeOffsetN = DateTimeOffset.UnixEpoch;
                    someClass.Decimal         = decimal.One;
                    someClass.DecimalN        = decimal.Zero;
                    someClass.Double          = double.MaxValue - i;
                    someClass.DoubleN         = double.NaN;
                    someClass.Float           = float.MaxValue - i;
                    someClass.FloatN          = float.NaN;
                    someClass.Guid            = Guid.NewGuid();
                    someClass.GuidN           = Guid.Empty;
                    someClass.Int             = int.MaxValue;
                    someClass.IntN            = int.MinValue;
                    someClass.Uint            = uint.MaxValue;
                    someClass.UintN           = uint.MinValue;
                    someClass.Long            = long.MaxValue;
                    someClass.LongN           = long.MinValue;
                    someClass.Ulong           = ulong.MaxValue;
                    someClass.UlongN          = ulong.MinValue;
                    someClass.Sbyte           = sbyte.MaxValue;
                    someClass.SbyteN          = sbyte.MinValue;
                    someClass.Short           = short.MaxValue;
                    someClass.ShortN          = short.MinValue;
                    someClass.Ushort          = ushort.MaxValue;
                    someClass.UshortN         = ushort.MinValue;

                    someClass.SubClass1 = new SubClass()
                    {
                        Key = i + 1, Value = $"Value{i+1}"
                    };
                    someClass.SubClass2 = new SubClass()
                    {
                        Key = i + 2, Value = $"Value{i+2}"
                    };

                    someClass.Strinig = $"SomeClass({i})";
                    someClass.Uri     = new Uri(new Uri("http://www.titaniumsoft.com/"), someClass.Strinig);
                }
                SomeClassList.Add(someClass);
            }
        }
예제 #2
0
파일: Text.cs 프로젝트: CarimA/RPG
        public Text(IInterpreter <Closure> interpreter, ITextDatabase textDatabase)
        {
            _textDatabase = textDatabase;

            interpreter.AddFunction("Text", (Func <string, string>)GetText);
        }