3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-17 14:25:35 +00:00
z3/src/test/map.cpp
Nikolaj Bjorner b19f94ae5b make include paths uniformly use path relative to src. #534
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2017-07-31 13:24:11 -07:00

46 lines
1 KiB
C++

/*++
Copyright (c) 2006 Microsoft Corporation
Module Name:
tst_map.cpp
Abstract:
Test simple mapping.
Author:
Leonardo de Moura (leonardo) 2006-10-14.
Revision History:
--*/
#include "util/map.h"
#include "util/str_hashtable.h"
static void tst1() {
map<char const *, int, str_hash_proc, str_eq_proc> str2int;
str2int.insert("foo", 35);
ENSURE(str2int.contains("foo"));
ENSURE(str2int.find_iterator("foo") != str2int.end());
ENSURE((*(str2int.find_iterator("foo"))).m_value == 35);
ENSURE(str2int.size() == 1);
str2int.insert("boo", 32);
ENSURE(str2int.contains("foo"));
ENSURE(str2int.find_iterator("foo") != str2int.end());
ENSURE((*(str2int.find_iterator("foo"))).m_value == 35);
ENSURE(str2int.contains("boo"));
ENSURE(str2int.find_iterator("boo") != str2int.end());
ENSURE((*(str2int.find_iterator("boo"))).m_value == 32);
ENSURE(str2int.size() == 2);
str2int.remove("boo");
ENSURE(str2int.size() == 1);
ENSURE(!str2int.contains("boo"));
ENSURE(str2int.contains("foo"));
}
void tst_map() {
tst1();
}