예제 #1
0
        public void TestEnqueToPayFail(decimal entryVal, decimal charges, decimal saldo)
        {
            //Input
            var entry = EntryFactory.Build(x => { x.Type = "payment"; x.FinancialCharges = charges; x.Value = entryVal; });

            //behavior
            var account = AccountFactory.Build();

            _mockAccountRepository.Setup(m => m.FindOrCreateBy(It.IsAny <string>(),
                                                               It.IsAny <string>(),
                                                               It.IsAny <string>(),
                                                               It.IsAny <string>()))
            .Returns(account);

            var balance = BalanceFactory.Build(x => x.Total = saldo);

            _mockBalanceRepository.Setup(m => m.LastByOrDefault(It.IsAny <Account>(), It.IsAny <DateTime>()))
            .Returns(balance);

            _mockPaymentQueue.Setup(m => m.Enqueue(entry, null)).Verifiable();

            //test
            var val = _service.EnqueueToPay(entry);

            //assert
            Assert.IsInstanceOf <ErrorsDTO>(val.Result);
            Assert.AreSame("Account don't have especial limit", ((ErrorsDTO)val.Result).Details["valor_do_lancamento"][0]);
            _mockPaymentQueue.Verify(x => x.Enqueue(entry, null), Times.Never());
        }
 public void Visit(Cartella cartella)
 {
     if (cartella.Children.Count > 0)
     {
         //Creo la stringa del path da ricreare
         string dirname   = new DirectoryInfo(cartella.Path).Name;
         string dirToSync = String.Join("\\", _pathDestinazione, dirname);
         //Creo la cartella richiesta se non esiste
         if (!Directory.Exists(dirToSync))
         {
             Directory.CreateDirectory(dirToSync);
             ActionCompletedEvent args = new ActionCompletedEvent
             {
                 ToEntry = EntryFactory.CreateEntry(this, "creata cartella",
                                                    sorgente: cartella.Path, destinazione: dirToSync)
             };
             ToLog?.Invoke(this, args);
         }
         //Memorizzo il vecchio path per quando ho finito di ispezionare i figli
         string oldPath = _pathDestinazione;
         //Il nuovo path è quello di questa cartella
         _pathDestinazione = dirToSync;
         //Entro e sincronizzo le sottocartelle usando il nuovo path
         foreach (FilesystemElement element in cartella.Children)
         {
             element.Accept(this);
         }
         //Ripristino il path vecchio =>(..)
         _pathDestinazione = oldPath;
     }
 }
예제 #3
0
        public static void Seed()
        {
            TakeMyTimeDbContext context = new TakeMyTimeDbContext();

            bool hasProjectTypes = context.ProjectTypes != null && context.ProjectTypes.Any();

            if (!hasProjectTypes)
            {
                var projectTypes = ProjectTypeFactory.SeedProjectTypes();
                context.ProjectTypes.AddRange(projectTypes);
                context.SaveChanges();

                var projects = ProjectFactory.SeedProjects(projectTypes.ToArray());
                context.Projects.AddRange(projects);
                context.SaveChanges();
            }

            bool hasAssignments = context.Assignments != null && context.Assignments.Any();

            if (!hasAssignments)
            {
                var projects    = context.Projects.ToList();
                var assignments = AssignmentFactory.CreateAssignments(projects.ToArray());
                context.Assignments.AddRange(assignments);
                context.SaveChanges();
            }

            bool hasSubtasks = context.Subtasks != null && context.Subtasks.Any();

            if (!hasSubtasks)
            {
                var assignments = context.Assignments.ToList();
                var subtasks    = new List <Subtask>();
                foreach (var assignment in assignments)
                {
                    subtasks.AddRange(SubtaskFactory.Create(assignment));
                }

                context.Subtasks.AddRange(subtasks);
                context.SaveChanges();
            }

            bool hasEntries = context.Entries != null && context.Entries.Any();

            if (!hasEntries)
            {
                var subtasks = context.Subtasks
                               .Include(s => s.Assignment)
                               .Include(s => s.Assignment.Project)
                               .ToList();
                var entries = new List <Entry>();
                foreach (var subtask in subtasks)
                {
                    entries.AddRange(EntryFactory.Create(subtask));
                }

                context.Entries.AddRange(entries);
                context.SaveChanges();
            }
        }
예제 #4
0
 private Entry ReadEntry(CalithaBinReader reader)
 {
     Entry entry = EntryFactory.CreateEntry(reader);
     if (entry == null)
         throw new CGTStructureException("Invalid entry type at byte "+(stream.Position-1));
     return entry;
 }
