public void Init()
 {
     Country[] countries;
     countries = CountryParser.GetCountries(URL);
     USA       = countries[0];
     UK        = countries[9];
 }
        public void CountryParse_CasesFromJapan_Pass(string call)
        {
            CountryParser countries = new CountryParser(@"C:\Users\mike\Documents\GitHub\NM20\NM2O_Spot_Analyzer\NM2O_Spot_Analyzer\bin\Debug\N1MM_CountryList.dat");

            ICountryZone a = countries.CheckCall(call);

            Assert.AreEqual("Japan", a.Country);
        }
        public void CountryParseSimple()
        {
            CountryParser countries = new CountryParser(@"C:\Users\mike\Documents\GitHub\NM20\NM2O_Spot_Analyzer\NM2O_Spot_Analyzer\bin\Debug\N1MM_CountryList.dat");

            ICountryZone a = countries.CheckCall("BY8A1");

            Assert.AreEqual(false, true);
        }
Esempio n. 4
0
        static void ProcessCulture2()
        {
            CountryParser parser = new CountryParser();
            CountryProcessingToDatabase dbProcessor = new CountryProcessingToDatabase();
            var cultures = parser.ParseCultureFromWebsite();

            dbProcessor.InsertCultureforCountries(cultures);
        }
        public void Init()
        {
            Country[] countries;
            countries = CountryParser.GetCountries(URL);

            BSTCountry = new CountryBSTree();
            countries.ToList().ForEach(c => BSTCountry.Create(c));
        }
Esempio n. 6
0
        static void Intial()
        {
            CountryParser parser = new CountryParser();
            CountryProcessingToDatabase dbProcessor = new CountryProcessingToDatabase();

            parser.InsertAllLanguageThenCountries("allLanguages.json", "countryjson.json");
            ProcessCulture2();
            dbProcessor.InsertPageNumbersInCountryTable();
        }
Esempio n. 7
0
        public void Parse_WhiteSpaceText_Equal()
        {
            //Arrange
            var          countryParser  = new CountryParser();
            const string textFromSource = "  ";

            //Act
            countryParser.Parse(textFromSource);

            //Assert => ExpectedException Annotation
        }
Esempio n. 8
0
        public void Parse_EmptyText_Equal()
        {
            //Arrange
            var countryParser  = new CountryParser();
            var textFromSource = string.Empty;

            //Act
            countryParser.Parse(textFromSource);

            //Assert => ExpectedException Annotation
        }
        public void Init()
        {
            Country[] countries;
            countries = CountryParser.GetCountries(URL);

            USA    = countries[0];
            Canada = countries[1];
            UK     = countries[8];
            Russia = countries[12];
            China  = countries[18];

            BTCountry                           = new BinaryTree <string, Country>(USA.Name, USA);
            BTCountry.Root.Left                 = new Node <string, Country>(Canada.Name, Canada);
            BTCountry.Root.Left.Right           = new Node <string, Country>(UK.Name, UK);
            BTCountry.Root.Left.Right.Left      = new Node <string, Country>(Russia.Name, Russia);
            BTCountry.Root.Left.Right.Left.Left = new Node <string, Country>(China.Name, China);
        }
Esempio n. 10
0
        public void Init()
        {
            Country[] countries;
            countries = CountryParser.GetCountries(URL);

            USA    = countries[0];
            Canada = countries[1];
            UK     = countries[8];
            Russia = countries[12];
            China  = countries[18];

            AVLCountry = new AVLTree <string, Country>(USA.Name, USA);
            AVLCountry.Create(Canada.Name, Canada);
            AVLCountry.Create(UK.Name, UK);
            AVLCountry.Create(Russia.Name, Russia);
            AVLCountry.Create(China.Name, China);
        }
Esempio n. 11
0
        public void Parse_JsonLowerCaseText_NotEqual()
        {
            //Arrange
            var          countryParser  = new CountryParser();
            const string textFromSource = "[\r\n  {\r\n    \"name\": \"afghanistan\",\r\n    \"code\": \"AF\"\r\n  },\r\n  {\r\n    \"name\": \"Albania\",\r\n    \"code\": \"AL\"\r\n  },\r\n  {\r\n    \"name\": \"Algeria\",\r\n    \"code\": \"DZ\"\r\n  },\r\n  {\r\n    \"name\": \"American Samoa\",\r\n    \"code\": \"AS\"\r\n  }\r\n]";

            //Act
            var actual = countryParser.Parse(textFromSource);

            //Assert
            var expected = new Dictionary <string, string>
            {
                { "Afghanistan", "AF" },
                { "Albania", "AL" },
                { "Algeria", "DZ" },
                { "American Samoa", "AS" },
            };

            CollectionAssert.AreNotEqual(expected, actual);
        }
Esempio n. 12
0
 public void Init()
 {
     countries = CountryParser.GetCountries(URL);
 }
