Ejemplo n.º 1
0
        private void VagrantWrapper_OnOutputMessageReceived(object _, VagrantMessageEventHandler e)
        {
            this.SafeInvoke(() =>
            {
                if (string.IsNullOrEmpty(e.Message))
                {
                    return;
                }

                //非同期なのでWaitForExitが終わってからここが書かれるケースもある
                consoleTextBox.HideSelection = false;
                consoleTextBox.AppendText(e.Message + Environment.NewLine);

                var vagrantData = new VagrantData();
                if (vagrantData.GetVagrantDataParseCommandLine(e.Message))
                {
                    UpdaetVagrantData(vagrantData);
                }
                var vagrantBoxData = new VagrantBoxData();
                if (vagrantBoxData.GetVagrantBoxDataParseCommandLine(e.Message))
                {
                    UpdaetVagrantBoxData(vagrantBoxData);
                }
                removeButton.Enabled = (_vagrantBoxDatas.Count > 0);
                initButton.Enabled   = (_vagrantBoxDatas.Count > 0);
            });
        }
Ejemplo n.º 2
0
        public void VagrantDataの追加処理()
        {
            var data = new VagrantData();
            data.Name = "default";
            _vagrantDatas.Add(data);

            Assert.IsTrue(_vagrantDatas[0].Name == data.Name);
        }
Ejemplo n.º 3
0
        private void UpdaetVagrantData(VagrantData vagrantData)
        {
            //既に名前があれば更新、なければ追加
            var hit = _vagrantDatas.SingleOrDefault(v => v.Name == vagrantData.Name);

            if (hit != null)
            {
                hit.Status   = vagrantData.Status;
                hit.Provider = vagrantData.Provider;
                SetStatus(hit.Status);
            }
            else
            {
                _vagrantDatas.Add(vagrantData);
                SetStatus(vagrantData.Status);
            }
            vagrantDataGridView.Invalidate();
            vagrantDataGridView.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);
        }
Ejemplo n.º 4
0
        private void VagrantWrapper_OnOutputMessageReceived(object _, VagrantMessageEventHandler e)
        {
            this.SafeInvoke(() =>
            {
                if (string.IsNullOrEmpty(e.Message))
                {
                    return;
                }

                //非同期なのでWaitForExitが終わってからここが書かれるケースもある
                consoleTextBox.HideSelection = false;
                consoleTextBox.AppendText(e.Message + Environment.NewLine);

                var vagrantData = new VagrantData();
                if (vagrantData.GetVagrantDataParseCommandLine(e.Message))
                {
                    UpdaetVagrantData(vagrantData);
                }
                var vagrantBoxData = new VagrantBoxData();
                if (vagrantBoxData.GetVagrantBoxDataParseCommandLine(e.Message))
                {
                    UpdaetVagrantBoxData(vagrantBoxData);
                }
                removeButton.Enabled = (_vagrantBoxDatas.Count > 0);
                initButton.Enabled = (_vagrantBoxDatas.Count > 0);
            });
        }
Ejemplo n.º 5
0
 private void UpdaetVagrantData(VagrantData vagrantData)
 {
     //既に名前があれば更新、なければ追加
     var hit = _vagrantDatas.SingleOrDefault(v => v.Name == vagrantData.Name);
     if (hit != null)
     {
         hit.Status = vagrantData.Status;
         hit.Provider = vagrantData.Provider;
         SetStatus(hit.Status);
     }
     else
     {
         _vagrantDatas.Add(vagrantData);
         SetStatus(vagrantData.Status);
     }
     vagrantDataGridView.Invalidate();
     vagrantDataGridView.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);
 }
Ejemplo n.º 6
0
 public void 適当な文字列を渡してパースに失敗()
 {
     var data = new VagrantData();
     Assert.IsTrue(data.GetVagrantDataParseCommandLine("a") == false);
 }
Ejemplo n.º 7
0
 public void ちゃんとした文字列でもprovider名が違ったらパースに失敗()
 {
     var data = new VagrantData();
     Assert.IsTrue(data.GetVagrantDataParseCommandLine("a (b) ") == false);
 }
Ejemplo n.º 8
0
 public void ちゃんとした文字列でprovider名がvirtualboxの時だけ成功()
 {
     var data = new VagrantData();
     Assert.IsTrue(data.GetVagrantDataParseCommandLine("HogeName Status (virtualbox) "));
 }