小编Yur*_*rts的帖子

第一次测试失败时如何停止 GTest 测试用例执行

#define如果第一次测试失败,我正在寻找一些可以停止测试用例执行的东西

TEST_F(TestInitializer, 1st-test) {
  Initiator.call();      
  EXPECT_CALL(mock_obj, onAction(false)).Times(AtLeast(0));

  // some define I want
  ::testing::stopIfFailed();
}

TEST_F(TestInitializer, 2nd-test) {
  // this test must not be executed if first test failed
}
Run Code Online (Sandbox Code Playgroud)

integration-testing unit-testing googletest gmock

9
推荐指数
1
解决办法
4024
查看次数

“AnimationEvent_2”类型的参数不可分配给“AnimationEvent”类型的参数

我正在尝试以 Angular 方式进行动画回调,但出现了类型错误,可以使用 type 轻松抑制该错误any。我想了解为什么AnimationEvent打字稿不接受。

我的组件:

import { Component } from '@angular/core';
import { animate, state, style, transition, trigger } from "@angular/animations";

@Component({
  selector: 'app-animation-callback',
  animations: [
    trigger('openClose', [
      state('open', style({
        height: '200px',
      })),
      state('closed', style({
        height: '100px',
      })),
      transition('open <=> closed', [
        animate('.1s')
      ]),
    ]),
  ],
  template: `
    <nav>
      <button (click)="toggle()">Toggle</button>
    </nav>

    <div
      [@openClose]="isOpen ? 'open' : 'closed'"
      (@openClose.start)="onAnimationEvent($event)"
      (@openClose.done)="onAnimationEvent($event)"
      class="open-close-container">
      Text
    </div>
  `,
})
export class AnimationCallbackComponent {
  isOpen = true;
  toggle() {
    this.isOpen …
Run Code Online (Sandbox Code Playgroud)

typescript angular-template angular angular-animations

4
推荐指数
1
解决办法
1889
查看次数

react-router-dom 失败的道具类型:“string”类型的道具“exact”无效

当我尝试使用<Route />组件时遇到一些奇怪的警告。请注意<Route exact={"true"} .../>代码示例中描述的产生奇怪浏览器警告的一行。

ReactDOM.render(
    <Provider store={appStore}>
        <ConnectedRouter store={appStore} history={history}>
            <BrowserRouter>
                <Switch>
                    <Route exact={"true"} path="/" component={App}/>
                    <Route render={() => <h1>404, not found</h1>} />
                </Switch>
            </BrowserRouter>
        </ConnectedRouter>
   </Provider>,
document.getElementById('root'));
Run Code Online (Sandbox Code Playgroud)

浏览器控制台接下来告诉我:

警告:失败的道具类型: 提供给预期的无效道具exact类型。在路线中(位于 src/index.tsx:19)index.js:1452stringRouteboolean

上一个警告之后的以下警告与文本逻辑完全一致

警告:收到true非布尔属性exact

如果要将其写入 DOM,请传递一个字符串:exact="true" 或exact={value.toString()}。在 a(由 Context.Consumer 创建)中 在 Link(在 App.tsx:25)中 在 header(在 App.tsx:11)中 在 div(在 App.tsx:10)中 在 App(由 Context.Consumer 创建)中 在 Route 中(在 src/index.tsx:19)在 Switch 中(在 src/index.tsx:18)在 Router(由 BrowserRouter 创建)中 在 BrowserRouter 中(在 src/index.tsx:17)在 …

reactjs react-router-dom

3
推荐指数
1
解决办法
6549
查看次数

Videojs,如何动态更新 m3u8 播放列表

我想从后端添加新的传入块到已经播放“实时”m3u8 播放列表的播放器

这是一个现有的播放列表(已经设置和播放)

#EXTM3U
#EXT-X-PLAYLIST-TYPE:VOD
#EXT-X-TARGETDURATION:6
#EXT-X-VERSION:3
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-PROGRAM-DATE-TIME:2018-10-19T16:39:07Z
#EXTINF:6.000,
56-06000.ts
#EXTINF:6.000,
56-06000.ts
#EXTINF:6.000,
56-06000.ts
#EXTINF:6.000,
56-06000.ts
#EXT-X-ENDLIST
Run Code Online (Sandbox Code Playgroud)

这是一个更新的播放列表,我想用下一个替换旧的播放列表(在下面列出),但我不想用命令重新加载 videojs 播放器 (player.src(...))

#EXTM3U
#EXT-X-PLAYLIST-TYPE:VOD
#EXT-X-TARGETDURATION:6
#EXT-X-VERSION:3
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-PROGRAM-DATE-TIME:2018-10-19T16:39:07Z
#EXTINF:6.000,
56-06000.ts
#EXTINF:6.000,
56-06000.ts
#EXTINF:6.000,
56-06000.ts
#EXTINF:6.000,
56-06000.ts
....
....
many another chunks
....
....
#EXT-X-ENDLIST
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?或者也许存在其他更新播放列表的好方法?

http-live-streaming http-streaming video.js m3u8

2
推荐指数
1
解决办法
1350
查看次数