File tree 3 files changed +28
-8
lines changed
3 files changed +28
-8
lines changed Original file line number Diff line number Diff line change @@ -136,3 +136,11 @@ jobs:
136
136
cache-dependency-path : website/package-lock.json
137
137
- run : npm ci
138
138
- run : npm run fmt:check
139
+
140
+ snforge-init :
141
+ runs-on : ubuntu-latest
142
+ steps :
143
+ - uses : actions/checkout@v4
144
+ - uses : dtolnay/rust-toolchain@stable
145
+ - uses : foundry-rs/setup-snfoundry@v3
146
+ - run : cargo test --profile=ci --package scarb --test snforge_init new_simple -- --ignored
Original file line number Diff line number Diff line change @@ -217,12 +217,12 @@ fn mk(
217
217
Ok ( ( ) )
218
218
}
219
219
220
- fn init_snforge ( name : PackageName , target_dir : Utf8PathBuf , config : & Config ) -> Result < ( ) > {
221
- let target_dir = target_dir. parent ( ) . context ( "package must have a parent" ) ?;
220
+ fn init_snforge ( name : PackageName , root_dir : Utf8PathBuf , config : & Config ) -> Result < ( ) > {
222
221
let mut process = Command :: new ( "snforge" )
223
- . arg ( "init" )
224
- . arg ( name. as_str ( ) )
225
- . current_dir ( target_dir)
222
+ . arg ( "new" )
223
+ . args ( [ "--name" , name. as_str ( ) ] )
224
+ . arg ( "--overwrite" )
225
+ . arg ( root_dir. as_str ( ) )
226
226
. envs ( get_env_vars ( config, None ) ?)
227
227
. stderr ( Stdio :: inherit ( ) )
228
228
. stdout ( Stdio :: inherit ( ) )
Original file line number Diff line number Diff line change @@ -3,14 +3,23 @@ use assert_fs::TempDir;
3
3
use scarb:: core:: TomlManifest ;
4
4
use scarb_test_support:: command:: Scarb ;
5
5
use scarb_test_support:: fsx:: AssertFsUtf8Ext ;
6
+ use test_case:: test_case;
6
7
7
- #[ test]
8
+ #[ test_case( None ) ]
9
+ #[ test_case( Some ( "simple_project" ) ) ]
8
10
#[ ignore = "run this test by name" ]
9
- fn new_simple ( ) {
11
+ fn new_simple ( package_name : Option < & str > ) {
10
12
let pt = TempDir :: new ( ) . unwrap ( ) ;
11
13
14
+ let name_args = if let Some ( package_name) = package_name {
15
+ vec ! [ "--name" , package_name]
16
+ } else {
17
+ vec ! [ ]
18
+ } ;
19
+
12
20
Scarb :: quick_snapbox ( )
13
21
. arg ( "new" )
22
+ . args ( name_args)
14
23
. arg ( "hello" )
15
24
. args ( [ "--test-runner" , "starknet-foundry" ] )
16
25
. current_dir ( & pt)
@@ -27,7 +36,10 @@ fn new_simple() {
27
36
assert ! ( t. child( ".git" ) . is_dir( ) ) ;
28
37
29
38
let toml_manifest = TomlManifest :: read_from_path ( t. child ( "Scarb.toml" ) . utf8_path ( ) ) . unwrap ( ) ;
30
- assert_eq ! ( toml_manifest. package. unwrap( ) . name. as_str( ) , "hello" ) ;
39
+ assert_eq ! (
40
+ toml_manifest. package. unwrap( ) . name. as_str( ) ,
41
+ package_name. unwrap_or( "hello" )
42
+ ) ;
31
43
let deps = toml_manifest. dependencies . unwrap ( ) ;
32
44
assert_eq ! ( deps. len( ) , 1 ) ;
33
45
assert ! ( deps. contains_key( "starknet" ) ) ;
You can’t perform that action at this time.
0 commit comments