Inheritance: WeaponEffect
Esempio n. 1
0
        public void TC002_TestDrainShutdown()
        {
            if (File.Exists("Jobs\\win_dea\\drain.bat"))
            {
                File.Delete("Jobs\\win_dea\\drain.bat");
            }

            File.Move("Jobs\\win_dea\\drain_shutdown.bat", "Jobs\\win_dea\\drain.bat");
            //Arrange
            string fileContent = File.ReadAllText("settings.json");

            Config.Setup(JsonConvert.DeserializeObject(fileContent), false);
            string  argsString = "[\"shutdown\"]";
            dynamic args       = JsonConvert.DeserializeObject(argsString);

            //ConfigBlobStore
            Config.Configure         = true;
            Config.BlobstoreProvider = Config.Settings["blobstore"]["provider"].Value;
            Config.BlobstoreOptions  = Config.Settings["blobstore"]["options"];
            Config.Nats = new NatsClient.Reactor();
            Uri natsUri = new Uri(Config.MessageBus);

            Config.Nats.Start(natsUri);
            Monit.GetInstance().Start();

            //Act
            Drain  drain       = new Drain();
            object drainResult = drain.Process(args);

            //Assert
            Assert.AreEqual(drainResult.ToString(), "0");
        }
Esempio n. 2
0
        public void TC003_TestDrainUpdate()
        {
            if (File.Exists("Jobs\\win_dea\\drain.bat"))
            {
                File.Delete("Jobs\\win_dea\\drain.bat");
            }

            File.Move("Jobs\\win_dea\\drain_update.bat", "Jobs\\win_dea\\drain.bat");

            //Arrange
            string fileContent = File.ReadAllText("settings.json");

            Config.Setup(JsonConvert.DeserializeObject(fileContent), false);
            string  argsString = "[\"update\",{\"deployment\":\"uhuru-cf-mitza\",\"release\":{\"name\":\"uhuru-cf\",\"version\":\"86.11-dev\"},\"job\":{\"name\":\"win_dea\",\"release\":\"uhuru-cf\",\"template\":\"win_dea\",\"version\":\"0.2-dev\",\"sha1\":\"cea000d7e5611f3fff6ddbf46163b6a4b025664b\",\"blobstore_id\":\"c9034ac9-ffc1-4aff-b17a-9be8533a6bfa\"},\"index\":0,\"networks\":{\"default\":{\"ip\":\"10.0.3.137\",\"netmask\":\"255.255.0.0\",\"cloud_properties\":{\"name\":\"VM Network\"},\"default\":[\"dns\",\"gateway\"],\"dns\":[\"10.0.0.10\",\"8.8.8.8\"],\"gateway\":\"10.0.0.1\"}},\"resource_pool\":{\"name\":\"windowspool\",\"cloud_properties\":{\"ram\":1000,\"cpu\":1,\"disk\":10192},\"stemcell\":{\"name\":\"test-stemcell\",\"version\":\"0.1.4\"}},\"packages\":{\"win_dea1\":{\"name\":\"win_dea\",\"version\":\"0.1-dev.1\",\"sha1\":\"8a90c0c416601e90bbe6a177d79d1efc2e47d526\",\"blobstore_id\":\"ba697254-60d5-4360-816d-e4dd5d3b8d02\"}},\"persistent_disk\":0,\"configuration_hash\":\"f7452dda13a19bc46a15d725e0151007ae194e2b\",\"properties\":{\"domain\":\"vcap.me\",\"env\":{},\"networks\":{\"apps\":\"default\",\"management\":\"default\"},\"nats\":{\"user\":\"nats\",\"password\":\"nats\",\"address\":\"10.0.3.136\",\"port\":4222},\"ccdb\":{\"user\":\"ccadmin\",\"password\":\"ccadmin\",\"address\":\"10.0.3.136\",\"port\":5524,\"dbname\":\"appcloud\",\"databases\":[{\"tag\":\"cc\",\"name\":\"appcloud\"}],\"roles\":[{\"tag\":\"admin\",\"name\":\"ccadmin\",\"password\":\"ccadmin\"}]},\"cc\":{\"srv_api_uri\":\"http://api.vcap.me\",\"password\":\"aaauuLaap44jadlas2l312lk\",\"token\":\"aaaf4eaa8c1758f66d5cb7adcb24adb9d7\",\"use_nginx\":false,\"allow_registration\":true,\"uaa\":{\"enabled\":false,\"resource_id\":\"cloud_controller\",\"client_secret\":\"aaaNxRJcx6cpv\"},\"admins\":[\"[email protected]\"]},\"router\":{\"status\":{\"port\":8080,\"user\":\"vcap\",\"password\":\"vcap\"}},\"dashboard\":{\"users\":[[\"dash\",\"admin\"]]},\"dea\":{\"max_memory\":4096},\"nfs_server\":{\"address\":\"10.0.3.136\",\"network\":\"10.0.0.0/16\"},\"opentsdb\":{\"address\":\"10.0.3.136\",\"port\":4242},\"service_plans\":{\"mysql\":{\"free\":{\"job_management\":{\"high_water\":1400,\"low_water\":100},\"configuration\":{\"allow_over_provisioning\":true,\"capacity\":200,\"max_db_size\":128,\"max_long_query\":3,\"max_long_tx\":0,\"max_clients\":20}}},\"postgresql\":{\"free\":{\"job_management\":{\"high_water\":1400,\"low_water\":100},\"configuration\":{\"capacity\":200,\"max_db_size\":128,\"max_long_query\":3,\"max_long_tx\":30,\"max_clients\":20}}},\"mongodb\":{\"free\":{\"job_management\":{\"high_water\":3000,\"low_water\":100},\"configuration\":{\"allow_over_provisioning\":true,\"capacity\":200,\"quota_files\":4,\"max_clients\":500}}},\"redis\":{\"free\":{\"job_management\":{\"high_water\":1400,\"low_water\":100},\"configuration\":{\"capacity\":200,\"max_memory\":16,\"max_swap\":32,\"max_clients\":500}}},\"rabbit\":{\"free\":{\"job_management\":{\"low_water\":100,\"high_water\":1400},\"configuration\":{\"max_memory_factor\":0.5,\"max_clients\":512,\"capacity\":200}}}},\"mysql_gateway\":{\"check_orphan_interval\":7200,\"token\":\"0xfeedface\"},\"mysql_node\":{\"production\":true,\"password\":\"aaa13djkas\"},\"redis_gateway\":{\"token\":\"0xfeedface\",\"check_orphan_interval\":7200},\"redis_node\":{\"command_rename_prefix\":\"sample\"},\"mongodb_gateway\":{\"check_orphan_interval\":7200,\"token\":\"0xfeedface\"},\"mongodb_node\":{},\"uhurufs_gateway\":{\"check_orphan_interval\":7200,\"token\":\"0xfeedface\"},\"uhurufs_node\":{\"statusport\":12345,\"basedir\":\"c:\\\\vcap\\\\store\\\\uhurufs\",\"capacity\":200},\"rabbit_gateway\":{\"token\":\"AAA430A8BAED490B1240338DA34B10D\"},\"rabbit_node\":{},\"postgresql_gateway\":{\"check_orphan_interval\":7200,\"token\":\"aaaeAh4BXFBXwLrrWJCpQTfeDnaCn7m\"},\"postgresql_node\":{\"production\":true},\"uaa\":{},\"win_dea\":{\"localroute\":\"10.0.3.30\",\"fillerport\":12345}}}]";
            dynamic args       = JsonConvert.DeserializeObject(argsString);

            //ConfigBlobStore
            Config.Configure         = true;
            Config.BlobstoreProvider = Config.Settings["blobstore"]["provider"].Value;
            Config.BlobstoreOptions  = Config.Settings["blobstore"]["options"];
            Config.Nats = new NatsClient.Reactor();
            Uri natsUri = new Uri(Config.MessageBus);

            Config.Nats.Start(natsUri);
            Monit.GetInstance().Start();

            //Act
            Drain  drain       = new Drain();
            object drainResult = drain.Process(args);

            //Assert
            Assert.AreEqual("0", drainResult.ToString());
        }
