public void GivenConstructedWithNoWords_WhenQuery_ThenSequenceFoundFalse()
        {
            var sequenceResult = new SequenceResult();

            sequenceResult.SequenceFound.Should().BeFalse();
            sequenceResult.Words.Count.Should().Be(0);
        }
Exemple #2
0
        public static List <SequenceResult> GetVerificationResults(List <string> sequences)
        {
            List <SequenceResult> verificationResults = new List <SequenceResult>();

            foreach (string sequenceAsString in sequences)
            {
                Sequence       sequence = SequenceUtilities.GetSequenceFromString(sequenceAsString);
                SequenceResult result   = new SequenceResult(sequence);

                int  i = 0;
                bool correspondingSequence = false;

                while (i < sequence.PossiblePermutations.Count && !correspondingSequence)
                {
                    string   currentPermutation = sequence.PossiblePermutations[i];
                    Sequence serializedSequence = sequence.Serialize(currentPermutation);

                    if (serializedSequence.ReadsFrom.DictionaryEqual(sequence.ReadsFrom) &&
                        serializedSequence.FinalWrites.DictionaryEqual(sequence.FinalWrites))
                    {
                        correspondingSequence = true;
                        result.IsValid        = true;
                    }

                    result.TestedPermutations.Add(serializedSequence, correspondingSequence);

                    i++;
                }

                verificationResults.Add(result);
            }

            return(verificationResults);
        }
        public void GivenConstructedWithWords_WhenQuery_ThenSequenceFoundTrue()
        {
            var sequenceResult = new SequenceResult(new List <string> {
                "Test"
            });

            sequenceResult.SequenceFound.Should().BeTrue();
            sequenceResult.Words.Count.Should().Be(1);
        }
Exemple #4
0
        public static TypeNameInfo Parse(string typeName)
        {
            var input = new InputStream(typeName);

            ParseResult result = Sequence(Match_TypeName, EOF)(input);
            if(!result.Matched) return null;

            var typeNameResult = new SequenceResult(result)[0];
            return (TypeNameInfo) typeNameResult.ResultData;
        }
Exemple #5
0
        public async Task Write(SequenceResult result, string resultLocation)
        {
            var output = result.Words.Count > 0
                ? result.Words
                : new List <string> {
                "No result found!"
            };

            await File.WriteAllLinesAsync(resultLocation, output);
        }
Exemple #6
0
        public virtual async Task <ServiceResult> Get(TResourceParameters resourceParameters)
        {
            IQueryable <TEntity> result;

            if (resourceParameters != null)
            {
                if (ShouldEagerLoad(resourceParameters))
                {
                    //check prop and prop mapping
                    var propertyCheckResult = PropertyCheck <TDtoEagerLoaded>(resourceParameters.OrderBy);
                    if (!propertyCheckResult.Succeded)
                    {
                        return(ServiceResult.BadRequest(propertyCheckResult.Message));
                    }

                    result = GetWithEagerLoad();
                }
                else
                {
                    //check prop and prop mapping
                    var propertyCheckResult = PropertyCheck <TDto>(resourceParameters.OrderBy);
                    if (!propertyCheckResult.Succeded)
                    {
                        return(ServiceResult.BadRequest(propertyCheckResult.Message));
                    }
                    result = _dbContext.Set <TEntity>().AsQueryable();
                }
            }
            else
            {
                result = _dbContext.Set <TEntity>().AsQueryable();
            }

            var pagedResult = await FilterAndPrepare(result, resourceParameters) ?? new PagedList <TEntity>(new List <TEntity>(), 0, 0, 0);

            var serviceResultToReturn = new SequenceResult()
            {
                PaginationMetadata = new PaginationMetadata()
                {
                    CurrentPage = pagedResult.CurrentPage,
                    PageSize    = pagedResult.PageSize,
                    TotalCount  = pagedResult.TotalCount,
                    TotalPages  = pagedResult.TotalPages
                },
                Data        = PrepareDataForClient(pagedResult, resourceParameters: resourceParameters),
                HasNext     = pagedResult.HasNext,
                HasPrevious = pagedResult.HasPrevious
            };

            return(ServiceResult.OK(serviceResultToReturn));
        }
