aboutsummaryrefslogtreecommitdiff
path: root/contexts/data/lib/closure-library/closure/goog/structs/pool_test.html
diff options
context:
space:
mode:
Diffstat (limited to 'contexts/data/lib/closure-library/closure/goog/structs/pool_test.html')
-rw-r--r--contexts/data/lib/closure-library/closure/goog/structs/pool_test.html291
1 files changed, 0 insertions, 291 deletions
diff --git a/contexts/data/lib/closure-library/closure/goog/structs/pool_test.html b/contexts/data/lib/closure-library/closure/goog/structs/pool_test.html
deleted file mode 100644
index 461e70f..0000000
--- a/contexts/data/lib/closure-library/closure/goog/structs/pool_test.html
+++ /dev/null
@@ -1,291 +0,0 @@
-<!DOCTYPE html>
-<html>
-<!--
-Copyright 2006 The Closure Library Authors. All Rights Reserved.
-
-Use of this source code is governed by the Apache License, Version 2.0.
-See the COPYING file for details.
--->
-<head>
-<meta http-equiv="X-UA-Compatible" content="IE=edge">
-<title>Closure Unit Tests - goog.structs.Pool</title>
-<script src="../base.js"></script>
-<script>
- goog.require('goog.structs');
- goog.require('goog.structs.Pool');
- goog.require('goog.testing.MockClock');
- goog.require('goog.testing.jsunit');
-</script>
-</head>
-<body>
-<script>
-
-// Implementation of the Pool class with isObjectDead() always returning TRUE,
-// so that the the Pool will not reuse any objects.
-function NoObjectReusePool(opt_min, opt_max) {
- goog.structs.Pool.call(this, opt_min, opt_max);
-};
-goog.inherits(NoObjectReusePool, goog.structs.Pool);
-
-NoObjectReusePool.prototype.objectCanBeReused = function(obj) {
- return false;
-};
-
-
-function testExceedMax1() {
- var p = new goog.structs.Pool(0, 3);
- var obj1 = p.getObject();
- var obj2 = p.getObject();
- var obj3 = p.getObject();
- var obj4 = p.getObject();
- var obj5 = p.getObject();
-
- assertNotUndefined(obj1);
- assertNotUndefined(obj2);
- assertNotUndefined(obj3);
- assertUndefined(obj4);
- assertUndefined(obj5);
-}
-
-
-function testExceedMax2() {
- var p = new goog.structs.Pool(0, 1);
- var obj1 = p.getObject();
- var obj2 = p.getObject();
- var obj3 = p.getObject();
- var obj4 = p.getObject();
- var obj5 = p.getObject();
-
- assertNotUndefined(obj1);
- assertUndefined(obj2);
- assertUndefined(obj3);
- assertUndefined(obj4);
- assertUndefined(obj5);
-}
-
-
-function testExceedMax3() {
- var p = new goog.structs.Pool(); // default: 10
- var objs = [];
-
- for (var i = 0; i < 12; i++) {
- objs[i] = p.getObject();
- }
-
- for (var i = 0; i < 10; i++) {
- assertNotNull('First 10 should be not null', objs[i]);
- }
-
- assertUndefined(objs[10]);
- assertUndefined(objs[11]);
-}
-
-
-function testReleaseAndGet1() {
- var p = new goog.structs.Pool(0, 10);
- var o = p.getObject();
- assertEquals(1, p.getCount());
- assertEquals(1, p.getInUseCount());
- assertEquals(0, p.getFreeCount());
- assertTrue('Result should be true', p.releaseObject(o));
- assertEquals(1, p.getCount());
- assertEquals(0, p.getInUseCount());
- assertEquals(1, p.getFreeCount());
-}
-
-
-function testReleaseAndGet2() {
- var p = new NoObjectReusePool(0, 10);
- var o = p.getObject();
- assertEquals(1, p.getCount());
- assertEquals(1, p.getInUseCount());
- assertEquals(0, p.getFreeCount());
- assertTrue('Result should be true', p.releaseObject(o));
- assertEquals(0, p.getCount());
- assertEquals(0, p.getInUseCount());
- assertEquals(0, p.getFreeCount());
-}
-
-
-function testReleaseAndGet3() {
- var p = new goog.structs.Pool(0, 10);
- var o1 = p.getObject();
- var o2 = p.getObject();
- var o3 = p.getObject();
- var o4 = {};
- assertEquals(3, p.getCount());
- assertEquals(3, p.getInUseCount());
- assertEquals(0, p.getFreeCount());
- assertTrue('Result should be true', p.releaseObject(o1));
- assertTrue('Result should be true', p.releaseObject(o2));
- assertFalse('Result should be false', p.releaseObject(o4));
- assertEquals(3, p.getCount());
- assertEquals(1, p.getInUseCount());
- assertEquals(2, p.getFreeCount());
-}
-
-
-function testReleaseAndGet4() {
- var p = new NoObjectReusePool(0, 10);
- var o1 = p.getObject();
- var o2 = p.getObject();
- var o3 = p.getObject();
- var o4 = {};
- assertEquals(3, p.getCount());
- assertEquals(3, p.getInUseCount());
- assertEquals(0, p.getFreeCount());
- assertTrue('Result should be true', p.releaseObject(o1));
- assertTrue('Result should be true', p.releaseObject(o2));
- assertFalse('Result should be false', p.releaseObject(o4));
- assertEquals(1, p.getCount());
- assertEquals(1, p.getInUseCount());
- assertEquals(0, p.getFreeCount());
-}
-
-
-function testIsInPool1() {
- var p = new goog.structs.Pool();
- var o1 = p.getObject();
- var o2 = p.getObject();
- var o3 = p.getObject();
- var o4 = {};
- var o5 = {};
- var o6 = o1;
-
- assertTrue(p.contains(o1));
- assertTrue(p.contains(o2));
- assertTrue(p.contains(o3));
- assertFalse(p.contains(o4));
- assertFalse(p.contains(o5));
- assertTrue(p.contains(o6));
-}
-
-
-function testSetMin1() {
- var p = new goog.structs.Pool(0, 10);
-
- assertEquals(0, p.getCount());
- assertEquals(0, p.getInUseCount());
- assertEquals(0, p.getFreeCount());
-
- p.setMinimumCount(10);
-
- assertEquals(10, p.getCount());
- assertEquals(0, p.getInUseCount());
- assertEquals(10, p.getFreeCount());
-}
-
-
-function testSetMin2() {
- var p = new goog.structs.Pool(0, 10);
-
- assertEquals(0, p.getCount());
- assertEquals(0, p.getInUseCount());
- assertEquals(0, p.getFreeCount());
-
- var o1 = p.getObject();
-
- assertEquals(1, p.getCount());
- assertEquals(1, p.getInUseCount());
- assertEquals(0, p.getFreeCount());
-
- p.setMinimumCount(10);
-
- assertEquals(10, p.getCount());
- assertEquals(1, p.getInUseCount());
- assertEquals(9, p.getFreeCount());
-}
-
-
-function testSetMax1() {
- var p = new goog.structs.Pool(0, 10);
-
- assertEquals(0, p.getCount());
- assertEquals(0, p.getInUseCount());
- assertEquals(0, p.getFreeCount());
-
- var o1 = p.getObject();
- var o2 = p.getObject();
- var o3 = p.getObject();
- var o4 = p.getObject();
- var o5 = p.getObject();
-
- assertEquals(5, p.getCount());
- assertEquals(5, p.getInUseCount());
- assertEquals(0, p.getFreeCount());
-
- assertTrue('Result should be true', p.releaseObject(o5));
-
- assertEquals(5, p.getCount());
- assertEquals(4, p.getInUseCount());
- assertEquals(1, p.getFreeCount());
-
- p.setMaximumCount(4);
-
- assertEquals(4, p.getCount());
- assertEquals(4, p.getInUseCount());
- assertEquals(0, p.getFreeCount());
-}
-
-
-function testInvalidMinMax1() {
- var p = new goog.structs.Pool(0, 10);
-
- assertEquals(0, p.getCount());
- assertEquals(0, p.getInUseCount());
- assertEquals(0, p.getFreeCount());
-
- assertThrows(function() {
- p.setMinimumCount(11);
- });
-}
-
-
-function testInvalidMinMax2() {
- var p = new goog.structs.Pool(5, 10);
-
- assertEquals(5, p.getCount());
- assertEquals(0, p.getInUseCount());
- assertEquals(5, p.getFreeCount());
-
- assertThrows(function() {
- p.setMaximumCount(4);
- });
-}
-
-
-function testInvalidMinMax3() {
- assertThrows(function() {
- new goog.structs.Pool(10, 1);
- });
-}
-
-
-function testRateLimiting() {
- var clock = new goog.testing.MockClock();
- clock.install();
-
- var p = new goog.structs.Pool(0, 3);
- p.setDelay(100);
-
- assertNotUndefined(p.getObject());
- assertUndefined(p.getObject());
-
- clock.tick(100);
- assertNotUndefined(p.getObject());
- assertUndefined(p.getObject());
-
- clock.tick(100);
- assertNotUndefined(p.getObject());
- assertUndefined(p.getObject());
-
- clock.tick(100);
- assertUndefined(p.getObject());
-
- goog.dispose(clock);
-}
-
-
-</script>
-</body>
-</html>