| Index: chrome/test/data/extensions/platform_apps/windows_api/test.js
 | 
| diff --git a/chrome/test/data/extensions/platform_apps/windows_api/test.js b/chrome/test/data/extensions/platform_apps/windows_api/test.js
 | 
| new file mode 100644
 | 
| index 0000000000000000000000000000000000000000..2e71c9bf21d0d0f67e1e2216fb27a217c528cd9d
 | 
| --- /dev/null
 | 
| +++ b/chrome/test/data/extensions/platform_apps/windows_api/test.js
 | 
| @@ -0,0 +1,55 @@
 | 
| +// Copyright (c) 2012 The Chromium Authors. All rights reserved.
 | 
| +// Use of this source code is governed by a BSD-style license that can be
 | 
| +// found in the LICENSE file.
 | 
| +
 | 
| +var callbackPass = chrome.test.callbackPass;
 | 
| +
 | 
| +chrome.experimental.app.onLaunched.addListener(function() {
 | 
| +  // Only a few chrome.windows.* API methods are tested, it is assumed that the
 | 
| +  // full API is tested elsewhere.
 | 
| +  chrome.test.runTests([
 | 
| +   function testCreateWindow() {
 | 
| +      var getShellWindowCount = function(callback) {
 | 
| +        chrome.windows.getAll(function(windows) {
 | 
| +          callback(windows.filter(
 | 
| +              function(window) { return window.type == 'shell' }).length);
 | 
| +        });
 | 
| +      };
 | 
| +
 | 
| +      getShellWindowCount(callbackPass(function(shellWindowCount) {
 | 
| +        chrome.test.assertEq(0, shellWindowCount);
 | 
| +        chrome.windows.create(
 | 
| +            {type: 'shell', width: 128, height: 128},
 | 
| +            callbackPass(function() {
 | 
| +              getShellWindowCount(callbackPass(function(shellWindowCount) {
 | 
| +                chrome.test.assertEq(1, shellWindowCount);
 | 
| +              }));
 | 
| +            }));
 | 
| +        }));
 | 
| +    },
 | 
| +
 | 
| +    function testUpdateWindowWidth() {
 | 
| +      chrome.windows.create(
 | 
| +          {type: 'shell', width: 128, height: 128},
 | 
| +          callbackPass(function(window) {
 | 
| +            chrome.windows.update(
 | 
| +                window.id,
 | 
| +                // 256 is a width that will snap to the Aura grid, thus this
 | 
| +                // should be the actual width on Aura (when read back).
 | 
| +                {width: 256, height: 128},
 | 
| +                callbackPass(function() {
 | 
| +                  // The timeout is rather lame, but reading back the width from
 | 
| +                  // the window manager (on Linux) immediately still reports the
 | 
| +                  // old value.
 | 
| +                  setTimeout(callbackPass(function() {
 | 
| +                    chrome.windows.getCurrent(callbackPass(function(window) {
 | 
| +                      chrome.test.assertEq(256, window.width);
 | 
| +                    }));
 | 
| +                  }), 1000);
 | 
| +                }));
 | 
| +          }));
 | 
| +    },
 | 
| +
 | 
| +
 | 
| +  ]);
 | 
| +});
 | 
| 
 |