Esempio n. 13
0
        static void ProcessCountries()
        {
            CountryParser parser = new CountryParser();
            CountryProcessingToDatabase dbProcessor = new CountryProcessingToDatabase();

            string fileloc = "Log.txt";

            //-----
            Console.Write("Input Country 2 Digit Alpha Code:");
            var inputCountryCode = Console.ReadLine();
            var countryX         = dbProcessor.Countries.FirstOrDefault(n => n.Alpha2Code == inputCountryCode);
            int countryid        = 0;

            if (countryX != null)
            {
                countryid = countryX.CountryID;
            }
            var countries = dbProcessor.Countries.Where(n => n.CountryID >= countryid).ToList();

            foreach (var country in countries)
            {
                //string url = "http://www.geonames.org/search.html?q=" + country.CountryName;
                //string url = "http://www.geonames.org/advanced-search.html?q=&country=BD&featureClass=A&continentCode=";
                string url = "http://www.geonames.org/advanced-search.html?q=&country=" + country.Alpha2Code + "&featureClass=A";
                File.AppendAllText(fileloc, DateTime.Now + " :: " + url + "\n");
                bool isFeatured = true;
                Console.WriteLine(url);

                int length = 101;//183189;//183189
                length = parser.GetPagesLength(url, isFeatured);

                Console.WriteLine("Length : " + length);
                //length = 1;
                if (length >= 101)
                {
                    length = 101;
                }
                for (int i = 0; i < length; i++)
                {
                    Console.Write("Page : " + (i + 1) + " downloading...");
                    var items = parser.ParseHTML(url, i, 0, -1, true, country);

                    //var items = parser.ParseHTML(url, i, 24, 1);
                    Console.Write(" downloaded... processing...");
                    if (items != null)
                    {
                        foreach (var item in items)
                        {
                            //DisplayCountrytemp.Print(item, -1);
                            dbProcessor.EntryWholeCountryFromCounrtyTemp(item);
                        }
                        Console.Write(" done.\n");
                        File.AppendAllText(fileloc, DateTime.Now + " :: Done Page ::" + (i + 1) + "\n");
                    }
                    else
                    {
                        Console.Write(" none found.\n");
                        File.AppendAllText(fileloc, DateTime.Now + " :: Error not found ::" + url + " ; page no :" + (i + 1) + "\n");
                    }
                }
            }


            dbProcessor.SaveErrorList();
        }
Esempio n. 14
0
        static void TimeZonesProcess()
        {
            CountryParser parser = new CountryParser();

            parser.InsertAllTimeZones("countryjson.json");
        }
Esempio n. 15
0
        static void RunCountryZoneAnalysis()
        {
            List <string> callAnalysis          = File.ReadAllLines(@"C:\Users\mike\Documents\GitHub\NM20\NM2O_Spot_Analyzer\NM2O_Spot_Analyzer\Call_Analysis.csv").ToList();
            CountryParser parser                = new CountryParser(@"C:\Users\mike\Documents\GitHub\NM20\NM2O_Spot_Analyzer\NM2O_Spot_Analyzer\bin\Debug\N1MM_CountryList.dat");
            List <CountryZoneAnalysis> analyses = new List <CountryZoneAnalysis>();

            foreach (var call in callAnalysis)
            {
                string[] callinfo = call.Split(',');

                try
                {
                    var parsed = parser.CheckCall(callinfo[0]);

                    if (!analyses.Exists(x => x.Label == parsed.Country))
                    {
                        analyses.Add(new CountryZoneAnalysis(parsed.Country, call, CountryZoneAnalysis.Type.Country));
                    }
                    else
                    {
                        //var a = analyses.Where(x => x.Label == parsed.Country);
                        analyses.Where(x => x.Label == parsed.Country).First().Add(call);
                    }

                    if (!analyses.Exists(x => x.Label == parsed.CQZone.ToString()))
                    {
                        analyses.Add(new CountryZoneAnalysis(parsed.CQZone.ToString(), call, CountryZoneAnalysis.Type.Zone));
                    }
                    else
                    {
                        analyses.Where(x => x.Label == parsed.CQZone.ToString()).First().Add(call);
                    }
                    //Console.WriteLine($"{callinfo[0]} from {parsed.Country} zone {parsed.CQZone}");
                }
                catch (Exception)
                {
                    Console.WriteLine($"Unable to parse {callinfo[0]}");
                }
            }

            var o = analyses.GroupBy(x => x.CZType)
                    .Select(t => new
            {
                CZType            = t.Key,
                TotalHours        = t.Sum(x => x.TotalHours),
                OnePointEightMHz  = t.Sum(x => x.OnePointEightMHz),
                ThreePointFiveMHz = t.Sum(x => x.ThreePointFiveMHz),
                SevenMHz          = t.Sum(x => x.SevenMHz),
                FourteenMHz       = t.Sum(x => x.FourteenMHz),
                TwentyOneMHz      = t.Sum(x => x.TwentyOneMHz),
                TwentyEightMHz    = t.Sum(x => x.TwentyEightMHz),
                None = t.Sum(x => x.None),
            })
                    .First();         //We only need one, because they will always be equal.

            List <string> filecontents = new List <string>()
            {
                "CZType,Label,TotalHours,OnePointEightMHz,ThreePointFiveMHz,SevenMHz,FourteenMHz,TwentyOneMHz,TwentyEightMHz,None"
            };

            filecontents.Add($"Totals,Totals,{o.TotalHours},{o.OnePointEightMHz},{o.ThreePointFiveMHz},{o.SevenMHz},{o.FourteenMHz},{o.TwentyOneMHz},{o.TwentyEightMHz},{o.None}");
            foreach (var item in analyses.OrderBy(x => x.ToString()))
            {
                filecontents.Add(item.ToString());
            }

            File.WriteAllLines(@"C:\Users\mike\Documents\GitHub\NM20\NM2O_Spot_Analyzer\NM2O_Spot_Analyzer\CountryZone_Analysis.csv", filecontents.ToArray());
        }