Esempio n. 3
0
        public void TC001_TestDrainStatus()
        {
            if (File.Exists("Jobs\\win_dea\\drain.bat"))
            {
                File.Delete("Jobs\\win_dea\\drain.bat");
            }

            File.Move("Jobs\\win_dea\\drain_status.bat", "Jobs\\win_dea\\drain.bat");
            //Arrange
            string fileContent = File.ReadAllText("settings.json");

            Config.Setup(JsonConvert.DeserializeObject(fileContent), false);
            string  argsString = "[\"status\"]";
            dynamic args       = JsonConvert.DeserializeObject(argsString);

            //ConfigBlobStore
            Config.Configure         = true;
            Config.BlobstoreProvider = Config.Settings["blobstore"]["provider"].Value;
            Config.BlobstoreOptions  = Config.Settings["blobstore"]["options"];
            Monit.GetInstance().Start();

            //Act
            Drain  drain       = new Drain();
            object drainResult = drain.Process(args);

            //Assert
            Assert.AreEqual("0", drainResult.ToString());
        }
		public void SimpleFlowArrives()
		{
var supply = new WaterSupply();
var pump = new Pump();
var drain = new Drain();
var combinator = new DialyzingFluidFlowCombinator();
pump.PumpSpeed = 7;
combinator.ConnectOutWithIn(supply.MainFlow,pump.MainFlow);
combinator.ConnectOutWithIn(pump.MainFlow, drain.MainFlow);
combinator.CommitFlow();

			var model = new DialyzingFluidFlowModel
			{
				FlowElements = new IComponent[] { supply, pump, drain, combinator }
			};
			
			var simulator = new Simulator(model); //Important: Call after all objects have been created
			simulator.SimulateStep();

			var modelAfterStep = (DialyzingFluidFlowModel) simulator.Model;
			var supplyAfterStep = (WaterSupply)modelAfterStep.Components[0];
			var pumpAfterStep = (Pump)modelAfterStep.Components[1];
			var drainAfterStep = (Drain)modelAfterStep.Components[2];
			pumpAfterStep.MainFlow.Incoming.Backward.CustomSuctionValue.Should().Be(7);
			supplyAfterStep.MainFlow.Outgoing.Forward.Quantity.Should().Be(7);
			drainAfterStep.MainFlow.Incoming.Forward.Quantity.Should().Be(7);
		}
