Example #1
0
        public void GittMatch_IngenPosterErFramITid_SkalIkkeKræsje()
        {
            var match = _gitt.EnMatchMedTreLagOgTrePoster();

            using (var context = _dataContextFactory.Create())
            {
                context.PosterIMatch
                .Include(x => x.Post)
                .Include(x => x.Match)
                .ForEach(x =>
                {
                    x.SynligFraTid = TimeService.Now.Subtract(new TimeSpan(0, 60, 0));
                    x.SynligTilTid = TimeService.Now.Subtract(new TimeSpan(0, 30, 0));
                });

                context.SaveChanges();
            }

            var lag1             = match.DeltakendeLag.First();
            var gamestateservice = _container.Resolve <GameStateService>();

            var lag1State = gamestateservice.Get(lag1.Lag.LagId);

            Assert.AreEqual(0, lag1State.Score, "Skal ikke ha noen poeng");
            Assert.AreEqual(false, lag1State.Poster.Any(x => x.HarRegistrert), "Skal ikke ha noen registreringer");
        }
        public async Task Create_SqliteDatabaseWithoutMigrationErrors()
        {
            var connectionString = $"Data Source={_databaseFilePath}";

            ILoggerFactory loggerFactory = new NullLoggerFactory();

            var dataContextFactory = new DataContextFactory(loggerFactory.CreateLogger <DataContextFactory>(), connectionString);

            using (var dataContext = dataContextFactory.Create())
            {
                //Assert.IsTrue(await dataContext.Database.EnsureCreatedAsync(), "Database hos not been created");

                Assert.IsTrue(dataContext.Database.IsSqlite(), "Is it not Sqlite database");
            }

            // Simple request
            using (var dataContext = dataContextFactory.Create())
            {
                Assert.AreEqual(await dataContext.Clients.CountAsync(), 0);
            }

            var  clientName = Guid.NewGuid().ToString();
            Guid clientId;

            // Create entity request
            using (var dataContext = dataContextFactory.Create())
            {
                var clientEntity = new ClientEntity
                {
                    Name = clientName
                };

                await dataContext.AddAsync(clientEntity);

                await dataContext.SaveChangesAsync();

                clientId = clientEntity.Id;
            }

            // Simple request
            using (var dataContext = dataContextFactory.Create())
            {
                Assert.AreEqual(await dataContext.Clients.CountAsync(), 1);

                var client = await dataContext.Clients.SingleOrDefaultAsync(x => x.Id == clientId);

                Assert.IsNotNull(client);

                Assert.AreEqual(client.Id, clientId);
                Assert.AreEqual(client.Name, clientName);
            }
        }
Example #3
0
        public List <Lag> ToLagMedToDeltakere()
        {
            using (var context = _dataContextFactory.Create())
            {
                var lag1 = LagFactory.SettOppEtLagMedDeltakere(1, 2);
                var lag2 = LagFactory.SettOppEtLagMedDeltakere(2, 2);
                context.Lag.Add(lag1);
                context.Lag.Add(lag2);

                context.SaveChanges();

                return(new List <Lag> {
                    lag1, lag2
                });
            }
        }
 private void PersistLogs(Log log, List <Log> logs)
 {
     try
     {
         using (var dc = DataContextFactory.Create())
         {
             if (log != null)
             {
                 dc.ApplicationLogs.Add(log.InternalLog);
             }
             else
             {
                 if (logs != null)
                 {
                     logs.ForEach(x => dc.ApplicationLogs.Add(x.InternalLog));
                 }
             }
             dc.SaveChanges();
         }
     }
     catch (Exception ex)
     {
         WriteFileLog("ApplicaitonLogger.LoggingError " + GetNowString(), ex.Message);
         Fallback(log, logs);
     }
 }
