小编dar*_*rdo的帖子

ngrx/store select不存在

我正在尝试使用以下代码重新创建ngrx/store示例项目,我知道这对于TODO应用程序来说有点过分,但是想要了解这些概念:

// State Model
interface Todo {
  id: number;
  text: string;
  completed: boolean;
}

interface TodoState {
  entities: Todo[];
}

interface AppState {
  todos: TodoState;
}

// State Retrieval
getTodos() {
  return (state: Observable<TodoState>) => state.select(s => s.entities);
}

getTodoState() {
  return (state: Observable<AppState>) => state.select(s => s.todos);
}

getTodosCollection() {
  return compose(this.getTodos(), this.getTodoState());
}

@Component({...})
class App {
  // I'd think I should be able to type this to Array<Todo>,
  // but that throws a compile-time error.
  // Also, …
Run Code Online (Sandbox Code Playgroud)

rxjs ngrx angular

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

@Autowire MockMvc-弹簧数据剩余

给定存储库

public interface ResourceRepository extends CrudRepository<Resource, Long> { ... }
Run Code Online (Sandbox Code Playgroud)

以下测试代码:

@WebMvcTest
@RunWith(SpringRunner.class)
public class RestResourceTests {

  @Autowired
  private MockMvc mockMvc;

  @Test
  public void create_ValidResource_Should201() {
    String requestJson = "...";

    mockMvc.perform(
      post("/resource")
        .content(requestJson)
        .contentType(MediaType.APPLICATION_JSON))
      .andExpect(status().isCreated()); // This fails with 404
  }

}
Run Code Online (Sandbox Code Playgroud)

为了解决此问题,我需要注入WebApplicationContext和手动创建MockMvc对象,如下所示:

@SpringBootTest
@RunWith(SpringRunner.class)
public class RestResourceTests {

  private MockMvc mockMvc;

  @Autowired
  private WebApplicationContext webApplicationContext;

  @Before
  public void setup() {
    this.mockMvc = webAppContextSetup(webApplicationContext).build();
  }
Run Code Online (Sandbox Code Playgroud)

有没有更简单的方法来实现这一目标?

谢谢!

spring-data-rest spring-test-mvc spring-boot

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

NodeJS缓冲区 - ASCII二进制表示

number 具有 num.toString(2)

我想知道是否有一种方法来获取字符串'Hello world',并将其转换为ASCII二进制表示.

谢谢!

javascript string binary ascii node.js

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

通过节点js测试骨干模型

我一直试图通过express node.js项目将单元测试与我的Backbone模型集成,并且难以准确掌握如何完成此任务.(旁注:我来自很多Java背景,我意识到存在差异,但我喜欢到目前为止节点开发环境的简洁和优雅.)

我的问题源于以下问题,骨干模型需要暴露给浏览器才能在其中运行,而通过mocha进行测试是节点运行时环境中的"服务器端".

这是我所说的一个例子:

模型文件:/public/js/backbone/models.js

var SomeModel = Backbone.Model.extend({...});
Run Code Online (Sandbox Code Playgroud)

服务器端测试:/test/backbone/models-test.js

???
Run Code Online (Sandbox Code Playgroud)

我写 ???因为通过服务器端的正常单元测试你只需:

var SomeModule = require('./someModule');
Run Code Online (Sandbox Code Playgroud)

并开始你的快乐方式.显然,由于浏览器没有在Node中运行,因此模块不易获得.

我已经阅读了一些帖子,说明你需要在require.js中包装你的浏览器端javascript,这会将这些javascript文件自动放入节点命名空间,允许你执行一个需求并继续进行测试.但是,我还没有找到完成这项任务的连贯方式,而且我一直试图寻找一些例子,但似乎找不到适用的东西.当然,很可能我对这个框架一般缺乏知识,因为我仍然围绕着如何在javascript中注入事物,注入依赖关系等的整个想法.

任何帮助都会非常感激,如果这个问题已被问过一百万次了,我很抱歉,我确信它已经问了,而且我的问题也不正确.

提前致谢.

mocha.js node.js express backbone.js

0
推荐指数
1
解决办法
1106
查看次数