Exemplo n.º 1
0
        public void TestCtor()
        {
            FractionModel f = new FractionModel(1, 2);

            Assert.AreEqual(f.Numerator, 1);
            Assert.AreEqual(f.Denominator, 2);
        }
Exemplo n.º 2
0
 public static FractionModel ComposeValues(FractionModel fraction, JToken headers, JToken fractionObj)
 {
     if (int.TryParse(headers[0]?["headerValue"]?.ToString(), out var locationId))
     {
         fraction.ItemNumber = fractionObj[locationId]?.ToString(); // Number
     }
     if (int.TryParse(headers[1]?["headerValue"]?.ToString(), out locationId))
     {
         fraction.Name = fractionObj[locationId]?.ToString(); //Name
     }
     if (int.TryParse(headers[2]?["headerValue"]?.ToString(), out locationId))
     {
         fraction.LocationCode = fractionObj[locationId]?.ToString(); //Location Code
     }
     if (int.TryParse(headers[3]?["headerValue"]?.ToString(), out locationId))
     {
         fraction.eFormId = (int)fractionObj[locationId]; //eFormId
     }
     //if (int.TryParse(headers[4]["headerValue"].ToString(), out locationId))
     //{
     //    fraction.Statutoryeform = fractionObj[locationId].ToString(); //CustomerNumber
     //}
     if (int.TryParse(headers[5]?["headerValue"]?.ToString(), out locationId))
     {
         fraction.Description = fractionObj[locationId]?.ToString();
     }
     return(fraction);
 }
Exemplo n.º 3
0
        public async Task <OperationResult> Create(FractionModel createModel)
        {
            var fraction = new Fraction
            {
                Name         = createModel.Name,
                Description  = createModel.Description,
                ItemNumber   = createModel.ItemNumber,
                LocationCode = createModel.LocationCode,
                eFormId      = createModel.eFormId
            };
            await fraction.Create(_dbContext);

            return(new OperationResult(true));
        }
Exemplo n.º 4
0
        public async Task <bool> UpdateChangeFailureRate(TableStorageAuth tableStorageAuth,
                                                         string organization_owner, string project_repo, string buildName_workflowName,
                                                         int percentComplete, int numberOfDays)
        {
            //Gets a list of change failure rate builds
            AzureTableStorageDA daTableStorage = new AzureTableStorageDA();
            string partitionKey = daTableStorage.CreateBuildWorkflowPartitionKey(organization_owner, project_repo, buildName_workflowName);

            Newtonsoft.Json.Linq.JArray   list          = daTableStorage.GetTableStorageItems(tableStorageAuth, tableStorageAuth.TableChangeFailureRate, partitionKey);
            List <ChangeFailureRateBuild> initialBuilds = JsonConvert.DeserializeObject <List <ChangeFailureRateBuild> >(list.ToString());

            //Get the list of items we are going to process, within the date/day range
            List <ChangeFailureRateBuild> builds = new List <ChangeFailureRateBuild>();

            foreach (ChangeFailureRateBuild item in initialBuilds)
            {
                if (item.StartTime > DateTime.Now.AddDays(-numberOfDays))
                {
                    builds.Add(item);
                }
            }

            //Using the percent, convert it to a fraction
            FractionConverter converter      = new FractionConverter();
            FractionModel     fracationModel = converter.ConvertToFraction(percentComplete);
            int numerator   = fracationModel.Numerator;
            int denominator = fracationModel.Denominator;

            //Get builds for positive (builds we will set DeploymentWasSuccessful=true) and negative (builds we will set to DeploymentWasSuccessful=false)
            Console.WriteLine($"numerator {numerator} / denominator {denominator}");
            //TODO: remember how this (x, numerator) syntax works so it can be documented. oooof.
            List <ChangeFailureRateBuild> postiveBuilds  = builds.Where((x, numerator) => numerator % denominator != 0).ToList();
            List <ChangeFailureRateBuild> negativeBuilds = builds.Where((x, numerator) => numerator % denominator == 0).ToList();

            //Make the updates
            TableStorageCommonDA tableChangeFailureRateDA = new TableStorageCommonDA(tableStorageAuth, tableStorageAuth.TableChangeFailureRate);

            foreach (ChangeFailureRateBuild item in postiveBuilds)
            {
                item.DeploymentWasSuccessful = true;
                await daTableStorage.UpdateChangeFailureRate(tableChangeFailureRateDA, item, partitionKey, true);
            }
            foreach (ChangeFailureRateBuild item in negativeBuilds)
            {
                item.DeploymentWasSuccessful = false;
                await daTableStorage.UpdateChangeFailureRate(tableChangeFailureRateDA, item, partitionKey, true);
            }

            return(true);
        }
        public void Fraction98PercentTest()
        {
            //Arrange
            FractionConverter fraction = new FractionConverter();
            int percent = 98;

            //Act
            FractionModel model = fraction.ConvertToFraction(percent);

            //Assert
            Assert.AreNotEqual(null, model);
            Assert.AreEqual(49, model.Numerator);
            Assert.AreEqual(50, model.Denominator);
        }
Exemplo n.º 6
0
        public void FractionOtherPercentTest()
        {
            //Arrange
            FractionConverter fraction = new();
            int percent = 1000;

            //Act
            FractionModel model = fraction.ConvertToFraction(percent);

            //Assert
            Assert.AreNotEqual(null, model);
            Assert.AreEqual(1, model.Numerator);
            Assert.AreEqual(1, model.Denominator);
        }
Exemplo n.º 7
0
        public async Task <OperationResult> Update(FractionModel updateModel)
        {
            var fraction = await _dbContext.Fractions.SingleOrDefaultAsync(x => x.Id == updateModel.Id);

            if (fraction != null)
            {
                fraction.Name         = updateModel.Name;
                fraction.Description  = updateModel.Description;
                fraction.ItemNumber   = updateModel.ItemNumber;
                fraction.LocationCode = updateModel.LocationCode;
                fraction.eFormId      = updateModel.eFormId;

                await fraction.Update(_dbContext);
            }

            return(new OperationResult(true));
        }
 public async Task <OperationResult> Update([FromBody] FractionModel updateModel)
 {
     return(await _fractionService.Update(updateModel));
 }
 public async Task <OperationResult> Create([FromBody] FractionModel createModel)
 {
     return(await _fractionService.Create(createModel));
 }