小编Ant*_*ton的帖子

Jest是否支持ES6导入/导出?

如果我使用import/exportES6,那么我的所有测试都会失败并显示错误:

意外的保留字

我将我的测试对象转换为使用旧学校IIFY语法,突然我的测试通过了.或者,采用更简单的测试用例:

   var Validation = require('../src/components/validation/validation');//PASS
   //import * as Validation from '../src/components/validation/validation'//FAIL
Run Code Online (Sandbox Code Playgroud)

同样的错误.显然这里导入/导出存在问题.使用ES5语法重写我的代码只是为了让我的测试框架感到满意是不切实际的.

我有巴贝尔开玩笑.我尝试了github问题的各种建议.不行,到目前为止.

的package.json

 "scripts": {
    "start": "webpack-dev-server",
    "test": "jest"
  },
      "jest": {
        "testPathDirs": [
          "__tests__"
        ],
        "testPathIgnorePatterns": [
          "/node_modules/"
        ],
        "testFileExtensions": ["es6", "js"],
        "moduleFileExtensions": ["js", "json", "es6"]
      },
Run Code Online (Sandbox Code Playgroud)

babelrc

{
  "presets": ["es2015", "react"],
  "plugins": ["transform-decorators-legacy"]
}
Run Code Online (Sandbox Code Playgroud)

有没有解决这个问题?

ecmascript-6 jestjs babel-jest

34
推荐指数
4
解决办法
2万
查看次数

播放应用程序在空闲状态下死机,重新启动新请求?

我正在使用HiknateCp,Hibernate和我在java中的playframework应用程序.在几分钟的空闲状态之后,似乎播放应用程序死了,当它获得新请求时它再次启动.有时我也看到Db持久性错误,其中sessionfactory不可用,我认为这是此问题的副作用.为什么应用程序在空闲状态下死机,我可以将它配置为不这样做吗?

在几分钟的空闲时间内,每次新请求后,我都会得到以下日志 -

[info] application - Application shutdown...
[info] application - Stopping HikariCP connection pool...
[info] application - Starting HikariCP connection pool...
Run Code Online (Sandbox Code Playgroud)

Persistence.xml: -

<persistence xmlns="http://java.sun.com/xml/ns/persistence"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"
             version="2.0">

    <persistence-unit name="defaultPersistenceUnit" transaction-type="RESOURCE_LOCAL">
        <provider>org.hibernate.ejb.HibernatePersistence</provider>
        <properties>
            <property name="hibernate.dialect" value="org.hibernate.dialect.PostgreSQLDialect"/> 
            <property name="hibernate.show_sql" value="true"/>
            <property name="hibernate.format_sql" value="true"/>
            <property name="hibernate.use_sql_comments" value="true"/>
            <property name="hibernate.logSql" value="true"/>            
            <property name="hibernate.connection.provider_class" value="com.zaxxer.hikari.hibernate.HikariConnectionProvider"/>
            <property name="hibernate.hikari.dataSourceClassName" value="com.impossibl.postgres.jdbc.PGDataSource"/>
        </properties>
    </persistence-unit>

</persistence>
Run Code Online (Sandbox Code Playgroud)

Application.conf: -

# JPA configuration
# ~~~~~
# You can declare as many Ebean servers as you want.
# By convention, …
Run Code Online (Sandbox Code Playgroud)

java hibernate playframework hikaricp playframework-2.3

25
推荐指数
1
解决办法
773
查看次数

通过jest运行测试,我在包含的.jsx文件中得到"Unexpected token"

我正在使用jest和Babel 6并尝试运行包含.jsx文件的测试.由于某种原因,该文件未被选为.jsx并且似乎被视为纯js,导致具有React组件的行上的错误.

这是测试:

var searchPath = '../../../../../app/assets/javascripts/components/navigation/search_icon.js.jsx';
jest.dontMock(searchPath);

import React from 'react';
import ReactDOM from 'react-dom';
import TestUtils from 'react-addons-test-utils'

const SearchIcon = require(searchPath);

describe('components', () => {
  describe('SearchIcon', () => {
    it('Should dispatch an action to toggle the search bar when clicked', () => {

      var icon = TestUtils.renderIntoDocument(
        <SearchIcon labelOn="On" labelOff="Off"/>
      );

      // Smoke test - I can't even get this far :(
      expect(true).to.eq(true)

    })
  })
});
Run Code Online (Sandbox Code Playgroud)

我的package.json在这里:

