Exemplo n.º 1
0
        public DeserializeTest(string filename)
        {
            XMLDeserializer xml = new XMLDeserializer(filename, true);
            StellarObject   obj = xml.ParseXML();

            printMeasurements(obj);
            Serializer.writeToXML("test2.xml", (SolarSystem)obj);
        }
        public void XMLDeserializer_NullValues_ThrowsFileNotFoundException()
        {
            Assert.Throws <ArgumentNullException>(() =>
            {
                XMLDeserializer sut = new XMLDeserializer();

                var result = sut.Deserialize(null);
            }, "ArgumentNullException Thrown");
        }
Exemplo n.º 3
0
        public void CheckParseXML()
        {
            XMLDeserializer deserializer = new XMLDeserializer(filePath);
            StellarObject   generated    = deserializer.ParseXML();

            Assert.AreEqual(true, generated.measurements.ContainsKey("magB"));
            Assert.AreEqual(5.74, (double)generated.measurements["magB"].getValue().value);
            Assert.AreEqual(0.02, (double)generated.measurements["magB"].getValue().errorPlus);
            Assert.AreEqual(0.03, (double)generated.measurements["magB"].getValue().errorMinus);

            Assert.AreEqual(true, generated.measurements.ContainsKey("magJ"));
            Assert.AreEqual(2.943, (double)generated.measurements["magJ"].getValue().value);

            Assert.AreEqual(true, generated.measurements.ContainsKey("spectraltype"));
            Assert.AreEqual("G8 III", (string)generated.measurements["spectraltype"].getValue().value);
        }
Exemplo n.º 4
0
        public string parserReturn(string filePath)
        {
            XmlDocument doc = new XmlDocument();

            doc.Load(filePath);

            String xmlJobString = doc.OuterXml;

            XMLValidator validator = new XMLValidator();

            validator.XmlValidate(filePath);

            XMLDeserializer serializer = new XMLDeserializer();

            serializer.Deserialize(xmlJobString.ToString());


            return(null);
        }
Exemplo n.º 5
0
        public void CheckWriteToXML()
        {
            // Create new XML file
            Serializer.writeToXML(filePathOut, solarSystem);

            // Compare it with an XML file known to have the same contents as the variable solarSystem
            XMLDeserializer deserializer = new XMLDeserializer(filePathIn);
            StellarObject   generated    = deserializer.ParseXML();

            Assert.AreEqual(true, generated.measurements.ContainsKey("magB"));
            Assert.AreEqual(5.74, (double)generated.measurements["magB"].getValue().value);
            Assert.AreEqual(0.02, (double)generated.measurements["magB"].getValue().errorPlus);
            Assert.AreEqual(0.03, (double)generated.measurements["magB"].getValue().errorMinus);

            Assert.AreEqual(true, generated.measurements.ContainsKey("magJ"));
            Assert.AreEqual(2.943, (double)generated.measurements["magJ"].getValue().value);

            Assert.AreEqual(true, generated.measurements.ContainsKey("spectraltype"));
            Assert.AreEqual("G8 III", (string)generated.measurements["spectraltype"].getValue().value);
        }
Exemplo n.º 6
0
        public async Task updateWorker()
        {
            while (updateList.Count != 0)
            {
                token.ThrowIfCancellationRequested();
                List <StellarObject> system = dequeueUpdate();
                StellarObject        update = system[0];

                Task <String> xmlTask = rm.getFile("systems/" + update.names[0].MeasurementValue + ".xml");

                //List<String> lastUpdates = new List<string>();
                token.ThrowIfCancellationRequested();
                try
                {
                    String xml = await xmlTask;
                    if (xml != null)
                    {
                        Console.WriteLine("Found existing system: {0} in OEC. Proceed with update.", update.names[0].MeasurementValue);
                        Logger.WriteLine("Found existing system: {0} in OEC. Proceed with update.", update.names[0].MeasurementValue);
                        XMLDeserializer xmld     = new XMLDeserializer(xml, false);
                        StellarObject   original = xmld.ParseXML();
                        if (!needUpdate(original.getLastUpdate(), system))
                        {
                            Console.WriteLine("Appears that system: {0} does not to be updated continuing.", update.names[0].MeasurementValue);
                            Logger.WriteLine("Appears that system: {0} does not to be updated continuing.", update.names[0].MeasurementValue);
                            continue;
                        }
                        String sources = "";
                        foreach (StellarObject planet in system)
                        {
                            PlanetMerger.Merge(planet, original);
                            sources += String.Format("[{0}]({1})\n", planet.children[0].names[0].MeasurementValue, planet.Source);
                        }
                        original.isNew  = false;
                        original.Source = sources;
                        commitQueue.Enqueue(original);
                    }
                    else
                    {
                        Console.WriteLine("Could not find existing system: {0} in OEC. Proceed with addition.", update.names[0].MeasurementValue);
                        Logger.WriteLine("Could not find existing system: {0} in OEC. Proceed with addition.", update.names[0].MeasurementValue);
                        StellarObject baseSys = system[0];
                        system.Remove(baseSys);
                        String sources = "";
                        sources += String.Format("[{0}]({1})\n", baseSys.children[0].names[0].MeasurementValue, baseSys.Source);
                        foreach (StellarObject otherPlanet in system)
                        {
                            PlanetMerger.Merge(otherPlanet, baseSys);
                            sources += String.Format("[{0}]({1})\n", otherPlanet.children[0].names[0].MeasurementValue, otherPlanet.Source);
                        }
                        baseSys.isNew  = true;
                        baseSys.Source = sources;
                        commitQueue.Enqueue(baseSys);
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine("Failed to create update: " + ex.Message);
                    Console.WriteLine(ex.StackTrace);
                    Logger.WriteLine("Failed to create update: " + ex.Message);
                    Logger.WriteLine(ex.StackTrace);
                }
            }
            Interlocked.Add(ref finished, 1);
        }
Exemplo n.º 7
0
 public void CheckDeserializerConstructor()
 {
     XMLDeserializer deserializer = new XMLDeserializer(filePath);
 }