瀏覽代碼

Merge pull request #128 from Janther/main

refactor: organizing tests
Paul Razvan Berg 3 年之前
父節點
當前提交
57764da85e
共有 2 個文件被更改,包括 18 次插入14 次删除
  1. 17 0
      test/greeter/Greeter.fixture.ts
  2. 1 14
      test/greeter/Greeter.ts

+ 17 - 0
test/greeter/Greeter.fixture.ts

@@ -0,0 +1,17 @@
+import type { SignerWithAddress } from "@nomiclabs/hardhat-ethers/dist/src/signer-with-address";
+import { ethers } from "hardhat";
+
+import type { Greeter } from "../../src/types/Greeter";
+import type { Greeter__factory } from "../../src/types/factories/Greeter__factory";
+
+export async function deployGreeterFixture(): Promise<{ greeter: Greeter }> {
+  const signers: SignerWithAddress[] = await ethers.getSigners();
+  const admin: SignerWithAddress = signers[0];
+
+  const greeting: string = "Hello, world!";
+  const greeterFactory: Greeter__factory = <Greeter__factory>await ethers.getContractFactory("Greeter");
+  const greeter: Greeter = <Greeter>await greeterFactory.connect(admin).deploy(greeting);
+  await greeter.deployed();
+
+  return { greeter };
+}

+ 1 - 14
test/greeter/Greeter.ts

@@ -2,24 +2,11 @@ import { loadFixture } from "@nomicfoundation/hardhat-network-helpers";
 import type { SignerWithAddress } from "@nomiclabs/hardhat-ethers/dist/src/signer-with-address";
 import { ethers } from "hardhat";
 
-import type { Greeter } from "../../src/types/Greeter";
-import type { Greeter__factory } from "../../src/types/factories/Greeter__factory";
 import type { Signers } from "../types";
 import { shouldBehaveLikeGreeter } from "./Greeter.behavior";
+import { deployGreeterFixture } from "./Greeter.fixture";
 
 describe("Unit tests", function () {
-  async function deployGreeterFixture(): Promise<{ greeter: Greeter }> {
-    const signers: SignerWithAddress[] = await ethers.getSigners();
-    const admin: SignerWithAddress = signers[0];
-
-    const greeting: string = "Hello, world!";
-    const greeterFactory: Greeter__factory = <Greeter__factory>await ethers.getContractFactory("Greeter");
-    const greeter: Greeter = <Greeter>await greeterFactory.connect(admin).deploy(greeting);
-    await greeter.deployed();
-
-    return { greeter };
-  }
-
   before(async function () {
     this.signers = {} as Signers;