예제 #5
0
 public void RimuoviUtente(string utente)
 {
     if (_blacklist.EliminaUtenteCattivo(utente))
     {
         //Creazione del parametro da passare quando scateno l'evento
         ActionCompletedEvent args = new ActionCompletedEvent
         {
             ToEntry = EntryFactory.CreateEntry(this, "rimosso", utente)
         };
         //scateno gli handler registrati all'evento
         PersistEvent toPersist = new PersistEvent
         {
             Action    = "rimuovi",
             ToPersist = utente
         };
         //scateno gli handler registrati all'evento
         ToLog?.Invoke(this, args);
         Persist?.Invoke(this, toPersist);
     }
     else
     {
         //Creazione del parametro da passare quando scateno l'evento
         ActionCompletedEvent args = new ActionCompletedEvent
         {
             ToEntry = EntryFactory.CreateEntry(this, "nonrimosso", utente)
         };
         //scateno gli handler registrati all'evento
         ToLog?.Invoke(this, args);
     }
 }
예제 #6
0
        public bool AddImpostazione(ImpostazioneTrasferimento impostazione)
        {
            bool toOut = _impostazioni.Add(impostazione);

            //Il log cambia a seconda dell'esito
            if (toOut)
            {
                //Creazione del parametro da passare quando scateno l'evento
                ActionCompletedEvent args = new ActionCompletedEvent
                {
                    ToEntry = EntryFactory.CreateEntry(this, "aggiunta", sorgente: impostazione.CartellaSorgente.Path,
                                                       destinazione: impostazione.CartellaDestinazione)
                };
                PersistEvent toPersist = new PersistEvent
                {
                    ToPersist = impostazione,
                    Action    = "aggiungi"
                };
                //scateno gli handler registrati all'evento
                ToLog?.Invoke(this, args);
                Persist?.Invoke(this, toPersist);
            }
            else
            {
                ActionCompletedEvent args = new ActionCompletedEvent
                {
                    ToEntry = EntryFactory.CreateEntry(this, "nonaggiunta", impostazione.CartellaSorgente.Path,
                                                       impostazione.CartellaDestinazione)
                };
                ToLog?.Invoke(this, args);
            }
            return(toOut);
        }
예제 #7
0
        bool IGestoreImpostazione.RemoveImpostazione(ImpostazioneTrasferimento impostazione)
        {
            bool toOut = _impostazioni.Remove(impostazione);

            if (toOut)
            {
                //Creazione dei parametri da passare agli handler dell'evento
                ActionCompletedEvent args = new ActionCompletedEvent
                {
                    ToEntry = EntryFactory.CreateEntry(this, "rimossa", impostazione.CartellaSorgente.Path,
                                                       impostazione.CartellaDestinazione)
                };
                PersistEvent toPersist = new PersistEvent
                {
                    Action    = "rimuovi",
                    ToPersist = impostazione
                };

                //Scateno l'evento
                ToLog?.Invoke(this, args);
                Persist?.Invoke(this, toPersist);
            }
            else
            {
                ActionCompletedEvent args = new ActionCompletedEvent
                {
                    ToEntry = EntryFactory.CreateEntry(this, "nonrimossa", impostazione.CartellaSorgente.Path,
                                                       impostazione.CartellaDestinazione)
                };
                ToLog?.Invoke(this, args);
            }
            return(toOut);
        }
예제 #8
0
        public override object VisitDoldoc_command([NotNull] Doldoc_commandContext context)
        {
            var command = context.cmd.Text;
            var entry   = EntryFactory.Create(command, context.flags == null ? new List <Flag>() : (IList <Flag>)Visit(context.flags), context.args == null ? new List <Argument>() : (IList <Argument>)Visit(context.args));

            return(entry);
        }
예제 #9
0
        public async Task Pay_ReturnsABadRequestObjectResult_WithFailBody()
        {
            // initializaController
            var controller = MockController();

            controller.ModelState.AddModelError("Description", "some error");

            // input (subject)
            var payment = EntryFactory.Build();

            // test (result)
            var result = await controller.Entry(payment);

            // Assert one
            Assert.IsInstanceOf <BadRequestObjectResult>(result);

            //Assert two
            var ResponseResult = (BadRequestObjectResult)result;

            Assert.IsInstanceOf <ErrorsDTO>(ResponseResult.Value);

            //Assert three
            var bodyResult = (ErrorsDTO)ResponseResult.Value;

            Assert.AreEqual(1, bodyResult.Details.Keys.Count);

            Assert.AreEqual("some error", bodyResult.Details["descricao"][0]);
        }
        public void TestFindExistentEntity()
        {
            var created = EntryFactory.Create();
            var finded  = _repository.Find(created.Id);

            Assert.AreEqual(created.Id, finded.Id);
        }
        public void TestSave()
        {
            var entry = EntryFactory.Build();

            _repository.Save(entry);
            Assert.IsNotNull(entry.Id);
        }
