I want to use a static variable as the parameter to DeploymentItem
on an MSTest unit test but it doesn't seem I'm able to do so. There's an XSL file that needs to be copied along with the DLL file when the unit test runs, and I defined the location as
private static string _xslPath = Path.Combine("MyProjectDir", "transform.xsl");
However, when I then do the following:
[TestMethod]
[DeploymentItem(DLL)]
[DeploymentItem(_xslPath)]
public void XmlToResultsTest() { }
I get this build error:
An attribute argument must be a constant expression, typeof expression or array creation expression of an attribute parameter type
Okay okay, fine, but it just seems so dirty to assemble the path myself:
[DeploymentItem(@"MyProjectDir\transform.xsl")]
Am I being overly picky here about wanting to use Path.Combine
? Is there another alternative I'm missing? I suppose I could just put the XSL file in the root solution directory so I don't have to pass in the project directory as part of the path.