public StratumDetailViewModel(IDataserviceProvider dataserviceProvider, ISetupInfoDataservice setupDataservice, StratumValidator validator)
            : base(validator)
        {
            if (dataserviceProvider is null)
            {
                throw new ArgumentNullException(nameof(dataserviceProvider));
            }

            var stratumDataservice = dataserviceProvider.GetDataservice <IStratumDataservice>();

            StratumDataservice  = stratumDataservice ?? throw new ArgumentNullException(nameof(stratumDataservice));
            TemplateDataservice = dataserviceProvider.GetDataservice <ITemplateDataservice>() ?? throw new ArgumentNullException(nameof(TemplateDataservice));

            SetupDataservice = setupDataservice ?? throw new ArgumentNullException(nameof(setupDataservice));

            Methods          = SetupDataservice.GetCruiseMethods();
            TreeFieldOptions = TemplateDataservice.GetTreeFields();

            //HotKeyOptions = new string[]
            //{
            //    "A", "B", "C", "D", "E", "F", "G", "H",
            //    "I", "J", "K", "L", "M", "N", "O", "P",
            //    "Q", "R", "S", "T", "U", "V", "X", "Y", "Z",
            //    "1", "2", "3", "4", "5", "6", "7", "8", "9", "0",
            //};
        }
Beispiel #2
0
        public void UpsertSpecies_Insert()
        {
            var speciesCode = "ABC";
            var initializer = new DatastoreInitializer();

            using var db = initializer.CreateDatabase();
            var ds = new TemplateDataservice(db, initializer.CruiseID, initializer.DeviceID);

            var sp = new Species
            {
                SpeciesCode = speciesCode,
            };

            ds.UpsertSpecies(sp);

            db.ExecuteScalar <int>("SELECT count(*) FROM Species WHERE SpeciesCode = @p1", speciesCode)
            .Should().Be(1);

            sp.ContractSpecies = Rand.String();
            sp.FIACode         = Rand.Word();

            ds.UpsertSpecies(sp);

            var spAgain = db.From <Species>().Where("SpeciesCode = @p1").Query(speciesCode).Single();

            spAgain.Should().BeEquivalentTo(sp);
        }
Beispiel #3
0
        public void GetSpecies()
        {
            var initializer = new DatastoreInitializer();

            using var db = initializer.CreateDatabase();
            var ds = new TemplateDataservice(db, initializer.CruiseID, initializer.DeviceID);

            var species = ds.GetSpecies();

            species.Should().NotBeEmpty();
        }
Beispiel #4
0
        public void AddSpecies()
        {
            var speciesCode = "ABC";
            var initializer = new DatastoreInitializer();

            using var db = initializer.CreateDatabase();
            var ds = new TemplateDataservice(db, initializer.CruiseID, initializer.DeviceID);

            var sp = new Species
            {
                SpeciesCode = speciesCode,
            };

            ds.AddSpecies(sp);

            db.ExecuteScalar <int>("SELECT count(*) FROM Species WHERE SpeciesCode = @p1", speciesCode)
            .Should().Be(1);
        }
        public StratumTemplateFieldsViewModel(ITemplateDataservice templateDataservice)
        {
            TemplateDataservice = templateDataservice ?? throw new ArgumentNullException(nameof(templateDataservice));

            TreeFields = TemplateDataservice.GetTreeFields();
        }