{
  "name": "fd-v5-web",
  "version": "1.0.0",
  "description": "Farmdrop mobile site",
  "dependencies": …
Run Code Online (Sandbox Code Playgroud)

npm reactjs jestjs babeljs

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

播放2.5中不推荐使用Play.current

我目前正在以下列方式使用Play.current.

import play.api.{Logger, Play}

object ApplicationConfig {

  val app = Play.current
  def getConfInt(key: String): Option[Int] = {
    val result = app.configuration.getInt(key)
    result
  }
}
Run Code Online (Sandbox Code Playgroud)

自从迁移到2.5后,我有一个警告说它已被弃用

"这是对应用程序的静态引用,而是使用DI"

但是,文档并没有说明我应该如何使用DI代替.

谢谢

playframework playframework-2.5

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

Play2.5 Java WebSockets

播放2.5亮点状态

更好地控制WebSocket框架Play 2.5 WebSocket API使您可以直接控制WebSocket框架.您现在可以发送和接收二进制,文本,ping,pong和关闭帧.如果您不想担心这种详细程度,Play仍会自动将您的JSON或XML数据转换为正确的帧类型.

但是 https://www.playframework.com/documentation/2.5.x/JavaWebSockets有关于LegacyWebSocket的示例,不推荐使用

  1. Java WebSockets的推荐API /模式是什么?使用LegacyWebSocket是java websockets的唯一选择吗?
  2. 是否有任何使用新消息类型ping/pong实现心跳的示例?

java websocket playframework-2.5

7
推荐指数
1
解决办法
1060
查看次数

Jest React测试es6导入/导出不需要的模拟

当使用ES6导入/导出语法时,似乎Jest是默认情况下自动导入我导入的组件,即使我明确地为组件关闭了模拟.

jest.autoMockOff();
jest.dontMock("../bundles/Opportunities/MarkAsLost.jsx");
Run Code Online (Sandbox Code Playgroud)

这是测试组件顶部的导入:

import MarkAsLost from "../bundles/Opportunities/MarkAsLost.jsx";
Run Code Online (Sandbox Code Playgroud)

这是被测组件底部的导出:

export default MarkAsLost;
Run Code Online (Sandbox Code Playgroud)

这是将导入的组件记录在测试文件中的结果:

{ [Function]
  _isMockFunction: true,
  _getMockImplementation: [Function],
  mock: { calls: [ [Object] ], instances: [ [Object] ] },
  mockClear: [Function],
  mockReturnValueOnce: [Function],
  mockReturnValue: [Function],
  mockImpl: [Function],
  mockImplementation: [Function],
  mockReturnThis: [Function],
  displayName: 'MarkAsLost' }
Run Code Online (Sandbox Code Playgroud)

当我使用旧样式语法,即:

var MarkAsLost = require("../bundles/Opportunities/MarkAsLost.jsx");
module.exports = MarkAsLost;
Run Code Online (Sandbox Code Playgroud)

这是loggin组件的结果,该组件现在在测试文件中表现得如我所愿

{ [Function] displayName: 'MarkAsLost' }
Run Code Online (Sandbox Code Playgroud)

任何帮助,将不胜感激

javascript testing ecmascript-6 reactjs jestjs

5
推荐指数
1
解决办法
1543
查看次数

Heroku WebSocket连接超时

我有一个Play Framework应用程序,作为WebSocket服务器,在Heroku和一些WebSocket客户端上运行(类似聊天的应用程序).

我注意到Heroku在55秒不活动后关闭了每个连接,我想阻止这一点,所以我想在我的Play应用程序中创建一个机制,向每个客户端发送某种"ping"以保持连接存活.

我只是想知道这是不是要走了?我错过了一些关键的东西吗?

最好的祝福

heroku websocket

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

Java 8急切地获得了中间流操作的结果

给出以下代码:

List<String> list = Arrays.asList("a", "b", "c");
        list.stream()
        .map(s -> s + "-" + s)                 //"a-a", "b-b", "c-c"
        .filter(s -> !s.equals("b-b"))         //"a-a", "c-c"
        .forEach(s -> System.out.println(s));
Run Code Online (Sandbox Code Playgroud)

map并且filter是中间操作并且forEach是终端操作.只有在执行终端操作之后,我们才能获得数据转换的结果.

有没有办法迫使评估更加渴望并获得某种中间结果 - 不打破流操作链?例如,我想要列出"aa","bb","cc"(这将是第一次中间操作的结果).

java java-8 java-stream

4
推荐指数
2
解决办法
2180
查看次数

Play 2.5.X:不推荐使用对象Play中的方法当前:这是对应用程序的静态引用,而是使用DI

我是PlayFramework的新手.

请给我一个示例,了解如何从我的视图中访问配置参数.我正在使用PlayFramework 2.5.3

旧方式(@current已弃用):

@current.configuration.getString("environment.param")
Run Code Online (Sandbox Code Playgroud)

新方法(据我所知,应该注入配置):

我知道如何从控制器访问它.

@Inject() (val messagesApi: MessagesApi, configuration: Configuration)
Run Code Online (Sandbox Code Playgroud)

我如何在我看来使用它?

scala playframework playframework-2.5

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

使用'PlatformUI.getWorkbench().restart()'重启Eclipse不会重启RCP产品

在调用该方法时PlatformUI.getWorkbench().restart(),应用程序只是关闭并拒绝重新启动产品.

java eclipse eclipse-rcp

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

我如何获得我网站上的国家列表

我试图找到一种方法来显示下拉列表中的所有国家/地区列表.php或jquery中是否有任何短代码可以在我的网页上获取国家/地区列表?先感谢您.

javascript php jquery

0
推荐指数
3
解决办法
8347
查看次数