Merge pull request #32 from thijsc/null_bytes

Test for null bytes in bson string
pull/34/head
Thijs Cadier 7 years ago committed by GitHub
commit 4c9cdbf8e1

@ -36,6 +36,8 @@ pub enum InsertFlag {
NoValidate
}
const INSERT_FLAG_NO_VALIDATE: u32 = 1 | 31; // MONGOC_INSERT_NO_VALIDATE defined in macro
impl FlagsValue for Flags<InsertFlag> {
fn flags(&self) -> u32 {
if self.flags.is_empty() {
@ -44,7 +46,7 @@ impl FlagsValue for Flags<InsertFlag> {
self.flags.iter().fold(0, { |flags, flag|
flags | match flag {
&InsertFlag::ContinueOnError => bindings::MONGOC_INSERT_CONTINUE_ON_ERROR,
&InsertFlag::NoValidate => 1 | 31 // MONGOC_INSERT_NO_VALIDATE defined in macro
&InsertFlag::NoValidate => INSERT_FLAG_NO_VALIDATE
}
})
}

@ -72,9 +72,9 @@ fn test_mutation_and_finding() {
let document = doc! {
"key_1" => "Value 1",
"key_2" => "kācaṃ śaknomyattum; nopahinasti mām."
"key_2" => "kācaṃ śaknomyattum; nopahinasti mām. \u{0}"
};
assert!(collection.insert(&document, None).is_ok());
collection.insert(&document, None).expect("Could not insert document");
{
let found_document = collection.find(&document, None).unwrap().next().unwrap().unwrap();
assert_eq!(
@ -83,7 +83,7 @@ fn test_mutation_and_finding() {
);
assert_eq!(
found_document.get("key_2").unwrap(),
&bson::Bson::String("kācaṃ śaknomyattum; nopahinasti mām.".to_string())
&bson::Bson::String("kācaṃ śaknomyattum; nopahinasti mām. \u{0}".to_string())
);
}

Loading…
Cancel
Save