public void TestConversionServiceErroneousResponseFromDataService()
        {
            ConversionService serv = new ConversionService();
            using (Microsoft.QualityTools.Testing.Fakes.ShimsContext.Create())
            {
                PdfConversion.Server.DataService.Fakes.ShimFileStatusRepositoryFactory.GetRepository = () =>
                {
                    var shim = new PdfConversion.Server.DataService.Fakes.StubIRepository<FileStatusEntity>();

                    shim.SaveChanges = () => { };
                    shim.SearchForExpressionOfFuncOfT0Boolean = a =>
                    {
                        var ls = new List<FileStatusEntity>();
                        var entity = new FileStatusEntity();
                        entity.FileState = FileState.Erroneous;
                        ls.Add(entity);
                        return ls.AsQueryable<FileStatusEntity>();
                    };

                    return shim;
                };

                var status = serv.GetFileState("test");
                Assert.IsTrue(status == PdfConversionService.API.FileState.Erroneous);
            }
        }
Esempio n. 2
0
        public void TestThrowExceptionAtInsert()
        {
            IPoller p = PollerFactory.GetPoller(@".\..\..\shared", @".\..\..\tmp", 10, "testTitle", "Alex Gyori");
            using (Microsoft.QualityTools.Testing.Fakes.ShimsContext.Create())
            {
                int i = 0;
                PdfConversion.Server.Converter.Fakes.ShimImageToPdfConverter.AllInstances.ConvertString
                    = (a, f) => { i++; return true; };
                System.IO.Fakes.ShimDirectory.GetFilesString = str => new String[5] { "a", "b", "c", "d", "e" };
                System.IO.Fakes.ShimFile.MoveStringString = (a, b) => { };
                PdfConversion.Server.DataService.Fakes.ShimFileStatusRepositoryFactory.GetRepository =
                    () =>
                    {
                        var repoStub = new PdfConversion.Server.DataService.Fakes.StubIRepository<FileStatusEntity>();
                        repoStub.InsertT0 = ent => { throw new Exception(); };
                        repoStub.SaveChanges = () => { };
                        return repoStub;
                    };

                Thread pollingThread = new Thread(p.Poll);
                pollingThread.Start();
                Thread.Sleep(2000);
                pollingThread.Interrupt();
                Assert.IsTrue(i == 0);

            }
        }
        public void TestSomeWorkToResume()
        {
            using (Microsoft.QualityTools.Testing.Fakes.ShimsContext.Create())
            {
                int counterDelete = 0;
                int counterSaveC = 0;
                PdfConversion.Server.DataService.Fakes.ShimFileStatusRepositoryFactory.GetRepository = () =>
                {
                    var shim = new PdfConversion.Server.DataService.Fakes.StubIRepository<FileStatusEntity>();

                    shim.SaveChanges = () => { counterSaveC++; };
                    shim.DeleteT0 = ent => { counterDelete++; };
                    shim.SearchForExpressionOfFuncOfT0Boolean = a =>
                    {
                        var ls = new List<FileStatusEntity>();
                        for(int i =0;i<10;i++)
                            ls.Add(new FileStatusEntity());
                        return ls.AsQueryable<FileStatusEntity>();
                    };
                    return shim;
                };
                int counterMoves = 0;
                System.IO.Fakes.ShimFile.MoveStringString = (a, b) => { counterMoves++; };
                WorkResumer resumer = new WorkResumer("folfer", "temp", "title", "author");
                resumer.Resume();
                Assert.IsTrue(counterMoves == 10);
                Assert.IsTrue(counterDelete == 10);
                Assert.IsTrue(counterSaveC == 1);
            }
        }
        private static void ShimTheDatabase()
        {
            PdfConversion.Server.DataService.Fakes.ShimFileStatusRepositoryFactory.GetRepository = () =>
            {
                var shim = new PdfConversion.Server.DataService.Fakes.StubIRepository<FileStatusEntity>();
                //override saveChanges with NO-OP to protect the database;
                shim.SaveChanges = () => { };

                shim.SearchForExpressionOfFuncOfT0Boolean = a => null;
                shim.InsertT0 = entity => { };
                return shim;
            };
        }
        public void TestConversionServiceExceptionResponseFromDataService()
        {
            ConversionService serv = new ConversionService();
            using (Microsoft.QualityTools.Testing.Fakes.ShimsContext.Create())
            {
                PdfConversion.Server.DataService.Fakes.ShimFileStatusRepositoryFactory.GetRepository = () =>
                {
                    var shim = new PdfConversion.Server.DataService.Fakes.StubIRepository<FileStatusEntity>();
                    //override saveChanges with NO-OP to protect the database;
                    shim.SaveChanges = () => { };
                    shim.SearchForExpressionOfFuncOfT0Boolean = a => { throw new Exception(); };

                    return shim;
                };

                var status = serv.GetFileState("test");
                Assert.IsTrue(status == PdfConversionService.API.FileState.Missing);
            }
        }
        public void TestConversionServiceSomeListResponseFromDataService()
        {
            ConversionService serv = new ConversionService();
            using (Microsoft.QualityTools.Testing.Fakes.ShimsContext.Create())
            {
                PdfConversion.Server.DataService.Fakes.ShimFileStatusRepositoryFactory.GetRepository = () =>
                {
                    var shim = new PdfConversion.Server.DataService.Fakes.StubIRepository<FileStatusEntity>();

                    shim.SaveChanges = () => { };
                    shim.GetAll = () =>
                    {
                        var ls = new List<FileStatusEntity>();
                        var entity = new FileStatusEntity();
                        entity.FileState = FileState.Converting;
                        ls.Add(entity);
                        ls.Add(new FileStatusEntity());
                        return ls.AsQueryable<FileStatusEntity>();
                    };

                    return shim;
                };

                var results = serv.GetAvailableFiles();
                Assert.IsTrue(results.Count() == 2);
            }
        }
        public void TestConversionServiceOfflineNullResponseFromDataService()
        {
            ConversionService serv = new ConversionService();
            using (Microsoft.QualityTools.Testing.Fakes.ShimsContext.Create())
            {
                PdfConversion.Server.DataService.Fakes.ShimFileStatusRepositoryFactory.GetRepository = () =>
                {
                    var shim = new PdfConversion.Server.DataService.Fakes.StubIRepository<FileStatusEntity>();

                    shim.SaveChanges = () => { };
                    shim.SearchForExpressionOfFuncOfT0Boolean = a => null;

                    return shim;
                };

                var status = serv.GetServerStatus();
                Assert.IsTrue(status == PdfConversionService.API.ServerState.Offline);
            }
        }