Esempio n. 5
0
        public void SimpleFlowArrives()
        {
            var supply     = new WaterSupply();
            var pump       = new Pump();
            var drain      = new Drain();
            var combinator = new DialyzingFluidFlowCombinator();

            pump.PumpSpeed = 7;
            combinator.ConnectOutWithIn(supply.MainFlow, pump.MainFlow);
            combinator.ConnectOutWithIn(pump.MainFlow, drain.MainFlow);
            combinator.CommitFlow();

            var model = new DialyzingFluidFlowModel
            {
                FlowElements = new IComponent[] { supply, pump, drain, combinator }
            };

            var simulator = new SafetySharpSimulator(model);             //Important: Call after all objects have been created

            simulator.SimulateStep();

            var modelAfterStep  = (DialyzingFluidFlowModel)simulator.Model;
            var supplyAfterStep = (WaterSupply)modelAfterStep.Components[0];
            var pumpAfterStep   = (Pump)modelAfterStep.Components[1];
            var drainAfterStep  = (Drain)modelAfterStep.Components[2];

            pumpAfterStep.MainFlow.Incoming.Backward.CustomSuctionValue.Should().Be(7);
            supplyAfterStep.MainFlow.Outgoing.Forward.Quantity.Should().Be(7);
            drainAfterStep.MainFlow.Incoming.Forward.Quantity.Should().Be(7);
        }
Esempio n. 6
0
        public override int GetHashCode()
        {
            int hash = 1;

            if (MoveID != 0)
            {
                hash ^= MoveID.GetHashCode();
            }
            if (U2 != 0)
            {
                hash ^= U2.GetHashCode();
            }
            if (U3 != 0)
            {
                hash ^= U3.GetHashCode();
            }
            if (U4 != 0)
            {
                hash ^= U4.GetHashCode();
            }
            if (U5 != 0)
            {
                hash ^= U5.GetHashCode();
            }
            if (Type != 0)
            {
                hash ^= Type.GetHashCode();
            }
            if (U7 != 0)
            {
                hash ^= U7.GetHashCode();
            }
            if (U8 != 0)
            {
                hash ^= U8.GetHashCode();
            }
            if (Drain != 0)
            {
                hash ^= Drain.GetHashCode();
            }
            if (Power != 0)
            {
                hash ^= Power.GetHashCode();
            }
            if (Accuracy != 0)
            {
                hash ^= Accuracy.GetHashCode();
            }
            if (U12 != 0)
            {
                hash ^= U12.GetHashCode();
            }
            if (_unknownFields != null)
            {
                hash ^= _unknownFields.GetHashCode();
            }
            return(hash);
        }
