private static void Main(string[] args)
    {
        TestStrings test = new TestStrings();

        test.StringOperations();

        Console.ReadKey();
    }
        public void GetReturnsExpectedStrings()
        {
            var controller = new ValuesController(new TestValuesService());

            var result = controller.Get();

            Assert.AreEqual(result.Count(), TestStrings.Count());
            Assert.IsTrue(result.All(v => TestStrings.Contains(v)));
        }
示例#3
0
        /// <summary>
        /// Main body of the program. You should do all the setting up here.
        /// </summary>
        static void Main()
        {
            int iterations = 1000;
            IStringConcatenator testClass = new UsingStringBuilder();

            Console.WriteLine("Starting tests!");
            TestEngine.PerformTest(testClass, TestStrings.GetArbitraryLengthList(500), 5, iterations);

            CloseOnKeyPress();
        }
示例#4
0
        public void TryFormatAsNumeric()
        {
            // given
            const int    ENGLISH_DECIMAL_PLACES = 10;
            const int    POLISH_DECIMAL_PLACES  = 4;
            const double ENGLISH_DOUBLE         = 0.7395281046;
            CultureInfo  englishProvider        = new CultureInfo("en-US");
            CultureInfo  polishProvider         = new CultureInfo("pl-PL");

            // when
            string result1 = Strings.TryFormatAsNumeric(0, null);
            string result2 = Strings.TryFormatAsNumeric(-ENGLISH_DECIMAL_PLACES, ENGLISH_DOUBLE, englishProvider);
            string result3 = Strings.TryFormatAsNumeric(int.MaxValue, ENGLISH_DOUBLE);
            string result4 = Strings.TryFormatAsNumeric(int.MinValue, double.MaxValue);
            string result5 = Strings.TryFormatAsNumeric(POLISH_DECIMAL_PLACES, ENGLISH_DOUBLE, polishProvider);

            // then
            Assert.IsTrue(TestStrings.IsEmpty(result1));
            Assert.IsTrue(result2.Equals(ENGLISH_DOUBLE.ToString(englishProvider)));
            Assert.IsTrue(result3.Equals("N" + int.MaxValue));
            Assert.IsNull(result4);
            Assert.IsTrue(result5.Equals(result5.ToString(polishProvider).Substring(0, POLISH_DECIMAL_PLACES + 2)));
        }
示例#5
0
        [Timeout(15 * 60 * 1000)] // 60*1000 = 1min
        public void BZ_Basic()
        {
            TestContext.WriteLine("Creating fodder file.");
            // select a random text string
            var line  = TestStrings.ElementAt(this.rnd.Next(0, TestStrings.Count)).Value;
            int n     = 4000 + this.rnd.Next(1000); // number of iters
            var fname = "Pippo.txt";

            // emit many many lines into a text file:
            using (var sw = new StreamWriter(File.Create(fname)))
            {
                for (int k = 0; k < n; k++)
                {
                    sw.WriteLine(line);
                }
            }
            int crcOriginal = GetCrc(fname);
            int blockSize   = 0;

            Func <Stream, Stream>[] getBzStream =
            {
                new Func <Stream, Stream>(s0 => {
                    var decorator = new Ionic.BZip2.BZip2OutputStream(s0,blockSize);
                    return(decorator);
                }),
                new Func <Stream, Stream>(s1 => {
                    var decorator = new Ionic.BZip2.ParallelBZip2OutputStream(s1,blockSize);
                    return(decorator);
                })
            };

            int[] blockSizes = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };

            for (int k = 0; k < getBzStream.Length; k++)
            {
                for (int m = 0; m < blockSizes.Length; m++)
                {
                    blockSize = blockSizes[m];
                    var getStream = getBzStream[k];
                    var root      = Path.GetFileNameWithoutExtension(fname);
                    var ext       = Path.GetExtension(fname);
                    // compress into bz2
                    var bzFname = String.Format("{0}.{1}.blocksize{2}{3}.bz2",
                                                root,
                                                (k == 0)?"SingleThread":"MultiThread",
                                                blockSize, ext);

                    TestContext.WriteLine("Compress cycle ({0},{1})", k, m);
                    TestContext.WriteLine("file {0}", bzFname);
                    using (var fs = File.OpenRead(fname))
                    {
                        using (var output = File.Create(bzFname))
                        {
                            using (var compressor = getStream(output))
                            {
                                CopyStream(fs, compressor);
                            }
                        }
                    }

                    TestContext.WriteLine("Decompress");
                    var decompressedFname = Path.GetFileNameWithoutExtension(bzFname);
                    using (Stream fs = File.OpenRead(bzFname),
                           output = File.Create(decompressedFname),
                           decompressor = new Ionic.BZip2.BZip2InputStream(fs))
                    {
                        CopyStream(decompressor, output);
                    }

                    TestContext.WriteLine("Check CRC");
                    int crcDecompressed = GetCrc(decompressedFname);
                    Assert.AreEqual <int>(crcOriginal, crcDecompressed,
                                          "CRC mismatch {0:X8} != {1:X8}",
                                          crcOriginal, crcDecompressed);
                    TestContext.WriteLine("");

                    // just for the sake of disk space economy:
                    File.Delete(decompressedFname);
                    File.Delete(bzFname);
                }
            }
        }