MCPcopy Create free account
hub / github.com/RedisGraph/RedisGraph / test_map_remove

Function test_map_remove

tests/unit/test_map.c:102–147  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

100}
101
102void test_map_remove() {
103 SIValue map = Map_New(2);
104
105 SIValue k0 = SI_ConstStringVal("key0");
106 SIValue k1 = SI_ConstStringVal("key1");
107 SIValue k2 = SI_ConstStringVal("key2");
108 SIValue v0 = SI_LongVal(0);
109 SIValue v1 = SI_DoubleVal(1);
110 SIValue v2 = SI_ConstStringVal("");
111 SIValue keys[3] = {k0, k1, k2};
112 SIValue values[3] = {v0, v1, v2};
113
114 // add elements to map
115 for(int i = 0; i < 3; i++) {
116 Map_Add(&map, keys[i], values[i]);
117 }
118
119 // remove none existing key
120 SIValue none_existing = SI_ConstStringVal("none_existing");
121 Map_Remove(map, none_existing);
122
123 for(int i = 0; i < 3; i++) {
124 SIValue v = SI_NullVal();
125
126 // remove key
127 TEST_ASSERT(Map_Contains(map, keys[i]));
128 Map_Remove(map, keys[i]);
129
130 // try removing removed key
131 Map_Remove(map, keys[i]);
132
133 // validate key count
134 TEST_ASSERT(3 - i - 1 == Map_KeyCount(map));
135
136 // get removed key
137 TEST_ASSERT(!Map_Contains(map, keys[i]));
138 TEST_ASSERT(!Map_Get(map, keys[0], &v));
139 }
140
141 SIValue stored_keys = Map_Keys(map);
142 TEST_ASSERT(0 == SIArray_Length(stored_keys));
143
144 // clean up
145 SIArray_Free(stored_keys);
146 Map_Free(map);
147}
148
149void test_map_tostring() {
150 SIValue k;

Callers

nothing calls this directly

Calls 14

Map_NewFunction · 0.85
SI_ConstStringValFunction · 0.85
SI_LongValFunction · 0.85
SI_DoubleValFunction · 0.85
Map_AddFunction · 0.85
Map_RemoveFunction · 0.85
SI_NullValFunction · 0.85
Map_ContainsFunction · 0.85
Map_KeyCountFunction · 0.85
Map_GetFunction · 0.85
Map_KeysFunction · 0.85
SIArray_LengthFunction · 0.85

Tested by

no test coverage detected