Fitnesse评估单元格中的符号

时间:2017-02-23 10:46:16

标签: c# fitnesse fitnesse-slim

我想用C#评估 Fitnesse 中单元格内的符号。问题是我能够评估单个Cell中隔离的符号。如果我附加一个String,则不会评估符号。

示例:

// the ArticleNumber-Symbol holds some value but won´t be evaluated
!| DBQueryExecutionFixture |
|SqlQuery   |    
|!-SELECT * FROM Articles WHERE ID LIKE <<ArticleNumber-!|

当Symbol被隔离在一个Cell中时,一切正常,但这不是我需要的。 例如:

// the ArticleNumber-Symbol holds some value and will be evaluated
!| DBQueryExecutionFixture |
|ArticleNum     |    
|<<ArticleNumber|

SQL-Statement会返回很多行,这就是为什么我不会使用内置查询工作正常,但是非常不方便。

内置示例:

// the ArticleNumber-Symbol holds some value and will be evaluated
| Set parameter | articleNum | <<ArticleNumber |
| Query | !-SELECT * FROM Articles where ID = @articleNum-! |

所以,我的问题是如何才能在顶部的ColumnFixture / example的单元格中找到类似底部示例的内容?

亲切的问候, SirSandmann

1 个答案:

答案 0 :(得分:1)

正如您所注意到的,符号无法嵌入到单元格的内容中。您可以编写自己的代码来处理这个问题,例如:

public class MakeSymbol: SequenceFixture {
    public void Embed(string symbolName, string content, string replacement) {
        Symbols.Save(symbolName, content.Replace("$", replacement));
    }
}

然后你可以写一个这样的测试:

|make symbol|
|embed|query|!-SELECT * FROM Articles WHERE ID LIKE $-!|<<ArticleNumber|

!| DBQueryExecutionFixture |
|SqlQuery     |    
|<<query|