Exemple #7
0
        public ActionResult _SequenceNumbers(int Number, string SequenceName)
        {
            var model = new List <SequenceResult>();

            if (this.ModelState.IsValid)
            {
                switch (SequenceName)
                {
                case "All":
                    model = Enumerable.Range(1, Number).ToList().ConvertAll <string>(x => x.ToString()).Select(x => new SequenceResult {
                        Number = x
                    }).ToList();
                    break;

                case "Even":
                    model = new SequenceResult().GetEvenNumbers(Number).Select(x => new SequenceResult {
                        Number = x
                    }).ToList();
                    break;

                case "Odd":
                    model = new SequenceResult().GetOddNumbers(Number).Select(x => new SequenceResult {
                        Number = x
                    }).ToList();
                    break;

                case "Fibonacci":
                    model = new SequenceResult().GetFibonacciNumbers(Number).Select(x => new SequenceResult {
                        Number = x
                    }).ToList();
                    break;

                case "Multiples":
                    model = new SequenceResult().GetMultiples(Number).Select(x => new SequenceResult {
                        Number = x
                    }).ToList();
                    break;

                default:
                    break;
                }

                return(PartialView("_SequenceNumbers", model));
            }
            else
            {
                return(View());
            }
        }
Exemple #8
0
        public JsonResult UpdateQuestions(int type)
        {
            if (type != 1 && type != 3)
            {
                return(Json(new JsonData {
                    Code = Core.Enum.ResultCode.Fail, Message = "更新失败"
                }, JsonRequestBehavior.DenyGet));
            }
            HttpHelper httpHelper   = new HttpHelper();
            HttpItem   sequenceItem = new HttpItem
            {
                URL = "http://api2.jiakaobaodian.com/api/open/exercise/sequence.htm?_r=18556060022096025072&cityCode=110000&page=1&limit=25&course=kemu"
                      + type + "&carType=car&_=0.1590286446735263",
            };
            HttpResult     seqResult           = httpHelper.GetHtml(sequenceItem);
            SequenceResult sequenceResult      = Newtonsoft.Json.JsonConvert.DeserializeObject <SequenceResult>(seqResult.Html);
            string         codes               = "";
            int            succesCount         = 0;
            DapperHelper   dapperHelper        = new DapperHelper(Core.Enum.DbConnEnum.my3w);
            IEnumerable <QuestionResult> qlist = dapperHelper.Query <QuestionResult>("select questionId from QuestionResult");

            for (int i = 1; i < sequenceResult.data.Length; i++)
            {
                if (qlist.Any(q => q.questionId == sequenceResult.data[i]))
                {
                    continue;
                }
                codes += sequenceResult.data[i] + ",";
                if (i % 10 == 0)
                {
                    codes        = codes.TrimEnd(',');
                    succesCount += addQuestion(codes, type);
                    codes        = "";
                }
            }
            if (!string.IsNullOrEmpty(codes))
            {
                succesCount += addQuestion(codes, type);
            }
            return(Json(new JsonData {
                Code = Core.Enum.ResultCode.OK, Data = succesCount
            }, JsonRequestBehavior.DenyGet));
        }
Exemple #9
0
 private static ParseResult Match_QuotedChar(InputStream input)
 {
     return ParseBuilder.WithAction(
         ParseBuilder.Sequence(Match_Backslash, ParseBuilder.Any),
         result =>
         {
             string ch = new SequenceResult(result)[1].MatchedString;
             return new ParseResult(ch);
         })(input);
 }
Exemple #10
0
        public DetailsWindow(SequenceResult sequenceResult)
        {
            this.sequenceResult = sequenceResult;

            InitializeComponent();
        }