create-rock 0.11.2 → 0.11.4

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.
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"e2e.test.d.ts","sourceRoot":"","sources":["../../e2e/e2e.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,98 @@
1
+ import { existsSync, mkdirSync, readFileSync, rmSync } from 'node:fs';
2
+ import path from 'node:path';
3
+ import { execAsync, getRandomString, getTempDirectory, } from '@rock-js/test-helpers';
4
+ import { beforeEach, describe, expect, it } from 'vitest';
5
+ /**
6
+ * Perform following commands to test e2e locally (on macOS):
7
+ * pnpm build
8
+ * pnpm verdaccio:init (keep it running)
9
+ * rm -rf ~/Library/Caches/pnpm/dlx/
10
+ * pnpm e2e
11
+ */
12
+ const VERDACCIO_REGISTRY_URL = 'http://localhost:4873';
13
+ const CREATE_APP_COMMAND = `pnpm create rock`;
14
+ const ROOT_DIR = path.resolve(__dirname, '../../..');
15
+ const TEMP_DIR = getTempDirectory('e2e-deploys');
16
+ const execArgs = {
17
+ cwd: TEMP_DIR,
18
+ env: { ...process.env, NPM_CONFIG_REGISTRY: VERDACCIO_REGISTRY_URL },
19
+ };
20
+ beforeEach(() => {
21
+ mkdirSync(TEMP_DIR, { recursive: true });
22
+ });
23
+ describe('create-app command', { timeout: 30_000 }, () => {
24
+ it('should create a new project from default template', { timeout: 30_000 }, async () => {
25
+ const projectName = `test-default-template-${getRandomString(6)}`;
26
+ const projectPath = path.resolve(TEMP_DIR, projectName);
27
+ if (existsSync(projectPath)) {
28
+ rmSync(projectPath, { recursive: true, force: true });
29
+ }
30
+ await execAsync(`${CREATE_APP_COMMAND} ${projectName} --template=default --platform=ios --platform=android --bundler=metro --remote-cache-provider=github-actions`, execArgs);
31
+ const packageJsonPath = path.join(projectPath, 'package.json');
32
+ expect(existsSync(packageJsonPath)).toBe(true);
33
+ const packageJson = JSON.parse(readFileSync(packageJsonPath, 'utf-8'));
34
+ // TODO: fix template application
35
+ expect(packageJson.name).toBe(projectName);
36
+ expect(packageJson.version).toBe('1.0.0');
37
+ expect(packageJson.private).toBe(true);
38
+ expect(packageJson.description).not.toBeDefined();
39
+ expect(packageJson.author).not.toBeDefined();
40
+ expect(packageJson.license).not.toBeDefined();
41
+ expect(packageJson.repository).not.toBeDefined();
42
+ expect(packageJson.bugs).not.toBeDefined();
43
+ expect(packageJson.homepage).not.toBeDefined();
44
+ expect(packageJson.keywords).not.toBeDefined();
45
+ expect(packageJson.packageManager).not.toBeDefined();
46
+ expect(packageJson.publishConfig).not.toBeDefined();
47
+ });
48
+ it('should create a new project from npm template', async () => {
49
+ const projectName = `test-npm-template-${getRandomString(6)}`;
50
+ const projectPath = path.resolve(TEMP_DIR, projectName);
51
+ if (existsSync(projectPath)) {
52
+ rmSync(projectPath, { recursive: true, force: true });
53
+ }
54
+ await execAsync(`${CREATE_APP_COMMAND} ${projectName} --template=@rock-js/template-default --platform=ios --platform=android --bundler=metro --remote-cache-provider=github-actions`, execArgs);
55
+ const packageJsonPath = path.join(projectPath, 'package.json');
56
+ expect(existsSync(packageJsonPath)).toBe(true);
57
+ const packageJson = JSON.parse(readFileSync(packageJsonPath, 'utf-8'));
58
+ // TODO: fix template application
59
+ expect(packageJson.name).toBe(projectName);
60
+ expect(packageJson.version).toBe('1.0.0');
61
+ expect(packageJson.private).toBe(true);
62
+ expect(packageJson.description).not.toBeDefined();
63
+ expect(packageJson.author).not.toBeDefined();
64
+ expect(packageJson.license).not.toBeDefined();
65
+ expect(packageJson.repository).not.toBeDefined();
66
+ expect(packageJson.bugs).not.toBeDefined();
67
+ expect(packageJson.homepage).not.toBeDefined();
68
+ expect(packageJson.keywords).not.toBeDefined();
69
+ expect(packageJson.packageManager).not.toBeDefined();
70
+ expect(packageJson.publishConfig).not.toBeDefined();
71
+ });
72
+ it('should create a new project from local directory template', { timeout: 30_000 }, async () => {
73
+ const projectName = `test-local-dir-template-${getRandomString(6)}`;
74
+ const projectPath = path.resolve(TEMP_DIR, projectName);
75
+ if (existsSync(projectPath)) {
76
+ rmSync(projectPath, { recursive: true, force: true });
77
+ }
78
+ const templatePath = `${ROOT_DIR}/templates/rock-template-default`;
79
+ await execAsync(`${CREATE_APP_COMMAND} ${projectName} --template="${templatePath}" --platform=ios --platform=android --bundler=metro --remote-cache-provider=github-actions`, execArgs);
80
+ const packageJsonPath = path.join(projectPath, 'package.json');
81
+ expect(existsSync(packageJsonPath)).toBe(true);
82
+ const packageJson = JSON.parse(readFileSync(packageJsonPath, 'utf-8'));
83
+ // TODO: fix template application
84
+ expect(packageJson.name).toBe(projectName);
85
+ expect(packageJson.version).toBe('1.0.0');
86
+ expect(packageJson.private).toBe(true);
87
+ expect(packageJson.description).not.toBeDefined();
88
+ expect(packageJson.author).not.toBeDefined();
89
+ expect(packageJson.license).not.toBeDefined();
90
+ expect(packageJson.repository).not.toBeDefined();
91
+ expect(packageJson.bugs).not.toBeDefined();
92
+ expect(packageJson.homepage).not.toBeDefined();
93
+ expect(packageJson.keywords).not.toBeDefined();
94
+ expect(packageJson.packageManager).not.toBeDefined();
95
+ expect(packageJson.publishConfig).not.toBeDefined();
96
+ });
97
+ });
98
+ //# sourceMappingURL=e2e.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"e2e.test.js","sourceRoot":"","sources":["../../e2e/e2e.test.ts"],"names":[],"mappings":"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"}