Example #1
0
        /// <summary>
        /// Gets the test result from test defined in assembly.
        /// </summary>
        /// <param name="assembly">The assembly.</param>
        /// <param name="entryMethod">The entry method of test.</param>
        /// <returns>TestResult.</returns>
        public static TestResult GetResult(this TestingAssembly assembly, MethodID entryMethod)
        {
            if (!assembly.IsBuilded)
            {
                assembly.Build();
            }

            var entryObj = assembly.Machine.CreateInstance(TypeDescriptor.Create(Method.EntryClass));

            return(GetResult(assembly, entryMethod, entryObj));
        }
Example #2
0
        /// <summary>
        /// Gets the test result from test defined in assembly.
        /// </summary>
        /// <param name="assembly">The assembly.</param>
        /// <param name="entryMethod">The entry method of test.</param>
        /// <param name="entryArguments">The entry method arguments.</param>
        /// <returns>TestResult.</returns>
        public static TestResult GetResult(this TestingAssembly assembly, MethodID entryMethod, params Instance[] entryArguments)
        {
            if (!assembly.IsBuilded)
            {
                assembly.Build();
            }

            var result = assembly.Machine.Run(assembly.Loader, entryMethod, entryArguments);

            foreach (var action in assembly.UserActions)
            {
                action(result);
            }

            var view = processEdits(assembly.Runtime, result, assembly.EditActions);

            return(new TestResult(view, result));
        }