Skip to content

Commit b8914e3

Browse files
committed
test: migrate tree_graph_features to snapbox
1 parent 0fe23ca commit b8914e3

File tree

1 file changed

+99
-112
lines changed

1 file changed

+99
-112
lines changed

tests/testsuite/tree_graph_features.rs

+99-112
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
//! Tests for the `cargo tree` command with -e features option.
22
3-
#![allow(deprecated)]
4-
53
use cargo_test_support::project;
64
use cargo_test_support::registry::{Dependency, Package};
5+
use cargo_test_support::str;
76

87
#[cargo_test]
98
fn dep_feature_various() {
@@ -52,41 +51,40 @@ fn dep_feature_various() {
5251
.build();
5352

5453
p.cargo("tree -e features")
55-
.with_stdout(
56-
"\
54+
.with_stdout_data(str![[r#"
5755
foo v0.1.0 ([..]/foo)
5856
├── nodefaultdep v1.0.0
59-
├── defaultdep feature \"default\"
57+
├── defaultdep feature "default"
6058
│ ├── defaultdep v1.0.0
61-
│ │ └── optdep feature \"default\"
59+
│ │ └── optdep feature "default"
6260
│ │ ├── optdep v1.0.0
63-
│ │ └── optdep feature \"cat\"
61+
│ │ └── optdep feature "cat"
6462
│ │ └── optdep v1.0.0
65-
│ └── defaultdep feature \"f1\"
63+
│ └── defaultdep feature "f1"
6664
│ ├── defaultdep v1.0.0 (*)
67-
│ └── defaultdep feature \"optdep\"
65+
│ └── defaultdep feature "optdep"
6866
│ └── defaultdep v1.0.0 (*)
69-
├── nameddep feature \"default\"
67+
├── nameddep feature "default"
7068
│ ├── nameddep v1.0.0
71-
│ │ └── serde feature \"default\"
69+
│ │ └── serde feature "default"
7270
│ │ └── serde v1.0.0
73-
│ │ └── serde_derive feature \"default\"
71+
│ │ └── serde_derive feature "default"
7472
│ │ └── serde_derive v1.0.0
75-
│ └── nameddep feature \"serde-stuff\"
73+
│ └── nameddep feature "serde-stuff"
7674
│ ├── nameddep v1.0.0 (*)
77-
│ ├── nameddep feature \"serde\"
75+
│ ├── nameddep feature "serde"
7876
│ │ └── nameddep v1.0.0 (*)
79-
│ └── serde feature \"derive\"
77+
│ └── serde feature "derive"
8078
│ ├── serde v1.0.0 (*)
81-
│ └── serde feature \"serde_derive\"
79+
│ └── serde feature "serde_derive"
8280
│ └── serde v1.0.0 (*)
83-
├── nameddep feature \"serde\" (*)
84-
└── nameddep feature \"vehicle\"
81+
├── nameddep feature "serde" (*)
82+
└── nameddep feature "vehicle"
8583
├── nameddep v1.0.0 (*)
86-
└── nameddep feature \"car\"
84+
└── nameddep feature "car"
8785
└── nameddep v1.0.0 (*)
88-
",
89-
)
86+
87+
"#]])
9088
.run();
9189
}
9290

@@ -135,38 +133,36 @@ fn graph_features_ws_interdependent() {
135133
.build();
136134

137135
p.cargo("tree -e features")
138-
.with_stdout(
139-
"\
136+
.with_stdout_data(str![[r#"
140137
a v0.1.0 ([..]/foo/a)
141-
├── b feature \"default\" (command-line)
138+
├── b feature "default" (command-line)
142139
│ ├── b v0.1.0 ([..]/foo/b)
143-
│ └── b feature \"feat1\"
140+
│ └── b feature "feat1"
144141
│ └── b v0.1.0 ([..]/foo/b)
145-
└── b feature \"feat2\"
142+
└── b feature "feat2"
146143
└── b v0.1.0 ([..]/foo/b)
147144
148145
b v0.1.0 ([..]/foo/b)
149-
",
150-
)
146+
147+
"#]])
151148
.run();
152149

153150
p.cargo("tree -e features -i a -i b")
154-
.with_stdout(
155-
"\
151+
.with_stdout_data(str![[r#"
156152
a v0.1.0 ([..]/foo/a)
157-
├── a feature \"a1\"
158-
│ └── a feature \"default\" (command-line)
159-
└── a feature \"default\" (command-line)
153+
├── a feature "a1"
154+
│ └── a feature "default" (command-line)
155+
└── a feature "default" (command-line)
160156
161157
b v0.1.0 ([..]/foo/b)
162-
├── b feature \"default\" (command-line)
158+
├── b feature "default" (command-line)
163159
│ └── a v0.1.0 ([..]/foo/a) (*)
164-
├── b feature \"feat1\"
165-
│ └── b feature \"default\" (command-line) (*)
166-
└── b feature \"feat2\"
160+
├── b feature "feat1"
161+
│ └── b feature "default" (command-line) (*)
162+
└── b feature "feat2"
167163
└── a v0.1.0 ([..]/foo/a) (*)
168-
",
169-
)
164+
165+
"#]])
170166
.run();
171167
}
172168

@@ -202,90 +198,84 @@ fn slash_feature_name() {
202198
.build();
203199

204200
p.cargo("tree -e features --features f1")
205-
.with_stdout(
206-
"\
201+
.with_stdout_data(str![[r#"
207202
foo v0.1.0 ([..]/foo)
208-
├── notopt feature \"default\"
203+
├── notopt feature "default"
209204
│ └── notopt v1.0.0
210-
└── opt feature \"default\"
205+
└── opt feature "default"
211206
└── opt v1.0.0
212-
",
213-
)
207+
208+
"#]])
214209
.run();
215210

216211
p.cargo("tree -e features --features f1 -i foo")
217-
.with_stdout(
218-
"\
212+
.with_stdout_data(str![[r#"
219213
foo v0.1.0 ([..]/foo)
220-
├── foo feature \"default\" (command-line)
221-
├── foo feature \"f1\" (command-line)
222-
└── foo feature \"opt\"
223-
└── foo feature \"f1\" (command-line)
224-
",
225-
)
214+
├── foo feature "default" (command-line)
215+
├── foo feature "f1" (command-line)
216+
└── foo feature "opt"
217+
└── foo feature "f1" (command-line)
218+
219+
"#]])
226220
.run();
227221

228222
p.cargo("tree -e features --features f1 -i notopt")
229-
.with_stdout(
230-
"\
223+
.with_stdout_data(str![[r#"
231224
notopt v1.0.0
232-
├── notopt feature \"animal\"
233-
│ └── foo feature \"f1\" (command-line)
234-
├── notopt feature \"cat\"
235-
│ └── notopt feature \"animal\" (*)
236-
└── notopt feature \"default\"
225+
├── notopt feature "animal"
226+
│ └── foo feature "f1" (command-line)
227+
├── notopt feature "cat"
228+
│ └── notopt feature "animal" (*)
229+
└── notopt feature "default"
237230
└── foo v0.1.0 ([..]/foo)
238-
├── foo feature \"default\" (command-line)
239-
├── foo feature \"f1\" (command-line)
240-
└── foo feature \"opt\"
241-
└── foo feature \"f1\" (command-line)
242-
",
243-
)
231+
├── foo feature "default" (command-line)
232+
├── foo feature "f1" (command-line)
233+
└── foo feature "opt"
234+
└── foo feature "f1" (command-line)
235+
236+
"#]])
244237
.run();
245238

246239
p.cargo("tree -e features --features notopt/animal -i notopt")
247-
.with_stdout(
248-
"\
240+
.with_stdout_data(str![[r#"
249241
notopt v1.0.0
250-
├── notopt feature \"animal\" (command-line)
251-
├── notopt feature \"cat\"
252-
│ └── notopt feature \"animal\" (command-line)
253-
└── notopt feature \"default\"
242+
├── notopt feature "animal" (command-line)
243+
├── notopt feature "cat"
244+
│ └── notopt feature "animal" (command-line)
245+
└── notopt feature "default"
254246
└── foo v0.1.0 ([..]/foo)
255-
└── foo feature \"default\" (command-line)
256-
",
257-
)
247+
└── foo feature "default" (command-line)
248+
249+
"#]])
258250
.run();
259251

260252
p.cargo("tree -e features --all-features")
261-
.with_stdout(
262-
"\
253+
.with_stdout_data(str![[r#"
263254
foo v0.1.0 ([..]/foo)
264-
├── notopt feature \"default\"
255+
├── notopt feature "default"
265256
│ └── notopt v1.0.0
266-
├── opt feature \"default\"
257+
├── opt feature "default"
267258
│ └── opt v1.0.0
268-
└── opt2 feature \"default\"
259+
└── opt2 feature "default"
269260
└── opt2 v1.0.0
270-
",
271-
)
261+
262+
"#]])
272263
.run();
273264

274265
p.cargo("tree -e features --all-features -i opt2")
275-
.with_stdout(
276-
"\
266+
.with_stdout_data(str![[r#"
277267
opt2 v1.0.0
278-
└── opt2 feature \"default\"
268+
└── opt2 feature "default"
279269
└── foo v0.1.0 ([..]/foo)
280-
├── foo feature \"default\" (command-line)
281-
├── foo feature \"f1\" (command-line)
282-
│ └── foo feature \"f2\" (command-line)
283-
├── foo feature \"f2\" (command-line)
284-
├── foo feature \"opt\" (command-line)
285-
│ └── foo feature \"f1\" (command-line) (*)
286-
└── foo feature \"opt2\" (command-line)
287-
",
288-
)
270+
├── foo feature "default" (command-line)
271+
├── foo feature "f1" (command-line)
272+
│ └── foo feature "f2" (command-line)
273+
├── foo feature "f2" (command-line)
274+
├── foo feature "opt" (command-line)
275+
│ └── foo feature "f1" (command-line) (*)
276+
└── foo feature "opt2" (command-line)
277+
278+
"#]])
289279
.run();
290280
}
291281

@@ -330,35 +320,32 @@ fn features_enables_inactive_target() {
330320
.file("src/lib.rs", "")
331321
.build();
332322
p.cargo("tree -e features")
333-
.with_stdout(
334-
"\
323+
.with_stdout_data(str![[r#"
335324
foo v0.1.0 ([..]/foo)
336-
└── dep2 feature \"default\"
325+
└── dep2 feature "default"
337326
└── dep2 v1.0.0
338-
",
339-
)
327+
328+
"#]])
340329
.run();
341330
p.cargo("tree -e features --all-features")
342-
.with_stdout(
343-
"\
331+
.with_stdout_data(str![[r#"
344332
foo v0.1.0 ([..]/foo)
345-
└── dep2 feature \"default\"
333+
└── dep2 feature "default"
346334
└── dep2 v1.0.0
347-
",
348-
)
335+
336+
"#]])
349337
.run();
350338
p.cargo("tree -e features --all-features --target=all")
351-
.with_stdout(
352-
"\
339+
.with_stdout_data(str![[r#"
353340
foo v0.1.0 ([..]/foo)
354-
├── dep1 feature \"default\"
341+
├── dep1 feature "default"
355342
│ └── dep1 v1.0.0
356-
├── dep2 feature \"default\"
343+
├── dep2 feature "default"
357344
│ └── dep2 v1.0.0
358-
│ └── optdep feature \"default\"
345+
│ └── optdep feature "default"
359346
│ └── optdep v1.0.0
360-
└── optdep feature \"default\" (*)
361-
",
362-
)
347+
└── optdep feature "default" (*)
348+
349+
"#]])
363350
.run();
364351
}

0 commit comments

Comments
 (0)