use super::*;
#[test]
fn full_convert() {
let test_values = [
(
"PolyTrack14p9i0XLjMgsD1nSz23q8JF3jMQ3dPQn907i8NTfGh7OmeEz13A9AAw30xwA",
"98f841aaa41609df987c1de7f086d8884f1825d43d3318cbe7bbf5da372775a3",
),
(
"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Mf9ikbdS83xakJOneuQ5MegO7v4dq7GaCscm9BbPSB9r7LvpXfMCz6s1kfK3D9D6setrBBLrsDepWNu6s1y66POl1jKGirQHeHPB4857o0X0frwfzFclLenzL1P6uxL1iVq42tv6rJe4D08zJXdMVx8UbhfWTBSflmDVRdneTt4ODWfGzaEfBJPqJt0IfcrtBvFe5Mu9Bd7qSRMXTPHLvIeNip7LNldxCxr83lnzkYyjq01YoMkYzyu09elNabHGxy5LzijnPbWQtWSSiJ5DNLGhovRGIOZ578GzeYetKlPgU7cp7tnadTDB44vwv30WPXaeICDO9EkSDxfJdTjYKYZyX9YSeDre6filf7tOG9iFy1MqRuIhwReUY3kZu2mdpsCzTsSWYFrygrRBgsIQHneCfi7nbqGZW8kenXXEOnjEiprWHfZTfCb1TMtOLNVEFO6joiNOe5btDN0tp3CGANh82fYaz9WxW721bFveD7Yg9aYZ4elZTtR5uhBuN9aekHLIfPGxHent6RYs0HNV8LrffgCVd7u",
"2289590b7f519c4ee6bc9b605d6e3ee9c78009d636c8d0ea7aaeee324678b9a4",
),
];
for (code, id) in test_values {
let result = export_to_id(code);
assert_eq!(result, Some(id.to_string()));
}
}
#[test]
fn track_decode() {
let test_values = [
(
"PolyTrack14p9i0XLjMgsD1nSz23q8JF3jMQ3dPQn907i8NTfGh7OmeEz13A9AAw30xwA",
Track {
author: Some("".to_string()),
name: "Testing".to_string(),
last_modified: None,
track_data: vec![
0, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 5, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0,
],
},
),
(
"PolyTrack14pdDBHsDCCDDAA9XyEJxwxyyWt4KGYDx6NPAjBy8gJk4e1rvnwlaOF91nOkp0Hf9ieu93stpklj5orZ62LpjpMPO9XygSY2CrD9DP0k9q0iYQJGe9awfiScVgf3Kx1ep3sBZtCWdbaaJcGLm7QRB0YMJ4PwPuORa",
Track {
author: Some("Ireozar".to_string()),
name: "lsdkghlkgsdgriugh".to_string(),
last_modified: None,
track_data: vec![
0, 28, 152, 255, 255, 255, 4, 0, 0, 0, 208, 255, 255, 255, 21, 5, 1, 0, 0, 0,
8, 0, 28, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 8, 0, 24, 0, 0, 0, 8, 0, 20, 0,
0, 0, 8, 0, 16, 0, 0, 0, 8, 0, 8, 0, 0, 0, 8, 0, 4, 0, 0, 0, 36, 2, 0, 0, 0, 8,
0, 0, 0, 0, 0, 0, 0, 20, 0, 0, 0, 146, 1, 0, 0, 0, 12, 0, 12, 1, 0, 2,
],
},
),
];
for (code, track) in test_values {
let result = decode_track_code(code);
assert_eq!(result, Some(track));
}
}
#[test]
fn track_encode() {
let test_values = [
(
Track {
author: Some("".to_string()),
name: "Testing".to_string(),
last_modified: None,
track_data: vec![
0, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 5, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0,
],
},
"PolyTrack14p9i0XLjMgsD1nSz23q8JF3jMQ3dPQn907i8NTfGh7OmeEz13A9AAw30xwA",
),
(
Track {
author: Some("Ireozar".to_string()),
name: "lsdkghlkgsdgriugh".to_string(),
last_modified: None,
track_data: vec![
0, 28, 152, 255, 255, 255, 4, 0, 0, 0, 208, 255, 255, 255, 21, 5, 1, 0, 0, 0,
8, 0, 28, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 8, 0, 24, 0, 0, 0, 8, 0, 20, 0,
0, 0, 8, 0, 16, 0, 0, 0, 8, 0, 8, 0, 0, 0, 8, 0, 4, 0, 0, 0, 36, 2, 0, 0, 0, 8,
0, 0, 0, 0, 0, 0, 0, 20, 0, 0, 0, 146, 1, 0, 0, 0, 12, 0, 12, 1, 0, 2,
],
},
"PolyTrack14pdDBHsDCCDDAA9XyEJxwxyyWt4KGYDx6NPAjBy8gJk4e1rvnwlaOF91nOkp0Hf9ieu93stpklj5orZ62LpjpMPO9XygSY2CrD9DP0k9q0iYQJGe9awfiScVgf3Kx1ep3sBZtCWdbaaJcGLm7QRB0YMJ4PwPuORa",
),
];
for (track, code) in test_values {
let result = encode_track_code(&track);
assert_eq!(result, Some(code.to_string()));
}
}
#[test]
fn data_decode() {
let test_values = [(
vec![
0, 28, 152, 255, 255, 255, 4, 0, 0, 0, 208, 255, 255, 255, 21, 5, 1, 0, 0, 0, 8, 0, 28,
0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 8, 0, 24, 0, 0, 0, 8, 0, 20, 0, 0, 0, 8, 0, 16, 0,
0, 0, 8, 0, 8, 0, 0, 0, 8, 0, 4, 0, 0, 0, 36, 2, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 20,
0, 0, 0, 146, 1, 0, 0, 0, 12, 0, 12, 1, 0, 2,
],
TrackInfo {
env: Environment::Summer,
sun_dir: 28,
min_x: -104,
min_y: 4,
min_z: -48,
data_bytes: 21,
parts: vec![
Part {
id: 5,
amount: 1,
blocks: vec![Block {
x: 8,
y: 0,
z: 28,
rotation: 0,
dir: Direction::YPos,
color: 0,
cp_order: None,
start_order: Some(0),
}],
},
Part {
id: 0,
amount: 5,
blocks: vec![
Block {
x: 8,
y: 0,
z: 24,
rotation: 0,
dir: Direction::YPos,
color: 0,
cp_order: None,
start_order: None,
},
Block {
x: 8,
y: 0,
z: 20,
rotation: 0,
dir: Direction::YPos,
color: 0,
cp_order: None,
start_order: None,
},
Block {
x: 8,
y: 0,
z: 16,
rotation: 0,
dir: Direction::YPos,
color: 0,
cp_order: None,
start_order: None,
},
Block {
x: 8,
y: 0,
z: 8,
rotation: 0,
dir: Direction::YPos,
color: 0,
cp_order: None,
start_order: None,
},
Block {
x: 8,
y: 0,
z: 4,
rotation: 0,
dir: Direction::YPos,
color: 0,
cp_order: None,
start_order: None,
},
],
},
Part {
id: 36,
amount: 2,
blocks: vec![
Block {
x: 8,
y: 0,
z: 0,
rotation: 0,
dir: Direction::YPos,
color: 0,
cp_order: None,
start_order: None,
},
Block {
x: 0,
y: 0,
z: 20,
rotation: 0,
dir: Direction::YPos,
color: 0,
cp_order: None,
start_order: None,
},
],
},
Part {
id: 146,
amount: 1,
blocks: vec![Block {
x: 12,
y: 0,
z: 12,
rotation: 1,
dir: Direction::YPos,
color: 2,
cp_order: None,
start_order: None,
}],
},
],
},
)];
for (data, track_data) in test_values {
let result = decode_track_data(&data);
assert_eq!(result, Some(track_data));
}
}
#[test]
fn data_encode() {
let test_values = [(
TrackInfo {
env: Environment::Summer,
sun_dir: 28,
min_x: -104,
min_y: 4,
min_z: -48,
data_bytes: 21,
parts: vec![
Part {
id: 5,
amount: 1,
blocks: vec![Block {
x: 8,
y: 0,
z: 28,
rotation: 0,
dir: Direction::YPos,
color: 0,
cp_order: None,
start_order: Some(0),
}],
},
Part {
id: 0,
amount: 5,
blocks: vec![
Block {
x: 8,
y: 0,
z: 24,
rotation: 0,
dir: Direction::YPos,
color: 0,
cp_order: None,
start_order: None,
},
Block {
x: 8,
y: 0,
z: 20,
rotation: 0,
dir: Direction::YPos,
color: 0,
cp_order: None,
start_order: None,
},
Block {
x: 8,
y: 0,
z: 16,
rotation: 0,
dir: Direction::YPos,
color: 0,
cp_order: None,
start_order: None,
},
Block {
x: 8,
y: 0,
z: 8,
rotation: 0,
dir: Direction::YPos,
color: 0,
cp_order: None,
start_order: None,
},
Block {
x: 8,
y: 0,
z: 4,
rotation: 0,
dir: Direction::YPos,
color: 0,
cp_order: None,
start_order: None,
},
],
},
Part {
id: 36,
amount: 2,
blocks: vec![
Block {
x: 8,
y: 0,
z: 0,
rotation: 0,
dir: Direction::YPos,
color: 0,
cp_order: None,
start_order: None,
},
Block {
x: 0,
y: 0,
z: 20,
rotation: 0,
dir: Direction::YPos,
color: 0,
cp_order: None,
start_order: None,
},
],
},
Part {
id: 146,
amount: 1,
blocks: vec![Block {
x: 12,
y: 0,
z: 12,
rotation: 1,
dir: Direction::YPos,
color: 2,
cp_order: None,
start_order: None,
}],
},
],
},
vec![
0, 28, 152, 255, 255, 255, 4, 0, 0, 0, 208, 255, 255, 255, 21, 5, 1, 0, 0, 0, 8, 0, 28,
0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 8, 0, 24, 0, 0, 0, 8, 0, 20, 0, 0, 0, 8, 0, 16, 0,
0, 0, 8, 0, 8, 0, 0, 0, 8, 0, 4, 0, 0, 0, 36, 2, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 20,
0, 0, 0, 146, 1, 0, 0, 0, 12, 0, 12, 1, 0, 2,
],
)];
for (track_data, data) in test_values {
let result = encode_track_data(&track_data);
assert_eq!(result, Some(data));
}
}