Compare commits
No commits in common. "6da791d7bb358230ad50799d230038090e0c5c23" and "e667051a81e6391137f7e4d794c92f71c296c026" have entirely different histories.
6da791d7bb
...
e667051a81
@ -18,33 +18,28 @@ die Methoden mit Daten ausprobieren.
|
||||
|
||||
## Build -> Test -> Run ##
|
||||
|
||||
In einem IDE in dem Repo zu diesem Ordner navigieren.
|
||||
</br>
|
||||
Eine bash-Konsole aufmachen und folgende Befehle ausführen:
|
||||
Navigiere im IDE zum [rust](/)-Ordner in deinem IDE.
|
||||
Öffne eine bash-Konsole und führe folgende Befehle aus:
|
||||
|
||||
Wer **make** installiert hat:
|
||||
Wer **make** hat:
|
||||
```bash
|
||||
# Zum Kompilieren (nur nach Änderungen nötig):
|
||||
# zum Kompilieren (nur nach Änderungen nötig):
|
||||
make build;
|
||||
# Zur Ausführung der unit tests:
|
||||
# zur Ausführung der unit tests:
|
||||
make tests;
|
||||
# Zur Ausführung des Programms
|
||||
# zur Ausführung des Programms
|
||||
make run;
|
||||
# Zur Bereinigung aller Artefakte
|
||||
# zur Bereinigung aller Artefakte
|
||||
make clean;
|
||||
```
|
||||
Wer _kein_ make hat:
|
||||
```bash
|
||||
# Zum Kompilieren (nur nach Änderungen nötig):
|
||||
# zum Kompilieren (nur nach Änderungen nötig):
|
||||
cargo build --release;
|
||||
# Zur Ausführung der unit tests:
|
||||
# zur Ausführung der unit tests:
|
||||
cargo test;
|
||||
# Zur Ausführung des Programms:
|
||||
./dist/ads2
|
||||
# bzw. ads2.exe für Windows.
|
||||
# Alternativ kann man den gebauten Artefakt per doppelklicken ausführen.
|
||||
# zur Ausführung des Programms
|
||||
dist/ads2 # oder den gebauten Artefakt mit Maus doppelklicken
|
||||
```
|
||||
Der `build` Schritt baut einen binären Artefakt
|
||||
Der `build` Schritt baut einen binären Artefekt
|
||||
und kopiert dies nach dem [./dist/*](dist/) Ordner.
|
||||
|
||||
Man kann auch mit einem guten Editor/IDE die Tests einzeln ausführen.
|
||||
|
@ -31,28 +31,6 @@ fn fixture_graph2() -> graph::Graph<i32> {
|
||||
);
|
||||
}
|
||||
|
||||
#[fixture]
|
||||
fn fixture_graph3() -> graph::Graph<i32> {
|
||||
return graph::Graph::<i32>::new(
|
||||
vec![1,2,3,4,5,6,7,8],
|
||||
vec![
|
||||
(1,2),
|
||||
(1,3),
|
||||
(2,4),
|
||||
(2,5),
|
||||
(3,5),
|
||||
(3,6),
|
||||
(3,8),
|
||||
(4,5),
|
||||
(4,7),
|
||||
(5,1),
|
||||
(5,8),
|
||||
(6,8),
|
||||
(7,8),
|
||||
],
|
||||
);
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------
|
||||
// Test Graph
|
||||
// ----------------------------------------------------------------
|
||||
@ -60,12 +38,13 @@ fn fixture_graph3() -> graph::Graph<i32> {
|
||||
#[rstest]
|
||||
#[case(fixture_graph1(), vec![vec![1], vec![3], vec![2,4]])]
|
||||
#[case(fixture_graph2(), vec![vec![1], vec![6], vec![7], vec![2,3,4,5]])]
|
||||
#[case(fixture_graph3(), vec![vec![8], vec![7], vec![6], vec![3, 5, 4, 2, 1]])]
|
||||
fn test_tarjan<T>(#[case] gph: graph::Graph<T>, #[case] expected: Vec<Vec<T>>)
|
||||
where T: Eq + Hash + Clone + Display
|
||||
{
|
||||
let components = tarjan::tarjan_algorithm(&gph);
|
||||
assert_components_eq(&components, &expected)
|
||||
assert_components_eq(
|
||||
&tarjan::tarjan_algorithm(&gph),
|
||||
&expected
|
||||
)
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------
|
||||
|
Loading…
x
Reference in New Issue
Block a user