Example #5
0
        public byte[] ToByteArray(Guid matchId)
        {
            using (var context = _dataContextFactory.Create())
            {
                var match = context.Matcher.SingleOrDefault(x => x.MatchId == matchId);


                //var l1 = context.Lag.Include(x => x.Deltakere).ToList();

                //var lag = (from l in context.Lag.Include(x => x.Deltakere)
                //           join lim in context.LagIMatch on l.LagId equals lim.Lag.LagId
                //           where lim.Match.MatchId == matchId
                //           select l).ToList();


                var lag = context.LagIMatch.Include(x => x.Lag.Deltakere)
                          .Where(x => x.Match.MatchId == matchId)
                          .ToList()        // strange - needed to have deltakere included
                          .Select(x => x.Lag)
                          .ToList();



                var posterIMatch = context.PosterIMatch.Include(x => x.Post).Where(x => x.Match.MatchId == matchId).ToList();

                var excelMatch = MatchImport.ExcelMatch.FromMatch(match);

                var excelPoster = posterIMatch.Select(PostImport.ExcelPost.Create).ToList();

                _excelWriter.SkrivTilExcel(excelMatch, lag, excelPoster);
            }

            return(_excelWriter.GetAsByteArray());
        }
 private void frmCadastroCliente_Load(object sender, EventArgs e)
 {
     _dataContext            = DataContextFactory.Create();
     _cliente                = new Cliente();
     _enderecoSelecionado    = new Endereco();
     dtgEmderecos.DataSource = _cliente.Endereco;
 }
        private void btnFiltrar_Click(object sender, EventArgs e)
        {
            using (ClienteDataContext clienteDataContext = DataContextFactory.Create())
            {
                var clientes = string.IsNullOrEmpty(txtNomeCliente.Text) ?
                               clienteDataContext.Clientes :
                               clienteDataContext.Clientes.Where(t => t.Nome.StartsWith(txtNomeCliente.Text));

                dtgClientes.DataSource = clientes.ToList();
            }
        }
Example #8
0
        public void NårEnMeldingPostes_SkalDenLagresIDatabasen()
        {
            var gittLag = _gitt.ToLagMedToDeltakere();

            var lag1      = gittLag[0];
            var deltaker1 = lag1.Deltakere[0];

            var meldingsService = _container.Resolve <MeldingService>();

            meldingsService.PostMelding(deltaker1.DeltakerId, lag1.LagId, "Testmelding");

            using (var context = _dataContextFactory.Create())
            {
                var melding = context.Meldinger.Single();

                Assert.AreEqual(deltaker1.DeltakerId, melding.DeltakerId, "DeltakerId");
                Assert.AreEqual(lag1.LagId, melding.LagId, "LagId");
                Assert.AreEqual("Testmelding", melding.Tekst, "Tekst");
            }
        }
Example #9
0
        private void btnFiltrar_Click(object sender, EventArgs e)
        {
            using (ClienteDataContext clienteDataContext = DataContextFactory.Create())
            {
                var clientes = string.IsNullOrEmpty(txtNomeCliente.Text) ?
                               Program.unityOfWork.clienteRepository.Clientes() :
                               Program.unityOfWork.clienteRepository.BuscarClientesPorNome(txtNomeCliente.Text);

                dtgClientes.DataSource = clientes;
            }
        }
Example #10
0
        public void Given()
        {
            _container          = RestApiApplication.CreateContainer();
            _gitt               = new Gitt(_container);
            _dataContextFactory = _container.Resolve <DataContextFactory>();
            TimeService.ResetToRealTime();

            // Slett alle meldinger (blir rullet tilbake i transaksjon uansett)
            using (var context = _dataContextFactory.Create())
            {
                context.Meldinger.Clear();
                context.SaveChanges();
            }
        }
        private void DisablePostIMatch(PostIMatch førstePost)
        {
            using (var context = _dataContextFactory.Create())
            {
                var postIMatch = context.PosterIMatch
                                 .Include(x => x.Post)
                                 .Include(x => x.Match)
                                 .Single(x => x.Id == førstePost.Id);

                postIMatch.SynligFraTid = new DateTime(2001, 01, 01);
                postIMatch.SynligTilTid = new DateTime(2001, 01, 02);
                context.SaveChanges();
            }
        }
        public void Given()
        {
            _container = RestApiApplication.CreateContainer();

            _appSettings = new OverridableSettings();
            _container.Register(Component.For <OverridableSettings>().Instance(_appSettings).IsDefault().Named(Guid.NewGuid().ToString()));

            _gitt = new Gitt(_container);
            _dataContextFactory = _container.Resolve <DataContextFactory>();
            TimeService.ResetToRealTime();

            // Slett alle posisjoner (blir rullet tilbake i transaksjon uansett)
            using (var context = _dataContextFactory.Create())
            {
                context.DeltakerPosisjoner.Clear();
                context.SaveChanges();
            }
        }
