public void LotteryHandlerTest() { foreach (Enums.LotteryType lt in (Enums.LotteryType[])Enum.GetValues(typeof(Enums.LotteryType))) { var lh = new LotteryHandler(lt, "Whem", true, true); Assert.True( lh.GetLotteryCollection() != null && lh.LotteryStatistics != null && lh != null && lh.SaveNumbers.Count(number => number.DifferentInPercentage == null) == 0); } foreach (Enums.LotteryType lt in (Enums.LotteryType[])Enum.GetValues(typeof(Enums.LotteryType))) { var lh = new LotteryHandler(lt, "Whem", false, true); Assert.True(lh.GetLotteryCollection() != null && lh.LotteryStatistic != null); } foreach (Enums.LotteryType lt in (Enums.LotteryType[])Enum.GetValues(typeof(Enums.LotteryType))) { var lh = new LotteryHandler(lt, "Whem", false, false); Assert.True(lh.GetLotteryCollection() != null && lh.LotteryStatistic != null); } foreach (Enums.LotteryType lt in (Enums.LotteryType[])Enum.GetValues(typeof(Enums.LotteryType))) { var lh = new LotteryHandler(lt, "Whem", true, false); Assert.True(lh.GetLotteryCollection() != null && lh.LotteryStatistic != null && lh.GoogleSheetData != null); } }
public void DownloadNumbersFromInternetTest() { foreach (Enums.LotteryType lt in (Enums.LotteryType[])Enum.GetValues(typeof(Enums.LotteryType))) { var lh = new LotteryHandler(lt, "Whem", false, false); Assert.True(lh.GetLotteryCollection() != null); } }
public void GetRandomNumberTest() { foreach (Enums.LotteryType lt in (Enums.LotteryType[])Enum.GetValues(typeof(Enums.LotteryType))) { var lr = new LotteryRule(lt); var rnd = LotteryHandler.GetRandomNumber(lr); Assert.True(rnd > lr.MinNumber && rnd < lr.MaxNumber); } }
public void SaveDataToGoogleSheetTest() { foreach (Enums.LotteryType lt in (Enums.LotteryType[])Enum.GetValues(typeof(Enums.LotteryType))) { var lh = new LotteryHandler(lt, "Whem", true, false); lh.CalculateNumbers(Enums.TypesOfDrawn.ByInterval, Enums.GenerateType.EachByEach, 1); Assert.True(lh.SaveDataToGoogleSheet() != null); } }
public void MakeStatisticFromEarlierWeekTest() { foreach (Enums.LotteryType lt in (Enums.LotteryType[])Enum.GetValues(typeof(Enums.LotteryType))) { var lh = new LotteryHandler(lt, "Whem", true, true); Assert.True( lh.GetLotteryCollection() != null && lh.LotteryStatistics != null && lh != null && lh.SaveNumbers.Count(number => number.DifferentInPercentage == null) == 0); } }
public void RunMethodWithEachTimeAndGetTheBestNumbersTest() { foreach (Enums.LotteryType lt in (Enums.LotteryType[])Enum.GetValues(typeof(Enums.LotteryType))) { var lh = new LotteryHandler(lt, "Whem", false, false); lh.CalculateNumbers(Enums.TypesOfDrawn.All, Enums.GenerateType.GetTheBest, 1000); Assert.True(lh.LotteryModels != null); } }
public void UseGoogleSheetTest() { foreach (Enums.LotteryType lt in (Enums.LotteryType[])Enum.GetValues(typeof(Enums.LotteryType))) { var lh = new LotteryHandler(lt, "Whem", true, true); lh.UseGoogleSheet(false); Assert.True(lh.GoogleSheetData == null); lh.UseGoogleSheet(true); Assert.True(lh.GoogleSheetData != null); } }
public void CalcTheFiveMostCommonNumbersTest() { foreach (Enums.LotteryType lt in (Enums.LotteryType[])Enum.GetValues(typeof(Enums.LotteryType))) { var lh = new LotteryHandler(lt, "Whem", false, false); lh.CalculateNumbers(Enums.TypesOfDrawn.ByAverageRandoms, Enums.GenerateType.EachByEach, 20); lh.CalculateNumbers(Enums.TypesOfDrawn.ByDistributionBasedCurrentDraw, Enums.GenerateType.Unique, 1); Assert.True( lh.LotteryModels.Count(x => x.Message == Enums.TypesOfDrawn.ByDistributionBasedCurrentDraw) > 0); } }
public void ByOccurrenceExecuteTest() { foreach (Enums.LotteryType lt in (Enums.LotteryType[])Enum.GetValues(typeof(Enums.LotteryType))) { var testEnum = Enums.TypesOfDrawn.ByOccurrence; var lh = new LotteryHandler(lt, "Whem", false, false); lh.CalculateNumbers(testEnum, Enums.GenerateType.EachByEach, 20); Assert.True( lh.LotteryModels.Count(x => x.Message == testEnum) > 0); } }
public MainWindowViewModel() { // GoNext = ReactiveCommand.CreateFromObservable(() => Router.Navigate.Execute(new LoginViewModel(this))); Lottery = new LotteryHandler(Enums.LotteryType.TheSixNumberDraw, "Whem", true, true); LotteryHandler.LotteryModelEvent += LotteryHandlerOnLotteryModelEvent; Lottery.CalculateNumbers(Enums.TypesOfDrawn.All, Enums.GenerateType.EachByEach, 2); Lottery.CalculateNumbers(Enums.TypesOfDrawn.All, Enums.GenerateType.GetTheBest, 1000); Lottery.CalculateNumbers(Enums.TypesOfDrawn.All, Enums.GenerateType.MostCommonSeries, 1000); Lottery.UseEarlierWeekPercentageForNumbersDraw(Enums.TypesOfDrawn.Calculated); Lottery.CalculateNumbers(Enums.TypesOfDrawn.ByDistributionBasedCurrentDraw, Enums.GenerateType.Unique, 1); Lottery.SaveDataToGoogleSheet(); }
public void UseEarlierWeekPercentageForNumbersDrawTest() { foreach (Enums.LotteryType lt in (Enums.LotteryType[])Enum.GetValues(typeof(Enums.LotteryType))) { var lh = new LotteryHandler(lt, "Whem", true, true); lh.CalculateNumbers(Enums.TypesOfDrawn.ByAverageRandoms, Enums.GenerateType.EachByEach, 20); try { lh.UseEarlierWeekPercentageForNumbersDraw(Enums.TypesOfDrawn.Calculated); var test = lh.LotteryModels.Count(x => x.Message == Enums.TypesOfDrawn.Calculated); Assert.True(test > 0); } catch (Exception e) { Assert.True(e.Message != null); } } }
public MainWindow() { InitializeComponent(); try { Lottery = new LotteryHandler(Enums.LotteryType.TheFiveNumberDraw, "Whem", false, false); LottoListResults dbl = null; if (CreateDatabase(Lottery.lotteryCollection, out dbl)) { var deep = 20; var network = new BasicNetwork(); network.AddLayer( new BasicLayer(null, true, 5 * deep)); network.AddLayer( new BasicLayer( new ActivationSigmoid(), true, 4 * 5 * deep)); network.AddLayer( new BasicLayer( new ActivationSigmoid(), true, 4 * 5 * deep)); network.AddLayer( new BasicLayer( new ActivationLinear(), true, 5)); network.Structure.FinalizeStructure(); var learningInput = new double[deep][]; for (int i = 0; i < deep; ++i) { learningInput[i] = new double[deep * 5]; for (int j = 0, k = 0; j < deep; ++j) { var idx = 2 * deep - i - j; LotteryResult data = dbl[idx]; learningInput[i][k++] = (double)data.V1; learningInput[i][k++] = (double)data.V2; learningInput[i][k++] = (double)data.V3; learningInput[i][k++] = (double)data.V4; learningInput[i][k++] = (double)data.V5; } } var learningOutput = new double[deep][]; for (int i = 0; i < deep; ++i) { var idx = deep - 1 - i; var data = dbl[idx]; learningOutput[i] = new double[5] { (double)data.V1, (double)data.V2, (double)data.V3, (double)data.V4, (double)data.V5 }; } var trainingSet = new BasicMLDataSet( learningInput, learningOutput); var train = new ResilientPropagation( network, trainingSet); train.NumThreads = Environment.ProcessorCount; START: network.Reset(); RETRY: var step = 0; do { train.Iteration(); Console.WriteLine("Train Error: {0}", train.Error); ++step; }while (train.Error > 0.001 && step < 20); var passedCount = 0; for (var i = 0; i < deep; ++i) { var should = new LotteryResult(learningOutput[i]); var inputn = new BasicMLData(5 * deep); Array.Copy( learningInput[i], inputn.Data, inputn.Data.Length); var comput = new LotteryResult( ((BasicMLData)network. Compute(inputn)).Data); var passed = should.ToString() == comput.ToString(); if (passed) { Console.ForegroundColor = ConsoleColor.Green; ++passedCount; } else { Console.ForegroundColor = ConsoleColor.Red; } Console.WriteLine("{0} {1} {2} {3}", should.ToString().PadLeft(17, ' '), passed ? "==" : "!=", comput.ToString().PadRight(17, ' '), passed ? "PASS" : "FAIL"); Console.ResetColor(); } var input = new BasicMLData(5 * deep); for (int i = 0, k = 0; i < deep; ++i) { var idx = deep - 1 - i; var data = dbl[idx]; input.Data[k++] = (double)data.V1; input.Data[k++] = (double)data.V2; input.Data[k++] = (double)data.V3; input.Data[k++] = (double)data.V4; input.Data[k++] = (double)data.V5; } var perfect = dbl[0]; var predict = new LotteryResult( ((BasicMLData)network.Compute(input)).Data); Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine("Predict: {0}", predict); Console.ResetColor(); if (predict.IsOut()) { goto START; } var t = passedCount < (deep * (double)9 / (double)10); var isvalid = predict.IsValid(); if (t || !isvalid) { goto RETRY; } Console.WriteLine("Press any key for close..."); } } catch (Exception exception) { Console.WriteLine(exception.ToString()); } finally { } }
public void GetWeeksInYearTest() { Assert.True(LotteryHandler.GetWeeksInYear() > 0); }