/// <summary> /// Creates a stack trace data object that points to the specified code element. /// </summary> /// <param name="codeElement">The code element.</param> /// <exception cref="ArgumentNullException">Thrown if <paramref name="codeElement"/> is null.</exception> public StackTraceData(ICodeElementInfo codeElement) { if (codeElement == null) { throw new ArgumentNullException("codeElement"); } var codeLocation = codeElement.GetCodeLocation(); var codeReference = codeElement.CodeReference; this.stackTrace = String.Format(" at {0}\n at {1}.{2}() in {3}:line {4}", codeReference.MemberName, codeReference.NamespaceName, codeReference.TypeName, codeLocation.Path, codeLocation.Line); }
/// <summary> /// Copies the contents of a test component. /// </summary> /// <param name="source">The source object.</param> public TestComponentData(TestComponent source) { if (source == null) throw new ArgumentNullException(@"source"); id = source.Id; name = source.Name; codeElement = source.CodeElement; if (codeElement != null) { codeReference = codeElement.CodeReference; codeLocation = codeElement.GetCodeLocation(); } metadata = source.Metadata.Copy(); }
/// <summary> /// Copies the contents of a test component. /// </summary> /// <param name="source">The source object.</param> public TestComponentData(TestComponent source) { if (source == null) { throw new ArgumentNullException(@"source"); } id = source.Id; name = source.Name; codeElement = source.CodeElement; if (codeElement != null) { codeReference = codeElement.CodeReference; codeLocation = codeElement.GetCodeLocation(); } metadata = source.Metadata.Copy(); }