Esempio n. 7
0
 void Init()
 {
     activeBalls        = GameObject.Find("BallParent").transform;
     drain              = FindObjectOfType <Drain>();
     drain.BallInDrain += OnBallInDrain;
     ship = FindObjectOfType <Ship>();
     ShipStateMultiBall.MultiBallTriggered += OnMultiBallTriggered;
     ship.Init(settings.ShipStartPos);
     numShipsLeft = settings.StartNumShips;
     for (int i = 0; i < settings.NumMultiBalls + 1; i++)
     {
         Ball _ball = Instantiate <Ball>(settings.BallPrefab);
         _ball.Ship             = ship;
         _ball.transform.parent = ship.transform;
         BallPool.Push(_ball);
     }
     SpawnOnShip(BallPool.Pop());
 }
Esempio n. 8
0
 private void Init()
 {
     shipStatePool        = new ShipStatePool();
     activeBalls          = GameObject.Find("Active Balls").transform;
     drain                = FindObjectOfType <Drain>();
     drain.BallInDrain   += OnBallInDrain;
     PowerUp.PUCollected += OnPUCollected;
     PowerUp.PUDestroyed += OnPUDestroyed;
     ShipStateMultiball.MultiballTriggered += OnMultiballTriggered;
     Block.BlockHit += OnBlockHit;
     ship            = FindObjectOfType <Ship>();
     ship.Init(settings.ShipStartPos);
     ship.SwitchState(shipStatePool.shipStates[(int)PU.None]);
     numShipsLeft = settings.StartNumShips;
     curTimeToPU  = UnityEngine.Random.Range(settings.MinTimeBetweenPUs, settings.MaxTimeBetweenPUs);
     for (int i = 0; i < settings.NumMultiballs + 1; i++)
     {
         Ball ball = Instantiate <Ball>(settings.BallPrefab);
         ball.Ship             = ship;
         ball.transform.parent = ship.transform;
         BallPool.Push(ball);
     }
     SpawnOnShip(BallPool.Pop());
 }
        public void NameModel()
        {
            int i = 0;

            foreach (Pipe pipe in Pipes)
            {
                Pipes[i]      = new Pipe();
                Pipes[i].Name = "Pipe" + i.ToString();
                i++;
            }

            i = 0;
            foreach (Hose hose in Hoses)
            {
                Hoses[i]      = new Hose();
                Hoses[i].Name = "Hose" + i.ToString();
                i++;
            }

            i = 0;
            foreach (Drain drain in Drains)
            {
                Drains[i]      = new Drain();
                Drains[i].Name = "Drain" + i.ToString();
                i++;
            }

            i = 0;
            foreach (Drain vent in Vents)
            {
                Vents[i]      = new Drain();
                Vents[i].Name = "Vent" + i.ToString();
                i++;
            }

            ProcessWater.Name = "ProcessWater";
            V01.Name          = "V01";
            V02.Name          = "V02";
            V03.Name          = "V03";
            V04.Name          = "V04";
            V05.Name          = "V05";
            V06.Name          = "V06";
            V07.Name          = "V07";

            V11.Name = "V11";
            V12.Name = "V12";

            C1.Name  = "C1";
            DI1.Name = "DI1";

            RV1.Name      = "RV1";
            V56.Name      = "V56";
            PHE2.Name     = "PHE2";
            V57.Name      = "V57";
            P3.Name       = "P3";
            UT19_V01.Name = "UT19_V01";
            UT19_V02.Name = "UT19_V02";
            UT19_P1.Name  = "UT19_P1";
            UT19_V03.Name = "UT19_V03";
            UT19_V04.Name = "UT19_V04";
            UT19_V05.Name = "UT19_V05";

            V14.Name  = "V14";
            V23.Name  = "V23";
            CV34.Name = "CV34";
            SV35.Name = "SV35";
            V13.Name  = "V13";
            V21.Name  = "V21";
        }
Esempio n. 10
0
 void OnDrain()
 {
     Drain?.Invoke();
 }
Esempio n. 11
0
 private void OnDrain()
 {
     Drain?.Invoke();
 }