小编sla*_*sky的帖子

xUnit中的Assert.DoesNotThrowAsync()发生了什么变化?

我通过NuGet将我的单元测试项目从版本2.0.0-beta- {something}迁移到2.0.0(稳定版).似乎Assert.DoesNotThrowAsync()不再可用了.

例如:

[Fact]
public void CanDeleteAllTempFiles() {
    Assert.DoesNotThrowAsync(async () => DocumentService.DeleteAllTempDocuments());
}
Run Code Online (Sandbox Code Playgroud)

结果是

DocumentServiceTests.cs(11,11):错误CS0117:'Xunit.Assert'不包含'DoesNotThrowAsync'的定义(CS0117)

解决方法是省略测试.有没有更好的解决方案?

c# xunit

9
推荐指数
3
解决办法
5719
查看次数

我应该取消订阅根 Angular 组件中的 observables 吗?

我有我的根(自举)角(6.x的)组件可观察到的,AppComponent
通常,我会在使用生命周期钩子调用 destroy() 时取消订阅任何打开的订阅ngOnDestroy
由于 AppComponent 是应用程序的根,因此永远不会被销毁(除非整个应用程序被销毁),我是否仍然需要实现 ngOnDestroy 并且我是否需要为取消订阅而烦恼?

我一直无法找到这个看似常见的确切场景的答案。

例子:

export class AppComponent implements OnInit, OnDestroy {
  private tokenSubscription: Subscription;
  constructor(private dataSvc: DataService) { }
  ngOnInit() {
    this.tokenSubscription = this.dataSvc.myObservable.subscribe((val) => {
      // do stuff
    });
  }
  ngOnDestroy() {
    this.tokenSubscription.unsubscribe(); // Do I need this in root component?
  }
}
Run Code Online (Sandbox Code Playgroud)

谢谢!

observable rxjs typescript angular

8
推荐指数
1
解决办法
921
查看次数

标签 统计

angular ×1

c# ×1

observable ×1

rxjs ×1

typescript ×1

xunit ×1