예제 #12
0
        public void TestEnqueToPayOk(decimal entryVal, decimal charges, decimal saldo)
        {
            //Input
            var entry = EntryFactory.Build(x => { x.Type = "payment"; x.FinancialCharges = charges; x.Value = entryVal; });

            //behavior
            var account = AccountFactory.Build();

            _mockAccountRepository.Setup(m => m.FindOrCreateBy(It.IsAny <string>(),
                                                               It.IsAny <string>(),
                                                               It.IsAny <string>(),
                                                               It.IsAny <string>()))
            .Returns(account);

            var balance = BalanceFactory.Build(x => x.Total = saldo);

            _mockBalanceRepository.Setup(m => m.LastByOrDefault(It.IsAny <Account>(), It.IsAny <DateTime>()))
            .Returns(balance);

            _mockPaymentQueue.Setup(m => m.Enqueue(entry, null)).Verifiable();

            //It.IsAny<Entry>(

            //test
            var val = _service.EnqueueToPay(entry);


            //assert
            Assert.IsInstanceOf <OkDTO>(val.Result);
            Assert.AreEqual(entry.UUID, ((OkDTO)val.Result).UUID);
            _mockPaymentQueue.Verify(x => x.Enqueue(entry, null), Times.Once());
        }
예제 #13
0
 public CompositeEntry(string pathList)
 {
     foreach (var path in pathList.Split(";"))
     {
         _entryList.Add(EntryFactory.GetEntry(path));
     }
 }
예제 #14
0
 public void AggiungiUtente(string utente)
 {
     if (_blacklist.AggiungiUtenteCattivo(utente))
     {
         //Col fatto che questa viene chiamata dal thread della sincronizzazione va
         //Risolto con l'escamotage
         _blacklistView.AddRow(utente);
         //_blacklistView.DataGridViewBlacklist.Rows.Add(utente);
         //Creazione del parametro da passare quando scateno l'evento
         ActionCompletedEvent args = new ActionCompletedEvent
         {
             ToEntry = EntryFactory.CreateEntry(this, "aggiunto", utente)
         };
         PersistEvent toPersist = new PersistEvent
         {
             Action    = "aggiungi",
             ToPersist = utente
         };
         //scateno gli handler registrati all'evento
         ToLog?.Invoke(this, args);
         Persist?.Invoke(this, toPersist);
     }
     else
     {
         //Creazione del parametro da passare quando scateno l'evento
         ActionCompletedEvent args = new ActionCompletedEvent
         {
             ToEntry = EntryFactory.CreateEntry(this, "nonaggiunto", utente)
         };
         //scateno gli handler registrati all'evento
         ToLog?.Invoke(this, args);
     }
 }
예제 #15
0
파일: Classpath.cs 프로젝트: ysdxz207/csjvm
 /// <summary>
 /// 解析用户自定义的classpath
 /// </summary>
 /// <param name="classpathOption"></param>
 private void ParseUserClasspath(CommandLine commandLine)
 {
     if (string.IsNullOrEmpty(commandLine.UserClasspathInfo))
     {
         commandLine.UserClasspathInfo = ".";
     }
     this.UserClasspath = EntryFactory.GetEntry(commandLine.UserClasspathInfo);
 }
예제 #16
0
        public EntryService(IOptions <ConnectionStrings> connectionStrings, EntryFactory entryFactory, IServiceScopeFactory serviceScopeFactory)
        {
            _entryFactory = entryFactory;

            _serviceScope = serviceScopeFactory.CreateScope();

            Init(connectionStrings.Value.RabbitMq);
        }
        public void TestCount(int count)
        {
            for (int i = 0; i < count; i++)
            {
                EntryFactory.Create();
            }

            Assert.AreEqual(count, _repository.Count());
        }
