小编Lee*_*sen的帖子

Swagger与静态文档

我希望使用Swagger记录我的restful接口.问题是我不想通过注释我的代码来自动生成我的文档.基本上我不想将我的内部数据模型耦合到接口公开的虚拟数据模型.看来我可以让我的服务器提供一个Resources.json文件,然后为每个资源处理程序提供相应的JSON文件.但是,当我尝试这个时,我试图定义JSON正确的语法并提供正确的HTTP头响应字段时遇到了很多小问题.

有没有人用这种方式使用Swagger?有人有一些文件或例子吗?我能找到的所有内容都只是使用客户端库为您生成内容.

rest documentation-generation swagger

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

使用 TestNG 的动态测试套件

我想编写从一个充满文件的目录动态创建多个 TestNG 测试套件的 Java 代码。每个文件对应一个测试套件,其中包含基于文件内容的测试。关键是我需要为每个套件进行特定的设置和拆卸。

我知道我可以使用 Factory 注释从单个文件动态构建测试。例如:

public class TestFactory {
    @Factory
    public Object[] createTestFromFile() throws Exception {
        ArrayList<MyTest> tests = new ArrayList<MyTest>();

        BufferedReader reader = new BufferedReader(new FileReader("test1.txt"));
        String testData;
        while ((testData = reader.readLine()) != null) {
            tests.add(new MyTest(testData));
        }

        return tests.toArray();
    }
}

public class MyTest {
    private String testData;

    public MyTest(String testData) {
        this.testData = testData;
    }

    @Test
    public void runTest() {
        assertTrue(testData.equals(testData));
    }

}
Run Code Online (Sandbox Code Playgroud)

但是我如何读取多个文件并为每个文件创建一个单独的测试套件,每个文件都有不同的套件特定的设置/拆卸?

testng unit-testing

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

在java中创建一个mongodb上限集合

我想从Java代码创建一个上限集合.我找到了通过JavaScript创建它的语法,但找不到Java的示例.

Mongo mongo = new Mongo("127.0.0.1");
DB db = mongo.getDB("mydbid");

DBCollection collection;
if (db.collectionExists("mycollection")) {
        collection = db.getCollection("mycollection");
    } else {
        collection = /* ????? Create the collection ?????? */
    }
}
Run Code Online (Sandbox Code Playgroud)

mongodb-java

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

TypeScript 通用字符串或数字数组的总和

我想创建一个 TypeScript 函数,它将接受字符串或数字数组并返回连接的字符串或数字之和。

我的尝试如下所示:

function arrayCat<T extends number | string>(n: Array<T>): string {
  if (n.length > 0) {
    if (typeof n[0] === 'string') {
      return n.join(', ');
    } else if (typeof n[0] === 'number') {
      const v: Array<any> = n;
      const sum: number = v.reduce((prev: number, curr: number)=> {
         return prev + curr;
      });
      return sum.toString();
    }
  }

  return '';
}

console.log(arrayCat([1, 2])); // Outputs: 3
console.log(arrayCat(['fish', 'cow'])); // Outputs: fish, cow
Run Code Online (Sandbox Code Playgroud)

但回归 TypeScript 似乎const v: Array<any> = n; …

typescript typescript-generics

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