dict, lazy_set: Replace num_items method with size property.

Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
This commit is contained in:
Anders Kaseorg
2020-02-02 22:58:50 -08:00
committed by Tim Abbott
parent da633e953e
commit 60fac80c8e
13 changed files with 43 additions and 43 deletions

View File

@@ -19,7 +19,7 @@ casper.then(function () {
common.turn_off_press_enter_to_send(); common.turn_off_press_enter_to_send();
casper.test.info("Checking for all everyone warning"); casper.test.info("Checking for all everyone warning");
var stream_size = this.evaluate(function () { var stream_size = this.evaluate(function () {
return stream_data.get_sub('Verona').subscribers.num_items(); return stream_data.get_sub('Verona').subscribers.size;
}); });
casper.test.info(stream_size); casper.test.info(stream_size);
var threshold = this.evaluate(function () { var threshold = this.evaluate(function () {

View File

@@ -14,12 +14,12 @@ run_test('basic', () => {
d.set('foo', 'baz'); d.set('foo', 'baz');
assert.equal(d.get('foo'), 'baz'); assert.equal(d.get('foo'), 'baz');
assert.equal(d.num_items(), 1); assert.equal(d.size, 1);
d.set('bar', 'qux'); d.set('bar', 'qux');
assert.equal(d.get('foo'), 'baz'); assert.equal(d.get('foo'), 'baz');
assert.equal(d.get('bar'), 'qux'); assert.equal(d.get('bar'), 'qux');
assert.equal(d.num_items(), 2); assert.equal(d.size, 2);
assert.equal(d.has('bar'), true); assert.equal(d.has('bar'), true);
assert.equal(d.has('baz'), false); assert.equal(d.has('baz'), false);
@@ -112,21 +112,21 @@ run_test('each', () => {
run_test('num_items', () => { run_test('num_items', () => {
const d = new Dict(); const d = new Dict();
assert.equal(d.num_items(), 0); assert.equal(d.size, 0);
assert(d.is_empty()); assert(d.is_empty());
d.set('foo', 1); d.set('foo', 1);
assert.equal(d.num_items(), 1); assert.equal(d.size, 1);
assert(!d.is_empty()); assert(!d.is_empty());
d.set('foo', 2); d.set('foo', 2);
assert.equal(d.num_items(), 1); assert.equal(d.size, 1);
assert(!d.is_empty()); assert(!d.is_empty());
d.set('bar', 1); d.set('bar', 1);
assert.equal(d.num_items(), 2); assert.equal(d.size, 2);
d.delete('foo'); d.delete('foo');
assert.equal(d.num_items(), 1); assert.equal(d.size, 1);
}); });
/* /*
@@ -161,16 +161,16 @@ run_test('clear', () => {
} }
populate(); populate();
assert.equal(d.num_items(), 2); assert.equal(d.size, 2);
assert(!d.is_empty()); assert(!d.is_empty());
d.clear(); d.clear();
assert.equal(d.get('foo'), undefined); assert.equal(d.get('foo'), undefined);
assert.equal(d.get('bar'), undefined); assert.equal(d.get('bar'), undefined);
assert.equal(d.num_items(), 0); assert.equal(d.size, 0);
assert(d.is_empty()); assert(d.is_empty());
// make sure it still works after clearing // make sure it still works after clearing
populate(); populate();
assert.equal(d.num_items(), 2); assert.equal(d.size, 2);
}); });

View File

@@ -14,12 +14,12 @@ run_test('basic', () => {
d.set('foo', 'baz'); d.set('foo', 'baz');
assert.equal(d.get('foo'), 'baz'); assert.equal(d.get('foo'), 'baz');
assert.equal(d.num_items(), 1); assert.equal(d.size, 1);
d.set('bar', 'qux'); d.set('bar', 'qux');
assert.equal(d.get('foo'), 'baz'); assert.equal(d.get('foo'), 'baz');
assert.equal(d.get('bar'), 'qux'); assert.equal(d.get('bar'), 'qux');
assert.equal(d.num_items(), 2); assert.equal(d.size, 2);
assert.equal(d.has('bar'), true); assert.equal(d.has('bar'), true);
assert.equal(d.has('baz'), false); assert.equal(d.has('baz'), false);
@@ -70,18 +70,18 @@ run_test('clear', () => {
} }
populate(); populate();
assert.equal(d.num_items(), 2); assert.equal(d.size, 2);
assert(!d.is_empty()); assert(!d.is_empty());
d.clear(); d.clear();
assert.equal(d.get('fOO'), undefined); assert.equal(d.get('fOO'), undefined);
assert.equal(d.get('bAR'), undefined); assert.equal(d.get('bAR'), undefined);
assert.equal(d.num_items(), 0); assert.equal(d.size, 0);
assert(d.is_empty()); assert(d.is_empty());
// make sure it still works after clearing // make sure it still works after clearing
populate(); populate();
assert.equal(d.num_items(), 2); assert.equal(d.size, 2);
}); });
run_test('undefined_keys', () => { run_test('undefined_keys', () => {

View File

@@ -14,12 +14,12 @@ run_test('basic', () => {
d.set(101, 'baz'); d.set(101, 'baz');
assert.equal(d.get(101), 'baz'); assert.equal(d.get(101), 'baz');
assert.equal(d.num_items(), 1); assert.equal(d.size, 1);
d.set(102, 'qux'); d.set(102, 'qux');
assert.equal(d.get(101), 'baz'); assert.equal(d.get(101), 'baz');
assert.equal(d.get(102), 'qux'); assert.equal(d.get(102), 'qux');
assert.equal(d.num_items(), 2); assert.equal(d.size, 2);
assert.equal(d.has(102), true); assert.equal(d.has(102), true);
assert.equal(d.has(999), false); assert.equal(d.has(999), false);
@@ -130,21 +130,21 @@ run_test('non integers', () => {
run_test('num_items', () => { run_test('num_items', () => {
const d = new IntDict(); const d = new IntDict();
assert.equal(d.num_items(), 0); assert.equal(d.size, 0);
assert(d.is_empty()); assert(d.is_empty());
d.set(101, 1); d.set(101, 1);
assert.equal(d.num_items(), 1); assert.equal(d.size, 1);
assert(!d.is_empty()); assert(!d.is_empty());
d.set(101, 2); d.set(101, 2);
assert.equal(d.num_items(), 1); assert.equal(d.size, 1);
assert(!d.is_empty()); assert(!d.is_empty());
d.set(102, 1); d.set(102, 1);
assert.equal(d.num_items(), 2); assert.equal(d.size, 2);
d.delete(101); d.delete(101);
assert.equal(d.num_items(), 1); assert.equal(d.size, 1);
}); });
run_test('clear', () => { run_test('clear', () => {
@@ -158,16 +158,16 @@ run_test('clear', () => {
} }
populate(); populate();
assert.equal(d.num_items(), 2); assert.equal(d.size, 2);
assert(!d.is_empty()); assert(!d.is_empty());
d.clear(); d.clear();
assert.equal(d.get(101), undefined); assert.equal(d.get(101), undefined);
assert.equal(d.get(102), undefined); assert.equal(d.get(102), undefined);
assert.equal(d.num_items(), 0); assert.equal(d.size, 0);
assert(d.is_empty()); assert(d.is_empty());
// make sure it still works after clearing // make sure it still works after clearing
populate(); populate();
assert.equal(d.num_items(), 2); assert.equal(d.size, 2);
}); });

View File

@@ -361,33 +361,33 @@ run_test('filtered_users', () => {
const search_term = 'a'; const search_term = 'a';
const users = people.get_people_for_stream_create(); const users = people.get_people_for_stream_create();
let filtered_people = people.filter_people_by_search_terms(users, [search_term]); let filtered_people = people.filter_people_by_search_terms(users, [search_term]);
assert.equal(filtered_people.num_items(), 2); assert.equal(filtered_people.size, 2);
assert(filtered_people.has(ashton.user_id)); assert(filtered_people.has(ashton.user_id));
assert(filtered_people.has(maria.user_id)); assert(filtered_people.has(maria.user_id));
assert(!filtered_people.has(charles.user_id)); assert(!filtered_people.has(charles.user_id));
filtered_people = people.filter_people_by_search_terms(users, []); filtered_people = people.filter_people_by_search_terms(users, []);
assert.equal(filtered_people.num_items(), 0); assert.equal(filtered_people.size, 0);
filtered_people = people.filter_people_by_search_terms(users, ['ltorv']); filtered_people = people.filter_people_by_search_terms(users, ['ltorv']);
assert.equal(filtered_people.num_items(), 1); assert.equal(filtered_people.size, 1);
assert(filtered_people.has(linus.user_id)); assert(filtered_people.has(linus.user_id));
filtered_people = people.filter_people_by_search_terms(users, ['ch di', 'maria']); filtered_people = people.filter_people_by_search_terms(users, ['ch di', 'maria']);
assert.equal(filtered_people.num_items(), 2); assert.equal(filtered_people.size, 2);
assert(filtered_people.has(charles.user_id)); assert(filtered_people.has(charles.user_id));
assert(filtered_people.has(maria.user_id)); assert(filtered_people.has(maria.user_id));
// Test filtering of names with diacritics // Test filtering of names with diacritics
// This should match Nöôáàh by ignoring diacritics, and also match Nooaah // This should match Nöôáàh by ignoring diacritics, and also match Nooaah
filtered_people = people.filter_people_by_search_terms(users, ['noOa']); filtered_people = people.filter_people_by_search_terms(users, ['noOa']);
assert.equal(filtered_people.num_items(), 2); assert.equal(filtered_people.size, 2);
assert(filtered_people.has(noah.user_id)); assert(filtered_people.has(noah.user_id));
assert(filtered_people.has(plain_noah.user_id)); assert(filtered_people.has(plain_noah.user_id));
// This should match ëmerson, but not emerson // This should match ëmerson, but not emerson
filtered_people = people.filter_people_by_search_terms(users, ['ëm']); filtered_people = people.filter_people_by_search_terms(users, ['ëm']);
assert.equal(filtered_people.num_items(), 1); assert.equal(filtered_people.size, 1);
assert(filtered_people.has(noah.user_id)); assert(filtered_people.has(noah.user_id));
// Test filtering with undefined user // Test filtering with undefined user
@@ -399,7 +399,7 @@ run_test('filtered_users', () => {
users.push(foo); users.push(foo);
filtered_people = people.filter_people_by_search_terms(users, ['ltorv']); filtered_people = people.filter_people_by_search_terms(users, ['ltorv']);
assert.equal(filtered_people.num_items(), 1); assert.equal(filtered_people.size, 1);
assert(filtered_people.has(linus.user_id)); assert(filtered_people.has(linus.user_id));
}); });

View File

@@ -30,7 +30,7 @@ export class Dict<V> {
return [...this._items]; return [...this._items];
} }
num_items(): number { get size(): number {
return this._items.size; return this._items.size;
} }

View File

@@ -50,7 +50,7 @@ export class FoldDict<V> {
return [...this._items.values()].map(({k, v}) => [k, v]); return [...this._items.values()].map(({k, v}) => [k, v]);
} }
num_items(): number { get size(): number {
return this._items.size; return this._items.size;
} }

View File

@@ -62,7 +62,7 @@ export class IntDict<V> {
return results; return results;
} }
num_items(): number { get size(): number {
return this._map.size; return this._map.size;
} }

View File

@@ -41,7 +41,7 @@ export class LazySet {
this.arr = undefined; this.arr = undefined;
} }
num_items() { get size() {
if (this.set !== undefined) { if (this.set !== undefined) {
return this.set.size; return this.set.size;
} }

View File

@@ -71,7 +71,7 @@ exports.get_by_email = function (email) {
exports.get_realm_count = function () { exports.get_realm_count = function () {
// This returns the number of active people in our realm. It should // This returns the number of active people in our realm. It should
// exclude bots and deactivated users. // exclude bots and deactivated users.
return active_user_dict.num_items(); return active_user_dict.size;
}; };
exports.id_matches_email_operand = function (user_id, email) { exports.id_matches_email_operand = function (user_id, email) {

View File

@@ -27,7 +27,7 @@ const BinaryDict = function (pred) {
}; };
self.num_true_items = function () { self.num_true_items = function () {
return self.trues.num_items(); return self.trues.size;
}; };
self.false_values = function () { self.false_values = function () {
@@ -353,7 +353,7 @@ exports.get_colors = function () {
}; };
exports.update_subscribers_count = function (sub) { exports.update_subscribers_count = function (sub) {
const count = sub.subscribers.num_items(); const count = sub.subscribers.size;
sub.subscriber_count = count; sub.subscriber_count = count;
}; };
@@ -370,7 +370,7 @@ exports.get_subscriber_count = function (stream_name) {
if (!sub.subscribers) { if (!sub.subscribers) {
return 0; return 0;
} }
return sub.subscribers.num_items(); return sub.subscribers.size;
}; };
exports.update_stream_announcement_only = function (sub, is_announcement_only) { exports.update_stream_announcement_only = function (sub, is_announcement_only) {

View File

@@ -145,7 +145,7 @@ exports.widget = function (parent_elem, my_stream_id) {
}; };
self.num_items = function () { self.num_items = function () {
return self.topic_items.num_items(); return self.topic_items.size;
}; };
self.set_count = function (topic, count) { self.set_count = function (topic, count) {

View File

@@ -407,7 +407,7 @@ exports.compare_by_activity = function (stream_a, stream_b) {
if (diff !== 0) { if (diff !== 0) {
return diff; return diff;
} }
diff = stream_b.subscribers.num_items() - stream_a.subscribers.num_items(); diff = stream_b.subscribers.size - stream_a.subscribers.size;
if (diff !== 0) { if (diff !== 0) {
return diff; return diff;
} }