コード例 #1
0
        //////////////////////////////////////////////////////////////////////////
        private void OnLoad(object sender, EventArgs e)
        {
            this.MinimumSize = this.Size;

            AppMgr.Settings.LoadFromXmlFile();
            LoadLayout(AppMgr.Settings);
            LoadSettings(AppMgr.Settings);

            // build menus and toolbars
            ActionStripItem MainMenuDef = DefineMainMenu();

            ActContext.StripBuilder.AddToolStrip(MainMenuDef, MainMenu.Items, true);

            ActionStripItem MainToolbarDef = DefineMainToolbar();

            ActContext.StripBuilder.AddToolStrip(MainToolbarDef, MainToolbar.Items, false);

            ActContext.ActivateObject(ActiveObjectSlot.Application, this);

            ActContext.StripBuilder.SetManagedToolStripsState();

            // handle command-line
            if (Environment.GetCommandLineArgs().Length > 1)
            {
                OpenFile(Environment.GetCommandLineArgs()[1]);
            }
        }
コード例 #2
0
        /// <inheritdoc />
        public override T Invoke(ActContext context)
        {
            if (_Assignee.Body is MemberExpression memberGetExpression)
            {
                var closureExpression = memberGetExpression.Expression as MemberExpression;

                var member = Method != null
                                 ? Expression.Property(closureExpression, Method)
                                 : Expression.Field(closureExpression, Field);

                var lambda = Expression.Lambda(Expression.Assign(member, Expression.Constant(_Value, typeof(T)))).Compile();

                return((T)lambda.DynamicInvoke());
            }

            var methodCall = (MethodCallExpression)_Assignee.Body;
            var args       = new List <Expression>(_Arguments)
            {
                Expression.Constant(_Value)
            };
            var indexerCall = Expression.Call(methodCall.Object, Method, args.ToArray());

            Expression.Lambda(indexerCall).Compile().DynamicInvoke();

            return(default(T));
        }
コード例 #3
0
 /// <summary>
 ///     Sets the implicit wait handle of the <see cref="ActContext" />.
 /// </summary>
 /// <param name="context">The <see cref="ActContext" /> for which to set the implicit wait handle</param>
 /// <exception cref="BadTestException">
 ///     If the Wait assertion is not waiting the implicit wait handle (
 ///     <see cref="WaitContextHandle(SmartTests.SmartAssertPlaceHolder,System.TimeSpan)" /> nor
 ///     <see cref="WaitContextHandle(SmartTests.SmartAssertPlaceHolder,double)" /> is called).
 /// </exception>
 /// <example>
 ///     <para>
 ///         In this example, the <c>SetHandle</c> set the implicit wait handle expected by the
 ///         <see cref="WaitContextHandle(SmartTests.SmartAssertPlaceHolder,double)" /> Smart Assertion call.
 ///     </para>
 ///     <code>
 /// [Test]
 /// public void MyMethodTest()
 /// {
 ///   var mc = new MyClass(300);
 ///
 ///   RunTest( AnyValue.IsValid,
 ///            ctx => mc.Method( ctx.SetHandle ),
 ///            SmartAssert.Within( 100 ),
 ///            SmartAssert.WaitContextHandle( 1000 ) );
 ///
 ///   Assert.IsTrue( mc.Done ); // The method runs the parallel code (ctx.SetHandle) to its end.
 ///   Assert.IsNull( mc.Exception ); // There was no exception in the parallel code thread.
 /// }</code>
 /// </example>
 public static void SetHandle(this ActContext context)
 {
     context[_ContextHandleSet] = true;
     if (!context.TryGetValue(_ContextHandle, out EventWaitHandle obj))
     {
         throw SmartTest.InconclusiveException(Resource.BadTest_UnexpectedContextSetHandle);
     }
     obj.Set();
 }
コード例 #4
0
ファイル: Form2.cs プロジェクト: retrodump/Wintermute-Engine
 private void button2_Click(object sender, EventArgs e)
 {
     if (!Act)
     {
         ActContext.ActivateObject(ActiveObjectSlot.Application, this);
     }
     else
     {
         ActContext.ActivateObject(ActiveObjectSlot.Application, null);
     }
     Act = !Act;
 }
コード例 #5
0
ファイル: Form2.cs プロジェクト: retrodump/Wintermute-Engine
 private void button3_Click(object sender, EventArgs e)
 {
     if (!Act2)
     {
         ActContext.ActivateObject(ActiveObjectSlot.Control, Test);
     }
     else
     {
         ActContext.ActivateObject(ActiveObjectSlot.Control, null);
     }
     Act2 = !Act2;
 }
コード例 #6
0
 /// <summary>
 ///     Run the Act part of your test with a context.
 /// </summary>
 /// <param name="context">The <see cref="ActContext" /> of the test.</param>
 public abstract void Invoke(ActContext context);
コード例 #7
0
ファイル: InvokeAct.cs プロジェクト: LudovicDubois/SmartTests
 /// <inheritdoc />
 public override void Invoke(ActContext context) => _Invocation(context);
コード例 #8
0
 //////////////////////////////////////////////////////////////////////////
 private void OnFormClosed(object sender, FormClosedEventArgs e)
 {
     ActContext.DetachIdleEvent();
 }