Example #13
0
        public void Les(ExcelWorksheet excelWorksheet, MatchImport.ExcelMatch excelMatch)
        {
            var matchId  = excelMatch.MatchId;
            var lagListe = LesFra(excelWorksheet);

            using (var context = _dataContextFactory.Create())
            {
                var match = (from m in context.Matcher.Include(x => x.DeltakendeLag.Select(y => y.Lag))
                             where m.MatchId == matchId
                             select m).FirstOrDefault();

                var våpen = context.Våpen.ToList();

                foreach (var lag in lagListe)
                {
                    AddOrUpdate(lag, match, context, excelMatch, våpen);
                }

                context.SaveChanges();
            }
        }
        protected override async Task OnStarted()
        {
            using (var db = DataContextFactory.Create())
            {
                var accounts = db.Accounts
                               .Where(a => a.LatestConnectedService == Info.Name)
                               .Select(a => a.ID.ToString());

                if (accounts.Any())
                {
                    await AccountStatusCache.RemoveAllAsync(db.Accounts
                                                            .Where(a => a.LatestConnectedService == Info.Name)
                                                            .Select(a => a.ID.ToString()));

                    Logger.Info(
                        $"Forcibly reset account states of {"account".ToQuantity(accounts.Count())} previously connected to {Info.Name}"
                        );
                }
            }

            await base.OnStarted();
        }
        public void NårEnDeltakerPosterEnPosisjon_SkalPosisjonenLagresIDatabasen()
        {
            var givenLag = _gitt.ToLagMedToDeltakere();

            var posisjonsSevice = _container.Resolve <PosisjonsService>();

            var deltaker11 = givenLag[0].Deltakere[0];
            var latitude   = 59.6785526164;
            var longitude  = 10.6039274298;

            posisjonsSevice.RegistrerPosisjon(deltaker11.Lag.LagId, deltaker11.DeltakerId, latitude, longitude);

            using (var context = _dataContextFactory.Create())
            {
                Assert.AreEqual(1, context.DeltakerPosisjoner.Count(), "Skulle vært 1 posisjon");
            }
        }
 public PayConfigurationRepository() : base(DataContextFactory.Create <DataContext>())
 {
 }
Example #17
0
 public IncreasingNumberRepository() : base(DataContextFactory.Create <PosDataContext>())
 {
 }
