[单位测试新手] [c#]
请考虑以下情形:
我正在使用Silverlight并调用WCF服务.Silverlight只能异步调用WCF服务.我构建了一个围绕WCF服务的包装器,以便我可以使用Action参数.(使客户端代码更清洁).
所以我有一个异步服务来检索会议室.
public interface IMeetingRoomService
{
void GetRooms(Action<List<MeetingRoom>> result);
}
Run Code Online (Sandbox Code Playgroud)
转换GetRooms List<MeetingRoom> GetRooms()不是一个选择.
我想在ViewModel中使用此服务来设置名为Rooms的公共属性.
public class SomeViewModel
{
private readonly IMeetingRoomService _meetingRoomService;
public List<MeetingRoom> Rooms { get; set; }
public SomeViewModel(IMeetingRoomService meetingRoomService)
{
this._meetingRoomService = meetingRoomService;
}
public void GetRooms()
{
// Code that calls the service and sets this.Rooms
_meetingRoomService.GetRooms(result => Rooms = result);
}
}
Run Code Online (Sandbox Code Playgroud)
我想单元测试SomeViewModel.GetRooms()的实现.(对于这个问题,我很快写了实现,但实际上我正在尝试使用TDD.)
我该如何完成此测试?我正在使用NUnit和Moq.
[Test]
public void GetRooms_ShouldSetRooms()
{
var theRooms = new List<MeetingRoom>
{
new MeetingRoom(1, "some room"),
new …Run Code Online (Sandbox Code Playgroud) 我想在符号<和>之间替换文本文件中的任何内容
接受任何符号的正则表达式是什么?我目前:
fields[i] = fields[i].replaceAll("\\<[a-z0-9_-]*\\>", "");
Run Code Online (Sandbox Code Playgroud)
但它仅适用于字母和数字,如果<和>之间有符号,则不替换字符串.
谢谢
有没有不错的Android NDK示例和教程?我在哪里可以找到它们?如果有任何更专门针对游戏引擎开发(因为我希望将我的转换为android),那将是最有帮助的.
我正在使用MVC 2,我需要将默认名称"Areas"更改为<MyOwnAreaName>.
是不是可以将默认名称"区域"更改为我自己的名字?
任何人都可以帮助提供解决方案,提前谢谢.
我在尝试实施OAuth提供程序时遇到了很多问题.
我想知道是否有人使用Java成功使用了Oauth提供程序?我找到了很多图书馆,但所有图书馆的评论都很糟糕,我无法使用它们.我接受任何解释oauth提供者应该如何工作和/或如何实现它的文档.
情况:我的服务器上的MySQL中有一些数据,我想授权"依赖方"来访问OAuth,但我不知道该怎么做.
我正在寻找最有效的算法来检查数组中是否有一个唯一的元素.结果不一定是唯一元素,因此只是真或假.我知道我可以使用哈希表或某些东西达到O(n)效率,但我仍然在寻找一种在空间方面更有效的结果.
e-数组未排序,并包含整数.
在Owner我有属性"owner"和"owner_tag".
我查询owner然后尝试打印owner_tag匹配结果.但我得到的是第一场比赛的每个字母owner_tag:
所以,在 Owner
所有者:az@example.com拥有owner_tag : tag1, tag2, tag3.
匹配查询"tag1"和遍历"t","a","g","1".我不明白为什么?
这是代码:
query = Owner.all()
query.filter("owner", user)
w = query.get()
for tag in w.owner_tag:
self.response.out.write("""
%s, %s""" %
(tag, w.tag_value))
Run Code Online (Sandbox Code Playgroud)
更新
如果我使用fetch()而不是get()那么它的工作原理.但由于我不知道要获取的项目数量,如何在不指定数字的情况下获取所有项目.我认为get()取了所有匹配的项目:
query = Owner.all()
query.filter("owner", user)
w = query.fetch(10)
for tag in w:
self.response.out.write("""
%s, %s""" %
(tag.owner_tag, tag.tag_value))
Run Code Online (Sandbox Code Playgroud)
你能解释为什么上面的工作和原始代码get() …
我使用以下代码将BusinessID绑定为ddlIndustry下拉列表的DataValueField.我想要做的是将选定的ID保存到不同的表(公司).我用ddlIndustry.SelectedValue做这个.出于某种原因,第一个值始终保存(1),而不是所选值.你有什么想法可能会发生这种情况吗?
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
BindCountry();
BindIndustry();
}
private void BindCountry()
{
XmlDocument doc = new XmlDocument();
doc.Load(Server.MapPath("countries.xml"));
foreach (XmlNode node in doc.SelectNodes("//country"))
{
ddlCountry.Items.Add(new ListItem(node.InnerText, node.Attributes["code"].InnerText));
ddlCountry.SelectedIndex = 94;
}
}
private void BindIndustry()
{
SqlCommand cmd = null;
SqlConnection conn = new SqlConnection(GetConnectionString());
conn.Open();
cmd = new SqlCommand("Select Industry, BusinessID FROM BusinessType", conn);
cmd.CommandType = CommandType.Text;
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
conn.Close();
ddlIndustry.DataSource = ds;
ddlIndustry.DataTextField = …Run Code Online (Sandbox Code Playgroud) 我需要将文本文件中的日期/时间转换为自unix时代(即1970年1月1日)以来经过的分钟数:
e.g. 2006-01-01 07:14:38.000 into 18934874
Run Code Online (Sandbox Code Playgroud)
我正在使用Java来解析文件.谢谢
algorithm ×2
asp.net ×2
c# ×2
java ×2
.net ×1
android ×1
android-ndk ×1
arrays ×1
asp.net-mvc ×1
asynchronous ×1
date ×1
graph ×1
math ×1
max ×1
performance ×1
python ×1
regex ×1
unit-testing ×1