Exemple #1
0
        public void TestJournalStarScan1()
        {
            string       line   = @"{ ""timestamp"":""2016-10-27T08:51:23Z"", ""event"":""Scan"", ""BodyName"":""Vela Dark Region FG-Y d3"", ""DistanceFromArrivalLS"":0.000000, ""StarType"":""K"", ""StellarMass"":0.960938, ""Radius"":692146368.000000, ""AbsoluteMagnitude"":5.375961, ""Age_MY"":230, ""SurfaceTemperature"":5108.000000, ""RotationPeriod"":393121.093750, ""Rings"":[ { ""Name"":""Vela Dark Region FG-Y d3 A Belt"", ""RingClass"":""eRingClass_MetalRich"", ""MassMT"":1.2262e+10, ""InnerRad"":1.2288e+09, ""OuterRad"":2.3812e+09 } ] }";
            List <Event> events = JournalMonitor.ParseJournalEntry(line);

            Assert.IsTrue(events.Count == 1);

            StarScannedEvent theEvent = (StarScannedEvent)events[0];

            Assert.AreEqual(230, theEvent.age);
            Assert.IsNull(theEvent.eccentricity);
            Assert.AreEqual("Vela Dark Region FG-Y d3", theEvent.name);
            Assert.IsNull(theEvent.orbitalperiod);
            Assert.AreEqual(692146368.000000M, theEvent.radius);
            Assert.IsNull(theEvent.semimajoraxis);
            Assert.AreEqual(0.960938, (double)theEvent.solarmass, 0.001);
            Assert.AreEqual("K", theEvent.stellarclass);
            Assert.AreEqual(5108, theEvent.temperature);
            // Stellar extras
            Assert.AreEqual("yellow-orange", theEvent.chromaticity);
            Assert.AreEqual(50, theEvent.massprobability);
            Assert.AreEqual(51, theEvent.radiusprobability);
            Assert.AreEqual(58, theEvent.tempprobability);
            Assert.AreEqual(7, theEvent.ageprobability);
        }
 public void TestStarSol()
 {
     StarScannedEvent scan             = new StarScannedEvent(DateTime.Now, "Sol", "G", 1, 1, 4.83M, 5400000000, 300, 0, 10, 10, 0, 0, 0, 0, null);
     decimal          solLuminosity    = StarClass.luminosity(scan.absolutemagnitude);
     StarClass        starClass        = StarClass.FromName(scan.stellarclass);
     decimal          massChance       = starClass.stellarMassCP(scan.solarmass);
     decimal          radiusChance     = starClass.stellarRadiusCP(scan.radius);
     decimal          luminosityChance = starClass.luminosityCP(solLuminosity);
 }
        public void TestJournalStarScan2()
        {
            string           line     = @"{ ""timestamp"":""2016-10-28T12:07:09Z"", ""event"":""Scan"", ""BodyName"":""Col 285 Sector CG-X d1-44"", ""DistanceFromArrivalLS"":0.000000, ""StarType"":""TTS"", ""StellarMass"":0.808594, ""Radius"":659162816.000000, ""AbsoluteMagnitude"":6.411560, ""Age_MY"":154, ""SurfaceTemperature"":4124.000000, ""RotationPeriod"":341417.281250, ""Rings"":[ { ""Name"":""Col 285 Sector CG-X d1-44 A Belt"", ""RingClass"":""eRingClass_Rocky"", ""MassMT"":1.1625e+13, ""InnerRad"":1.0876e+09, ""OuterRad"":2.4192e+09 } ] }";
            StarScannedEvent theEvent = (StarScannedEvent)JournalMonitor.ParseJournalEntry(line);

            Assert.IsNotNull(theEvent);
            Assert.AreEqual(theEvent.radius, (decimal)659162816.0);
            Assert.AreEqual(theEvent.solarradius, StarClass.solarradius((decimal)659162816.000000));
            Assert.AreEqual(0.94775, (double)theEvent.solarradius, 0.01);
        }