Example #18
0
        public string GetKml()
        {
            var matchId = _currentMatchProvider.GetMatchId();

            SharpKml.Dom.Kml kml = new SharpKml.Dom.Kml();

            var document = new Document();

            kml.Feature = document;

            var c         = System.Drawing.ColorTranslator.FromHtml("#33FF33");
            var postStyle = new Style();

            postStyle.Id   = "post_vanlig";
            postStyle.Icon = new IconStyle
            {
                Color = new Color32(c.A, c.R, c.G, c.B),
                Icon  = new IconStyle.IconLink(new Uri("http://maps.google.com/mapfiles/kml/paddle/wht-blank.png")),
                Scale = 0.5
            };

            document.AddStyle(postStyle);

            var lagFolder = new Folder {
                Name = "Lag"
            };
            var postFolder = new Folder {
                Name = "Poster"
            };

            document.AddFeature(lagFolder);
            document.AddFeature(postFolder);


            using (var context = _dataContextFactory.Create())
            {
                var match = context.Matcher.Single(x => x.MatchId == matchId);

                var maxLat = match.GeoboxNWLatitude.GetValueOrDefault();
                var minLat = match.GeoboxSELatitude.GetValueOrDefault();
                var minLon = match.GeoboxNWLongitude.GetValueOrDefault();
                var maxLon = match.GeoboxSELongitude.GetValueOrDefault();

                var poster = (from pim in context.PosterIMatch
                              where pim.Match.MatchId == matchId
                              select
                              new
                {
                    pim.SynligFraTid,
                    pim.SynligTilTid,
                    pim.Post.Navn,
                    pim.Post.Latitude,
                    pim.Post.Longitude
                }).ToList();

                foreach (var p in poster)
                {
                    var placemark = new Placemark();
                    placemark.StyleUrl = new Uri("#post_vanlig", UriKind.Relative);
                    placemark.Time     = new TimeSpan {
                        Begin = p.SynligFraTid, End = p.SynligTilTid
                    };
                    placemark.Name     = p.Navn;
                    placemark.Geometry = new Point {
                        Coordinate = new Vector(p.Latitude, p.Longitude)
                    };

                    postFolder.AddFeature(placemark);
                }

                var lag = context.Lag.ToList();

                var lagDictionary = new Dictionary <string, Folder>();

                foreach (var lag1 in lag)
                {
                    var color = System.Drawing.ColorTranslator.FromHtml("#" + lag1.Farge);
                    var style = new Style();
                    style.Id   = LagStyleKey(lag1.LagId);
                    style.Icon = new IconStyle
                    {
                        Color = new Color32(color.A, color.R, color.G, color.B),
                        Icon  = new IconStyle.IconLink(new Uri("http://maps.google.com/mapfiles/kml/paddle/wht-blank-lv.png")),
                        Scale = 0.3
                    };

                    document.AddStyle(style);
                    var folder = new Folder {
                        Name = lag1.Navn
                    };
                    lagDictionary.Add(lag1.LagId, folder);
                    lagFolder.AddFeature(folder);
                }

                var deltakerPosisjoner = (from p in context.DeltakerPosisjoner
                                          join d in context.Deltakere on p.DeltakerId equals d.DeltakerId
                                          where match.StartTid < p.Tidspunkt && p.Tidspunkt < match.SluttTid
                                          select new
                {
                    p.Latitude,
                    p.Longitude,
                    p.DeltakerId,
                    d.Navn,
                    d.Lag.Farge,
                    d.Lag.LagId,
                    p.Tidspunkt
                }).GroupBy(x => x.DeltakerId).ToDictionary(x => x.Key, y => y);

                foreach (var deltaker in deltakerPosisjoner)
                {
                    //if (deltaker.Key != "MS_3-2")

                    //    continue;
                    var førstePosisjon = deltaker.Value.FirstOrDefault();
                    var placemark      = new Placemark();
                    placemark.StyleUrl = new Uri("#" + LagStyleKey(førstePosisjon.LagId), UriKind.Relative);
                    placemark.Name     = førstePosisjon.Navn;

                    var posisjoner = deltaker.Value.OrderBy(x => x.Tidspunkt).ToList();

                    var track = new Track();

                    var forrigePosisjon = førstePosisjon;
                    foreach (var pos in posisjoner)
                    {
                        // Utafor boksen
                        if (pos.Latitude > maxLat || pos.Latitude < minLat || pos.Longitude > maxLon || pos.Longitude < minLon)
                        {
                            continue;
                        }

                        var meter    = DistanseKalkulator.MeterMellom(forrigePosisjon.Latitude, forrigePosisjon.Longitude, pos.Latitude, pos.Longitude);
                        var sekunder = pos.Tidspunkt.Subtract(forrigePosisjon.Tidspunkt).TotalSeconds;

                        if (sekunder > 0)
                        {
                            var fart = meter / sekunder;
                            if (fart > 8.333) // raskere enn 12 blank på 100m
                            {
                                continue;
                            }
                        }

                        track.AddWhen(pos.Tidspunkt);
                        track.AddCoordinate(new Vector(pos.Latitude, pos.Longitude));
                        forrigePosisjon = pos;
                    }

                    placemark.Geometry = track;

                    lagDictionary[førstePosisjon.LagId].AddFeature(placemark);
                }
            }


            Serializer serializer = new Serializer();

            serializer.Serialize(kml);

            return(serializer.Xml);
        }
 public void OnCreatingDatabase()
 {
     var dataContextFactory = new DataContextFactory("Host=localhost;Port=5432;Database=shm1;Username=postgres;Password=qwerty1");
     var dataContext        = dataContextFactory.Create();
 }
Example #20
0
 public Logic()
 {
     data = DataContextFactory.Create("SqlData");
 }
Example #21
0
 public ProductBrandRepository(int companyId) : base(DataContextFactory.Create <DataContext>())
 {
     CompanyId = companyId;
 }
Example #22
0
 public StoredValueCardPayRecordRepository() : base(DataContextFactory.Create <DataContext>())
 {
 }
Example #23
0
 public PayWayRepository() : base(DataContextFactory.Create <DataContext>())
 {
 }
Example #24
0
 public BaseEFRepository() : this(DataContextFactory.Create <DataContext>())
 {
 }
Example #25
0
 public SysStoreUserInfoRepository() : base(DataContextFactory.Create <DataContext>())
 {
 }
Example #26
0
 public MemberRepository() : base(DataContextFactory.Create <DataContext>())
 {
 }
Example #27
0
 public Logic()
 {
     data = DataContextFactory.Create(ConfigurationManager.AppSettings.GetKey(4));
 }
 public ProductChangePriceRepository(int companyId) : base(DataContextFactory.Create <DataContext>())
 {
     CompanyId = companyId;
 }
 public MySqlEfBraaapRepository(IConfiguration configuration)
 {
     _connectionString = configuration.GetConnectionString("MySql");
     ctx = DataContextFactory.Create(_connectionString);
 }
Example #30
0
 private static TestDataContext CreateDataContext()
 {
     return(DataContextFactory.Create <TestDataContext>());
 }