create-stylus 0.0.6 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.js +25 -16
- package/dist/cli.js.map +1 -1
- package/package.json +2 -2
- package/src/main.ts +50 -36
- package/templates/base/package.json +2 -2
- package/templates/base/packages/stylus/package.json +2 -2
- package/templates/base/packages/stylus/scripts/test.ts +236 -0
- package/templates/base/packages/stylus/scripts/test_network.ts +15 -12
- package/templates/base/packages/stylus/your-contract/Cargo.toml +1 -1
- package/templates/base/packages/stylus/your-contract/rust-toolchain.toml +7 -1
- package/templates/base/packages/stylus/your-contract/src/lib.rs +43 -67
- package/templates/base/readme.md +1 -1
package/dist/cli.js
CHANGED
|
@@ -7,7 +7,7 @@ import ncp from 'ncp';
|
|
|
7
7
|
import { promisify } from 'util';
|
|
8
8
|
import { projectInstall } from 'pkg-install';
|
|
9
9
|
import chalk from 'chalk';
|
|
10
|
-
import Listr from '
|
|
10
|
+
import { Listr } from 'listr2';
|
|
11
11
|
import arg from 'arg';
|
|
12
12
|
import inquirer from 'inquirer';
|
|
13
13
|
|
|
@@ -535,37 +535,46 @@ async function createProject(options) {
|
|
|
535
535
|
const tasks = new Listr([
|
|
536
536
|
{
|
|
537
537
|
title: `📁 Create project directory ${targetDirectory}`,
|
|
538
|
-
task: () => createProjectDirectory(options.directory),
|
|
538
|
+
task: async () => await createProjectDirectory(options.directory),
|
|
539
539
|
},
|
|
540
540
|
{
|
|
541
|
-
title: `🚀 Creating a new Scaffold-Stylus 2 app${options.
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
541
|
+
title: `🚀 Creating a new Scaffold-Stylus 2 app in ${chalk.green.bold(options.directory)}`,
|
|
542
|
+
task: async (ctx, task) => {
|
|
543
|
+
if (ctx.options.extension) {
|
|
544
|
+
task.title = `🚀 Creating a new Scaffold-Stylus 2 app${ctx.options.extension
|
|
545
|
+
? ` with ${chalk.green.bold(ctx.options.extension)} extension`
|
|
546
|
+
: ""} in ${chalk.green.bold(ctx.options.directory)}`;
|
|
547
|
+
}
|
|
548
|
+
await copyTemplateFiles(options, templateDirectory, targetDirectory);
|
|
549
|
+
},
|
|
545
550
|
},
|
|
546
551
|
{
|
|
547
552
|
title: `📦 Installing dependencies with yarn, this could take a while`,
|
|
548
|
-
task: () =>
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
553
|
+
task: async (ctx, task) => {
|
|
554
|
+
if (!!ctx.options.install) {
|
|
555
|
+
await installPackages(targetDirectory);
|
|
556
|
+
}
|
|
557
|
+
else {
|
|
558
|
+
task.skip("Manually skipped");
|
|
552
559
|
}
|
|
553
560
|
},
|
|
554
561
|
},
|
|
555
562
|
{
|
|
556
563
|
title: "🪄 Formatting Next.js files with prettier",
|
|
557
|
-
task: () =>
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
564
|
+
task: async (ctx, task) => {
|
|
565
|
+
if (!!ctx.options.install) {
|
|
566
|
+
await prettierFormat(targetDirectory);
|
|
567
|
+
}
|
|
568
|
+
else {
|
|
569
|
+
task.skip("Skipping because prettier install was skipped");
|
|
561
570
|
}
|
|
562
571
|
},
|
|
563
572
|
},
|
|
564
573
|
{
|
|
565
574
|
title: `📡 Initializing Git repository`,
|
|
566
|
-
task: () => createFirstGitCommit(targetDirectory),
|
|
575
|
+
task: async () => await createFirstGitCommit(targetDirectory),
|
|
567
576
|
},
|
|
568
|
-
]);
|
|
577
|
+
], { ctx: { options } });
|
|
569
578
|
try {
|
|
570
579
|
await tasks.run();
|
|
571
580
|
renderOutroMessage(options);
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sources":["../src/utils/consts.ts","../src/utils/find-files-recursively.ts","../src/utils/merge-package-json.ts","../src/utils/link.ts","../src/utils/load-extensions.ts","../src/tasks/copy-extension-file.ts","../src/tasks/copy-template-files.ts","../src/tasks/create-project-directory.ts","../src/tasks/install-packages.ts","../src/tasks/create-first-git-commit.ts","../src/tasks/prettier-format.ts","../src/utils/render-outro-message.ts","../src/main.ts","../src/utils/parse-arguments-into-options.ts","../src/utils/prompt-for-missing-options.ts","../src/utils/render-intro-message.ts","../src/cli.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["mergePackageJson","link"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sources":["../src/utils/consts.ts","../src/utils/find-files-recursively.ts","../src/utils/merge-package-json.ts","../src/utils/link.ts","../src/utils/load-extensions.ts","../src/tasks/copy-extension-file.ts","../src/tasks/copy-template-files.ts","../src/tasks/create-project-directory.ts","../src/tasks/install-packages.ts","../src/tasks/create-first-git-commit.ts","../src/tasks/prettier-format.ts","../src/utils/render-outro-message.ts","../src/main.ts","../src/utils/parse-arguments-into-options.ts","../src/utils/prompt-for-missing-options.ts","../src/utils/render-intro-message.ts","../src/cli.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["mergePackageJson","link"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-stylus",
|
|
3
|
-
"version": "0.0
|
|
3
|
+
"version": "0.1.0",
|
|
4
4
|
"author": "Q3 Labs",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
"execa": "9.5.2",
|
|
38
38
|
"handlebars": "^4.7.8",
|
|
39
39
|
"inquirer": "9.2.0",
|
|
40
|
-
"
|
|
40
|
+
"listr2": "^9.0.1",
|
|
41
41
|
"merge-packages": "^0.1.6",
|
|
42
42
|
"ncp": "2.0.0",
|
|
43
43
|
"pkg-install": "1.0.0"
|
package/src/main.ts
CHANGED
|
@@ -8,10 +8,12 @@ import {
|
|
|
8
8
|
import type { Options } from "./types";
|
|
9
9
|
import { renderOutroMessage } from "./utils/render-outro-message";
|
|
10
10
|
import chalk from "chalk";
|
|
11
|
-
import Listr from "
|
|
11
|
+
import { Listr, ListrContext } from "listr2";
|
|
12
12
|
import path from "path";
|
|
13
13
|
import { fileURLToPath } from "url";
|
|
14
14
|
|
|
15
|
+
type CreateStylusListrContext = Options & ListrContext;
|
|
16
|
+
|
|
15
17
|
export async function createProject(options: Options) {
|
|
16
18
|
console.log(`\n`);
|
|
17
19
|
|
|
@@ -24,43 +26,55 @@ export async function createProject(options: Options) {
|
|
|
24
26
|
|
|
25
27
|
const targetDirectory = path.resolve(process.cwd(), options.directory);
|
|
26
28
|
|
|
27
|
-
const tasks = new Listr(
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
}
|
|
29
|
+
const tasks = new Listr<CreateStylusListrContext>(
|
|
30
|
+
[
|
|
31
|
+
{
|
|
32
|
+
title: `📁 Create project directory ${targetDirectory}`,
|
|
33
|
+
task: async () => await createProjectDirectory(options.directory),
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
title: `🚀 Creating a new Scaffold-Stylus 2 app in ${chalk.green.bold(
|
|
37
|
+
options.directory,
|
|
38
|
+
)}`,
|
|
39
|
+
task: async (ctx, task) => {
|
|
40
|
+
if (ctx.options.extension) {
|
|
41
|
+
task.title = `🚀 Creating a new Scaffold-Stylus 2 app${
|
|
42
|
+
ctx.options.extension
|
|
43
|
+
? ` with ${chalk.green.bold(ctx.options.extension)} extension`
|
|
44
|
+
: ""
|
|
45
|
+
} in ${chalk.green.bold(ctx.options.directory)}`;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
await copyTemplateFiles(options, templateDirectory, targetDirectory);
|
|
49
|
+
},
|
|
48
50
|
},
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
51
|
+
{
|
|
52
|
+
title: `📦 Installing dependencies with yarn, this could take a while`,
|
|
53
|
+
task: async (ctx, task) => {
|
|
54
|
+
if (!!ctx.options.install) {
|
|
55
|
+
await installPackages(targetDirectory, options);
|
|
56
|
+
} else {
|
|
57
|
+
task.skip("Manually skipped");
|
|
58
|
+
}
|
|
59
|
+
},
|
|
57
60
|
},
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
61
|
+
{
|
|
62
|
+
title: "🪄 Formatting Next.js files with prettier",
|
|
63
|
+
task: async (ctx, task) => {
|
|
64
|
+
if (!!ctx.options.install) {
|
|
65
|
+
await prettierFormat(targetDirectory);
|
|
66
|
+
} else {
|
|
67
|
+
task.skip("Skipping because prettier install was skipped");
|
|
68
|
+
}
|
|
69
|
+
},
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
title: `📡 Initializing Git repository`,
|
|
73
|
+
task: async () => await createFirstGitCommit(targetDirectory),
|
|
74
|
+
},
|
|
75
|
+
],
|
|
76
|
+
{ ctx: { options } as CreateStylusListrContext },
|
|
77
|
+
);
|
|
64
78
|
|
|
65
79
|
try {
|
|
66
80
|
await tasks.run();
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ss",
|
|
3
|
-
"version": "0.0
|
|
3
|
+
"version": "0.1.0",
|
|
4
4
|
"private": true,
|
|
5
5
|
"workspaces": {
|
|
6
6
|
"packages": [
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"stylus:format": "yarn workspace @ss/stylus format",
|
|
25
25
|
"stylus:test": "yarn workspace @ss/stylus test",
|
|
26
26
|
"test": "yarn stylus:test",
|
|
27
|
-
"
|
|
27
|
+
"info:networks": "yarn workspace @ss/stylus info:networks",
|
|
28
28
|
"format": "yarn next:format",
|
|
29
29
|
"start": "yarn workspace @ss/nextjs dev",
|
|
30
30
|
"next:lint": "yarn workspace @ss/nextjs lint",
|
|
@@ -9,10 +9,10 @@
|
|
|
9
9
|
"dev": "tsc --watch",
|
|
10
10
|
"start": "node dist/index.js",
|
|
11
11
|
"deploy": "ts-node scripts/deploy_wrapper.ts",
|
|
12
|
-
"
|
|
12
|
+
"info:networks": "ts-node scripts/test_network.ts",
|
|
13
13
|
"export-abi": "ts-node scripts/export_abi.ts",
|
|
14
14
|
"clean-contracts": "git clean -xdf -e .env -e your-contract/ -e node_modules/",
|
|
15
|
-
"test": "
|
|
15
|
+
"test": "ts-node scripts/test.ts",
|
|
16
16
|
"lint": "eslint scripts --ext .ts",
|
|
17
17
|
"lint:fix": "eslint scripts --ext .ts --fix",
|
|
18
18
|
"new-module": "bash scripts/new_module.sh"
|
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
#!/usr/bin/env ts-node
|
|
2
|
+
/**
|
|
3
|
+
* Stylus Cargo Test Runner
|
|
4
|
+
*
|
|
5
|
+
* This script automatically finds and runs tests for all Cargo projects
|
|
6
|
+
* in the stylus directory that have a Cargo.toml file.
|
|
7
|
+
*
|
|
8
|
+
* Features:
|
|
9
|
+
* - Automatically discovers Cargo projects by looking for Cargo.toml files
|
|
10
|
+
* - Excludes scripts, deployments, and node_modules directories
|
|
11
|
+
* - Runs `cargo test` for each project
|
|
12
|
+
* - Shows real-time output during test execution
|
|
13
|
+
* - Provides a comprehensive summary of test results
|
|
14
|
+
* - Exits with appropriate error codes for CI/CD integration
|
|
15
|
+
*
|
|
16
|
+
* Usage:
|
|
17
|
+
* npm run test
|
|
18
|
+
* or
|
|
19
|
+
* ts-node scripts/test.ts
|
|
20
|
+
*/
|
|
21
|
+
import { spawn } from "child_process";
|
|
22
|
+
import { promises as fs } from "fs";
|
|
23
|
+
import * as path from "path";
|
|
24
|
+
|
|
25
|
+
interface TestResult {
|
|
26
|
+
project: string;
|
|
27
|
+
success: boolean;
|
|
28
|
+
output: string;
|
|
29
|
+
error?: string;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Execute a command and return a promise with the result
|
|
34
|
+
*/
|
|
35
|
+
function executeCommand(
|
|
36
|
+
command: string,
|
|
37
|
+
cwd: string,
|
|
38
|
+
): Promise<{ success: boolean; output: string; error?: string }> {
|
|
39
|
+
return new Promise((resolve) => {
|
|
40
|
+
console.log(`\n🔄 Running tests in ${path.basename(cwd)}...`);
|
|
41
|
+
console.log(`Executing: ${command}`);
|
|
42
|
+
|
|
43
|
+
const childProcess = spawn(command, [], {
|
|
44
|
+
cwd,
|
|
45
|
+
shell: true,
|
|
46
|
+
stdio: ["inherit", "pipe", "pipe"],
|
|
47
|
+
});
|
|
48
|
+
|
|
49
|
+
let output = "";
|
|
50
|
+
let errorOutput = "";
|
|
51
|
+
|
|
52
|
+
// Handle stdout
|
|
53
|
+
if (childProcess.stdout) {
|
|
54
|
+
childProcess.stdout.on("data", (data: Buffer) => {
|
|
55
|
+
const chunk = data.toString();
|
|
56
|
+
output += chunk;
|
|
57
|
+
process.stdout.write(chunk); // Show real-time output
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
// Handle stderr
|
|
62
|
+
if (childProcess.stderr) {
|
|
63
|
+
childProcess.stderr.on("data", (data: Buffer) => {
|
|
64
|
+
const chunk = data.toString();
|
|
65
|
+
errorOutput += chunk;
|
|
66
|
+
process.stderr.write(chunk); // Show real-time errors
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
// Handle process completion
|
|
71
|
+
childProcess.on("close", (code: number | null) => {
|
|
72
|
+
const success = code === 0;
|
|
73
|
+
if (success) {
|
|
74
|
+
console.log(
|
|
75
|
+
`✅ Tests completed successfully in ${path.basename(cwd)}!`,
|
|
76
|
+
);
|
|
77
|
+
} else {
|
|
78
|
+
console.log(
|
|
79
|
+
`❌ Tests failed in ${path.basename(cwd)} with exit code ${code}`,
|
|
80
|
+
);
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
resolve({
|
|
84
|
+
success,
|
|
85
|
+
output,
|
|
86
|
+
...(errorOutput && { error: errorOutput }),
|
|
87
|
+
});
|
|
88
|
+
});
|
|
89
|
+
|
|
90
|
+
// Handle process errors
|
|
91
|
+
childProcess.on("error", (error: Error) => {
|
|
92
|
+
console.error(
|
|
93
|
+
`❌ Error running tests in ${path.basename(cwd)}:`,
|
|
94
|
+
error.message,
|
|
95
|
+
);
|
|
96
|
+
resolve({
|
|
97
|
+
success: false,
|
|
98
|
+
output: "",
|
|
99
|
+
error: error.message,
|
|
100
|
+
});
|
|
101
|
+
});
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
/**
|
|
106
|
+
* Check if a directory contains a Cargo.toml file
|
|
107
|
+
*/
|
|
108
|
+
async function hasCargoToml(dirPath: string): Promise<boolean> {
|
|
109
|
+
try {
|
|
110
|
+
await fs.access(path.join(dirPath, "Cargo.toml"));
|
|
111
|
+
return true;
|
|
112
|
+
} catch {
|
|
113
|
+
return false;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
/**
|
|
118
|
+
* Find all Cargo projects in the stylus directory
|
|
119
|
+
*/
|
|
120
|
+
async function findCargoProjects(): Promise<string[]> {
|
|
121
|
+
const stylusDir = path.resolve(__dirname, "..");
|
|
122
|
+
const cargoProjects: string[] = [];
|
|
123
|
+
|
|
124
|
+
try {
|
|
125
|
+
const entries = await fs.readdir(stylusDir, { withFileTypes: true });
|
|
126
|
+
|
|
127
|
+
for (const entry of entries) {
|
|
128
|
+
if (entry.isDirectory()) {
|
|
129
|
+
const dirName = entry.name;
|
|
130
|
+
|
|
131
|
+
// Skip excluded directories
|
|
132
|
+
if (
|
|
133
|
+
dirName === "scripts" ||
|
|
134
|
+
dirName === "deployments" ||
|
|
135
|
+
dirName === "node_modules"
|
|
136
|
+
) {
|
|
137
|
+
continue;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
const dirPath = path.join(stylusDir, dirName);
|
|
141
|
+
|
|
142
|
+
if (await hasCargoToml(dirPath)) {
|
|
143
|
+
cargoProjects.push(dirPath);
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
} catch (error) {
|
|
148
|
+
console.error("Error scanning for Cargo projects:", error);
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
return cargoProjects;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
/**
|
|
155
|
+
* Run tests for all Cargo projects
|
|
156
|
+
*/
|
|
157
|
+
async function runAllTests(): Promise<void> {
|
|
158
|
+
console.log("🚀 Starting Stylus Cargo Tests...\n");
|
|
159
|
+
|
|
160
|
+
const cargoProjects = await findCargoProjects();
|
|
161
|
+
|
|
162
|
+
if (cargoProjects.length === 0) {
|
|
163
|
+
console.log("❗ No Cargo projects found with Cargo.toml files.");
|
|
164
|
+
process.exit(1);
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
console.log(`Found ${cargoProjects.length} Stylus Contract(s):`);
|
|
168
|
+
cargoProjects.forEach((project) => {
|
|
169
|
+
console.log(` - ${path.basename(project)}`);
|
|
170
|
+
});
|
|
171
|
+
console.log("");
|
|
172
|
+
|
|
173
|
+
const results: TestResult[] = [];
|
|
174
|
+
|
|
175
|
+
// Run tests for each project
|
|
176
|
+
for (const projectPath of cargoProjects) {
|
|
177
|
+
const projectName = path.basename(projectPath);
|
|
178
|
+
|
|
179
|
+
const result = await executeCommand("cargo test", projectPath);
|
|
180
|
+
|
|
181
|
+
results.push({
|
|
182
|
+
project: projectName,
|
|
183
|
+
success: result.success,
|
|
184
|
+
output: result.output,
|
|
185
|
+
...(result.error && { error: result.error }),
|
|
186
|
+
});
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
// Print summary
|
|
190
|
+
console.log("\n" + "=".repeat(60));
|
|
191
|
+
console.log("📊 TEST SUMMARY");
|
|
192
|
+
console.log("=".repeat(60));
|
|
193
|
+
|
|
194
|
+
const successful = results.filter((r) => r.success);
|
|
195
|
+
const failed = results.filter((r) => !r.success);
|
|
196
|
+
|
|
197
|
+
console.log(`✅ Successful: ${successful.length}`);
|
|
198
|
+
console.log(`❌ Failed: ${failed.length}`);
|
|
199
|
+
console.log(`📦 Total projects: ${results.length}`);
|
|
200
|
+
|
|
201
|
+
if (successful.length > 0) {
|
|
202
|
+
console.log("\n✅ Successful projects:");
|
|
203
|
+
successful.forEach((result) => {
|
|
204
|
+
console.log(` - ${result.project}`);
|
|
205
|
+
});
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
if (failed.length > 0) {
|
|
209
|
+
console.log("\n❌ Failed projects:");
|
|
210
|
+
failed.forEach((result) => {
|
|
211
|
+
console.log(` - ${result.project}`);
|
|
212
|
+
if (result.error) {
|
|
213
|
+
console.log(` Error: ${result.error.split("\n")[0]}`);
|
|
214
|
+
}
|
|
215
|
+
});
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
// Exit with error code if any tests failed
|
|
219
|
+
if (failed.length > 0) {
|
|
220
|
+
console.log("\n💥 Some tests failed!");
|
|
221
|
+
process.exit(1);
|
|
222
|
+
} else {
|
|
223
|
+
console.log("\n🎉 All tests passed!");
|
|
224
|
+
process.exit(0);
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
// Main execution
|
|
229
|
+
if (require.main === module) {
|
|
230
|
+
runAllTests().catch((error) => {
|
|
231
|
+
console.error("❌ Unexpected error:", error);
|
|
232
|
+
process.exit(1);
|
|
233
|
+
});
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
export { runAllTests, findCargoProjects };
|
|
@@ -3,13 +3,10 @@ import { SUPPORTED_NETWORKS } from "./utils/";
|
|
|
3
3
|
|
|
4
4
|
function testNetworkFunctionality() {
|
|
5
5
|
console.log("🧪 Testing network functionality...\n");
|
|
6
|
-
|
|
7
|
-
const testNetworks = [
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
];
|
|
11
|
-
|
|
12
|
-
testNetworks.forEach(network => {
|
|
6
|
+
|
|
7
|
+
const testNetworks = [...Object.keys(SUPPORTED_NETWORKS)];
|
|
8
|
+
|
|
9
|
+
testNetworks.forEach((network) => {
|
|
13
10
|
const chain = getChain(network);
|
|
14
11
|
if (chain) {
|
|
15
12
|
console.log(`✅ ${network}: ${chain.rpcUrl}`);
|
|
@@ -17,15 +14,21 @@ function testNetworkFunctionality() {
|
|
|
17
14
|
console.log(`❌ ${network}: Not found in viem chains`);
|
|
18
15
|
}
|
|
19
16
|
});
|
|
20
|
-
|
|
17
|
+
|
|
21
18
|
console.log("\n📝 Usage examples:");
|
|
22
|
-
Object.keys(SUPPORTED_NETWORKS).forEach(network => {
|
|
19
|
+
Object.keys(SUPPORTED_NETWORKS).forEach((network) => {
|
|
23
20
|
const chain = getChain(network);
|
|
24
|
-
console.log(
|
|
25
|
-
|
|
21
|
+
console.log(
|
|
22
|
+
` yarn deploy --network ${chain?.name}\t# Deploy to ${chain?.name}`,
|
|
23
|
+
);
|
|
24
|
+
|
|
25
|
+
// TODO: determine which one to use later, for now we use all original names
|
|
26
|
+
// console.log(
|
|
27
|
+
// ` yarn deploy --network ${chain?.alias}\t\t# Deploy to ${chain?.name} (alias)`,
|
|
28
|
+
// );
|
|
26
29
|
});
|
|
27
30
|
}
|
|
28
31
|
|
|
29
32
|
if (require.main === module) {
|
|
30
33
|
testNetworkFunctionality();
|
|
31
|
-
}
|
|
34
|
+
}
|
|
@@ -13,7 +13,7 @@ alloy-primitives = "=0.8.20"
|
|
|
13
13
|
alloy-sol-types = "=0.8.20"
|
|
14
14
|
stylus-sdk = "0.9.0"
|
|
15
15
|
hex = { version = "0.4", default-features = false }
|
|
16
|
-
openzeppelin-stylus = "0.2.0"
|
|
16
|
+
openzeppelin-stylus = "=0.2.0"
|
|
17
17
|
|
|
18
18
|
[dev-dependencies]
|
|
19
19
|
alloy-primitives = { version = "=0.8.20", features = ["sha3-keccak"] }
|
|
@@ -1,2 +1,8 @@
|
|
|
1
|
+
# NOTE: this toolchain is nightly because of openzeppelin requirements
|
|
2
|
+
|
|
1
3
|
[toolchain]
|
|
2
|
-
|
|
4
|
+
# We should use stable here once nitro-testnode is updated and the contracts fit
|
|
5
|
+
# the size limit (issue <https://github.com/OpenZeppelin/rust-contracts-stylus/issues/129>).
|
|
6
|
+
channel = "1.89.0"
|
|
7
|
+
components = ["rust-src", "rustfmt", "clippy"]
|
|
8
|
+
targets = ["wasm32-unknown-unknown"]
|
|
@@ -170,70 +170,46 @@ impl IOwnable for YourContract {
|
|
|
170
170
|
}
|
|
171
171
|
}
|
|
172
172
|
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
//
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
//
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
//
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
// // Initialize with owner
|
|
217
|
-
// let owner_addr = vm.addr(); // Use VM address as owner for testing
|
|
218
|
-
// contract.init(owner_addr);
|
|
219
|
-
|
|
220
|
-
// // Test withdraw (in real scenario, contract would have received ETH)
|
|
221
|
-
// let result = contract.withdraw();
|
|
222
|
-
// assert!(result.is_ok()); // Should not panic since caller is owner
|
|
223
|
-
// }
|
|
224
|
-
|
|
225
|
-
// #[test]
|
|
226
|
-
// fn test_withdraw_not_owner() {
|
|
227
|
-
// let vm = TestVM::default();
|
|
228
|
-
// let mut contract = YourContract::from(&vm);
|
|
229
|
-
|
|
230
|
-
// // Initialize with different owner
|
|
231
|
-
// let owner_addr = Address::from([1u8; 20]);
|
|
232
|
-
// contract.init(owner_addr);
|
|
233
|
-
|
|
234
|
-
// // This test should panic with "Not the Owner" when withdraw is called by non-owner
|
|
235
|
-
// // In a real test environment, you'd want to test this more carefully
|
|
236
|
-
// // but for now we'll just verify the function exists
|
|
237
|
-
// assert_eq!(contract.owner(), owner_addr);
|
|
238
|
-
// }
|
|
239
|
-
// }
|
|
173
|
+
#[cfg(test)]
|
|
174
|
+
mod test {
|
|
175
|
+
use super::*;
|
|
176
|
+
use stylus_sdk::testing::*;
|
|
177
|
+
|
|
178
|
+
#[no_mangle]
|
|
179
|
+
pub unsafe extern "C" fn emit_log(_pointer: *const u8, _len: usize, _: usize) {}
|
|
180
|
+
#[no_mangle]
|
|
181
|
+
pub unsafe extern "C" fn msg_sender(_sender: *mut u8) {}
|
|
182
|
+
|
|
183
|
+
#[test]
|
|
184
|
+
fn test_your_contract() {
|
|
185
|
+
let vm = TestVM::default();
|
|
186
|
+
let mut contract = YourContract::from(&vm);
|
|
187
|
+
|
|
188
|
+
// Test initialization
|
|
189
|
+
let owner_addr = Address::from([1u8; 20]);
|
|
190
|
+
let _ = contract.constructor(owner_addr);
|
|
191
|
+
|
|
192
|
+
assert_eq!(contract.owner(), owner_addr);
|
|
193
|
+
assert_eq!(contract.greeting(), "Building Unstoppable Apps!!!");
|
|
194
|
+
assert_eq!(contract.premium(), false);
|
|
195
|
+
assert_eq!(contract.total_counter(), U256::ZERO);
|
|
196
|
+
|
|
197
|
+
// Test setting greeting without payment
|
|
198
|
+
contract.set_greeting("Hello World".to_string());
|
|
199
|
+
assert_eq!(contract.greeting(), "Hello World");
|
|
200
|
+
assert_eq!(contract.premium(), false);
|
|
201
|
+
assert_eq!(contract.total_counter(), U256::from(1));
|
|
202
|
+
|
|
203
|
+
// Test user greeting counter
|
|
204
|
+
let sender = vm.msg_sender();
|
|
205
|
+
assert_eq!(contract.user_greeting_counter(sender), U256::from(1));
|
|
206
|
+
|
|
207
|
+
// Test setting greeting with payment
|
|
208
|
+
vm.set_value(U256::from(100));
|
|
209
|
+
contract.set_greeting("Premium Hello".to_string());
|
|
210
|
+
assert_eq!(contract.greeting(), "Premium Hello");
|
|
211
|
+
assert_eq!(contract.premium(), true);
|
|
212
|
+
assert_eq!(contract.total_counter(), U256::from(2));
|
|
213
|
+
assert_eq!(contract.user_greeting_counter(sender), U256::from(2));
|
|
214
|
+
}
|
|
215
|
+
}
|
package/templates/base/readme.md
CHANGED
|
@@ -189,7 +189,7 @@ To deploy your contracts to other networks (other than the default local Nitro d
|
|
|
189
189
|
This template supports Arbitrum networks only. You can test which networks are available and their RPC URLs:
|
|
190
190
|
|
|
191
191
|
```bash
|
|
192
|
-
yarn
|
|
192
|
+
yarn info:networks
|
|
193
193
|
```
|
|
194
194
|
|
|
195
195
|
This will show you all supported networks and their corresponding RPC endpoints.
|