sshcerts 0.12.0

A library for parsing, verifying, and creating SSH Certificates
Documentation
use sshcerts::ssh::Writer;

#[test]
fn bad_data_one() {
    let test_vector = [0, 0, 3];
    let mut writer = Writer::new();
    writer.write_mpint(&test_vector);
    let result = writer.as_bytes();
    assert_eq!(result, &vec![0, 0, 0, 1, 3]);
}

#[test]
fn difficult_data_one() {
    let test_vector = [255];
    let mut writer = Writer::new();
    writer.write_mpint(&test_vector);
    let result = writer.as_bytes();
    assert_eq!(result, &vec![0, 0, 0, 2, 0, 255]);
}

#[test]
fn edge_case_with_127() {
    let test_vector = [127];
    let mut writer = Writer::new();
    writer.write_mpint(&test_vector);
    let result = writer.as_bytes();
    assert_eq!(result, &vec![0, 0, 0, 1, 127]);
}

#[test]
fn edge_case_with_128() {
    let test_vector = [128];
    let mut writer = Writer::new();
    writer.write_mpint(&test_vector);
    let result = writer.as_bytes();
    assert_eq!(result, &vec![0, 0, 0, 2, 0, 128]);
}

#[test]
fn filled_u32_mpint() {
    let test_vector = [255, 255, 255, 255];
    let mut writer = Writer::new();
    writer.write_mpint(&test_vector);
    let result = writer.as_bytes();
    assert_eq!(result, &vec![0, 0, 0, 5, 0, 255, 255, 255, 255]);
}

#[test]
fn all_zeroes() {
    let test_vector = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
    let mut writer = Writer::new();
    writer.write_mpint(&test_vector);
    let result = writer.as_bytes();
    assert_eq!(result, &vec![0, 0, 0, 0]);
}

#[test]
fn one_zero() {
    let test_vector = [0];
    let mut writer = Writer::new();
    writer.write_mpint(&test_vector);
    let result = writer.as_bytes();
    assert_eq!(result, &vec![0, 0, 0, 0]);
}

#[test]
fn empty() {
    let test_vector = [];
    let mut writer = Writer::new();
    writer.write_mpint(&test_vector);
    let result = writer.as_bytes();
    assert_eq!(result, &vec![0, 0, 0, 0]);
}