예제 #18
0
        private Entry ReadEntry(ReaderBin reader)
        {
            Entry entry = EntryFactory.CreateEntry(reader);

            if (entry == null)
            {
                throw new CGTStructureException("Invalid entry type at byte " + (stream.Position - 1));
            }
            return(entry);
        }
예제 #19
0
        public void GivenRegexDefaultErrorEntry_ShouldExtractDefaultErrorEntryDetails()
        {
            var dataService    = new DataService("[11:57:05] : [Step 1/6] error: so here is an thing error");
            var dataDictionary = new DataDictionary();
            var valueExtractor = new ValueExtractor(dataDictionary);
            var defaultError   = EntryFactory.CreateDefaultErrorEntryFunc(1)(valueExtractor, dataService);

            Assert.Equal(EntryType.DefaultErrorEntry(), defaultError.EntryType);
            Assert.Equal(" so here is an thing error", defaultError.Error);
        }
예제 #20
0
        public void GivenRegexSolutionStart_ShouldExtractSolutionStartDefinition()
        {
            var dataService        = new DataService("[10:54:44] :          [exec] Build Acceleration Console 8.0.1 (build 1867)");
            var dataDictionary     = new DataDictionary();
            var valueExtractor     = new ValueExtractor(dataDictionary);
            var solutionStartEntry = EntryFactory.CreateSolutionStartEntryFunc(1)(valueExtractor, dataService);

            Assert.Equal(EntryType.SolutionStart(), solutionStartEntry.EntryType);
            Assert.Equal("Build Acceleration Console", solutionStartEntry.SolutionStart);
            Assert.Equal(new TimeSpan(10, 54, 44), solutionStartEntry.Time);
        }
        public void Update()
        {
            var created = EntryFactory.Create();

            created.Value = 300.00m;
            _repository.Save(created);

            var finded = _repository.Find(created.Id);

            Assert.AreEqual(300.00m, finded.Value);
        }
예제 #22
0
 public void Setup()
 {
     _factory = new EntryFactory(new Dictionary <RowVersion, IRowProcessor>
     {
         { RowVersion.JHopkinsV1, new JHopkinsTestRowProcessor() },
         { RowVersion.JHopkinsV2, new JHopkinsTestRowProcessor() },
         { RowVersion.JHopkinsV3, new JHopkinsTestRowProcessor() },
         { RowVersion.JHopkinsV4, new JHopkinsTestRowProcessor() },
         { RowVersion.YandexRussia, new YandexRussiaRowProcessor(new TestStatsProvider(), new  NullLogger()) },
     }, new NullLogger());
 }
 protected override void OnParentSet()
 {
     base.OnParentSet();
     if (BorderColor != null)
     {
         entry = EntryFactory.GetEntry(BorderColor);
     }
     Bind();
     this.Children.Add(label);
     this.Children.Add(entry);
 }
예제 #24
0
        public void GivenRegexProjectEmptyEntry_ShouldExtractProjectEmptyEntryDefinition()
        {
            var dataService       = new DataService("[10:53:29] :            [exec] 44>");
            var dataDictionary    = new DataDictionary();
            var valueExtractor    = new ValueExtractor(dataDictionary);
            var projectEmptyEntry = EntryFactory.CreateProjectEmptyEntryFunc(1)(valueExtractor, dataService);

            Assert.Equal(EntryType.ProjectEmptyEntry(), projectEmptyEntry.EntryType);
            Assert.Equal((uint)44, projectEmptyEntry.ProjectId);
            Assert.Equal(new TimeSpan(10, 53, 29), projectEmptyEntry.Time);
        }
예제 #25
0
        static void Main(string[] args)
        {
            var jrePath = Environment.GetEnvironmentVariable("JAVA_HOME");
            var entry   = EntryFactory.CreateEntry(Path.Combine(jrePath, "jre", "*"));
            var data    = entry.ReadClass("java.lang.Object");

            Console.WriteLine(data);
            var reader = new ClassReader(data);//@"E:\workcode\zbj\八戒招聘\hr-saas\zbj-zhaopin-admin\zbj-hr-saas-web-manage-ui\target\classes\com\zbj\hr\listener\TaskServlet.class"

            Console.WriteLine("jvm class magic:{0}", reader.ReadU4());
        }
예제 #26
0
        public CompositeEntry(string path)
        {
            var paths = path.Split(Path.PathSeparator, StringSplitOptions.RemoveEmptyEntries);

            entries = new IEntry[paths.Length];
            for (var i = 0; i < paths.Length; i++)
            {
                var entryPath = paths[i];
                entries[i] = EntryFactory.CreateEntry(entryPath);
            }
        }
예제 #27
0
        public void GivenRegexStageStartEntry_ShouldExtractStageStartEntryDetails()
        {
            var dataService    = new DataService("[19:07:17]W: Step 1/4: Clean up");
            var dataDictionary = new DataDictionary();
            var valueExtractor = new ValueExtractor(dataDictionary);
            var stageStart     = EntryFactory.CreateStageStartEntryFunc(1)(valueExtractor, dataService);

            Assert.Equal(EntryType.StageStartType(), stageStart.EntryType);
            Assert.Equal((uint)1, stageStart.StageNo);
            Assert.Equal((uint)4, stageStart.StageCount);
            Assert.Equal("Clean up", stageStart.StageLabel);
        }
예제 #28
0
        public void GivenRegexStageExitEntry_ShouldExtractStageExitEntryDetails()
        {
            var dataService    = new DataService("[19:07:17] :    [Step 4/4] Process exited with code 0");
            var dataDictionary = new DataDictionary();
            var valueExtractor = new ValueExtractor(dataDictionary);
            var stageExit      = EntryFactory.CreateStageExitEntryFunc(1)(valueExtractor, dataService);

            Assert.Equal(EntryType.StageExitType(), stageExit.EntryType);
            Assert.Equal((uint)4, stageExit.StageNo);
            Assert.Equal((uint)4, stageExit.StageCount);
            Assert.True(stageExit.Succeeded);
        }
예제 #29
0
        public void GivenRegexStageSkippedEntry_ShouldExtractStageSkippedEntryDetails()
        {
            var dataService    = new DataService("[11:57:05] : [Step 1/6] Disabled build step this is Label  (here) is skipped");
            var dataDictionary = new DataDictionary();
            var valueExtractor = new ValueExtractor(dataDictionary);
            var stageSkipped   = EntryFactory.CreateStageSkippedEntryFunc(1)(valueExtractor, dataService);

            Assert.Equal(EntryType.StageSkippedType(), stageSkipped.EntryType);
            Assert.Equal((uint)1, stageSkipped.StageNo);
            Assert.Equal((uint)6, stageSkipped.StageCount);
            Assert.Equal("this is Label  (here)", stageSkipped.Label);
        }
예제 #30
0
        public void GivenRegexProjectEndEntry_ShouldExtractProjectEndEntryDefinition()
        {
            var dataService     = new DataService("[19:07:17] :          [exec] 126>Time Elapsed 00:00:14.56");
            var dataDictionary  = new DataDictionary();
            var valueExtractor  = new ValueExtractor(dataDictionary);
            var projectEndEntry = EntryFactory.CreateProjectEndEntryFunc(1)(valueExtractor, dataService);

            Assert.Equal(EntryType.ProjectEndEntry(), projectEndEntry.EntryType);
            Assert.Equal((uint)126, projectEndEntry.Id);
            Assert.Equal(new TimeSpan(0, 0, 0, 14, 560), projectEndEntry.TimeElapsed);
            Assert.Equal(new TimeSpan(19, 07, 17), projectEndEntry.Time);
        }
예제 #31
0
        public void Entry_not_in_database_returns_null()
        {
            var testableStore = new TestableStore();

            using (var session = testableStore.OpenSession())
            {
                var entryFactory = new EntryFactory(session);
                var entry = entryFactory.CreateFromSlug("non-existent");

                Assert.Null(entry);
            }
        }
예제 #32
0
        public ActionResult ViewEntry(string pageSlug, string entrySlug)
        {
            var pageFactory = new PageFactory(this.session);
            var page = pageFactory.CreateFromSlug(pageSlug);
            if (page == null)
            {
                return new HttpNotFoundResult("No such page.");
            }

            var entryFactory = new EntryFactory(this.session);
            var entry = entryFactory.CreateFromSlug(entrySlug);
            if (entry == null)
            {
                return new HttpNotFoundResult("No such entry.");
            }

            var entryToEntryViewModelMapper = new EntryToEntryViewModelMapper(this.session, this.Url);
            var entryViewModel = entryToEntryViewModelMapper.Map(entry);

            entryViewModel.PageSlug = pageSlug;

            return this.View(entryViewModel);
        }
예제 #33
0
 private static Entry GetEntryUsingFactory(IDocumentSession session, string slug)
 {
     var entryFactory = new EntryFactory(session);
     return entryFactory.CreateFromSlug(slug);
 }