diff --git a/docs/dev_guide/code_exs/adding_assets.rst b/docs/dev_guide/code_exs/adding_assets.rst index cb01f5212..c5af87e2f 100644 --- a/docs/dev_guide/code_exs/adding_assets.rst +++ b/docs/dev_guide/code_exs/adding_assets.rst @@ -2,10 +2,6 @@ Adding CSS ========== -.. raw:: html - - Time Estimate: 10 minutes   Difficulty: Beginner - **Time Estimate:** 10 minutes **Difficulty:** Beginner diff --git a/docs/dev_guide/code_exs/view_engines.rst b/docs/dev_guide/code_exs/view_engines.rst index 998a72288..928d50317 100644 --- a/docs/dev_guide/code_exs/view_engines.rst +++ b/docs/dev_guide/code_exs/view_engines.rst @@ -54,14 +54,14 @@ Installing a Rendering Engine You could write your own rendering engine or copy code into your Mojito application, but this example follows the most common use case of installing a rendering engine with ``npm``. We will be installing the rendering engine - `EJS `_ with ``npm``. +`EJS `_ with ``npm``. Because your Mojito application is simply a ``npm`` module, you can have a ``node_modules`` directory for locally installing other modules. Thus, from your application directory, you would use the following ``npm`` command to install ``ejs``: -``{app_dir}/ $ npm install ejs`` +``$ npm install ejs`` After you have installed ``ejs``, a ``node_modules`` directory will be created with the contents similar to the following: @@ -114,29 +114,29 @@ The view engine addon must have the following: view engine addon with the name ``addons-viewengine-ejs`` in our code example as seen below. - .. code-block:: javascript + .. code-block:: javascript - YUI.add('addons-viewengine-ejs', function(Y, NAME) { + YUI.add('addons-viewengine-ejs', function(Y, NAME) { - // The addon name 'addons-viewengine-hb' is registered by YUI.add + // The addon name 'addons-viewengine-hb' is registered by YUI.add - }, '0.1.0', {requires: []}); + }, '0.1.0', {requires: []}); - a prototype of the object has the following two methods ``render`` and ``compiler`` as shown below. We will look at the ``render`` and ``compile`` methods more closely in the next section. - .. code-block:: javascript + .. code-block:: javascript - ... + ... - EjsAdapter.prototype = { + EjsAdapter.prototype = { - render: function(data, mojitType, tmpl, adapter, meta, more) { - ... - }, - compiler: function(tmpl) { - ... + render: function(data, mojitType, tmpl, adapter, meta, more) { + ... + }, + compiler: function(tmpl) { + ... } ... @@ -144,15 +144,15 @@ The view engine addon must have the following: In our example, the constructor ``EjsAdapter`` is assigned to the namespace ``Y.namespace('mojito.addons.viewEngines').ejs`` or ``Y.mojito.addons.viewEngines.ejs``. - .. code-block:: javascript + .. code-block:: javascript - ... + ... - function EjsAdapter(viewId) { - this.viewId = viewId; - } - ... - Y.namespace('mojito.addons.viewEngines').ejs = EjsAdapter; + function EjsAdapter(viewId) { + this.viewId = viewId; + } + ... + Y.namespace('mojito.addons.viewEngines').ejs = EjsAdapter; .. _ve_addon_create-render_compile: diff --git a/docs/dev_guide/intro/mojito_configuring.rst b/docs/dev_guide/intro/mojito_configuring.rst index 6be349c3b..7c367633b 100644 --- a/docs/dev_guide/intro/mojito_configuring.rst +++ b/docs/dev_guide/intro/mojito_configuring.rst @@ -434,16 +434,9 @@ Some of the properties of the ``config`` object used for configuring logging are +----------------------+---------------+-------------------+-----------------------------------------------------------+ | Property | Data Type | Default Value | Description | +======================+===============+===================+===========================================================+ -| ``buffer`` | boolean | false | Determines whether Mojito should buffer log | -| | | | entries (``true``) or output each as they occur | -| | | | (``false``). | -+----------------------+---------------+-------------------+-----------------------------------------------------------+ | ``debug`` | boolean | true | Determines whether ``Y.log`` messages are written to the | | | | | browser console. | +----------------------+---------------+-------------------+-----------------------------------------------------------+ -| ``defaultLevel`` | string | "info" | Specifies the default log level to log entries. See | -| | | | `Log Levels <../topics/mojito_logging.html#log-levels>`_. | -+----------------------+---------------+-------------------+-----------------------------------------------------------+ | ``logExclude`` | object | none | Excludes the logging of the YUI module(s) specified. | | | | | For example: ``logExclude: { "logModel": true }`` | +----------------------+---------------+-------------------+-----------------------------------------------------------+ @@ -454,13 +447,7 @@ Some of the properties of the ``config`` object used for configuring logging are | | | | log output. See | | | | | `Log Levels <../topics/mojito_logging.html#log-levels>`_. | +----------------------+---------------+-------------------+-----------------------------------------------------------+ -| ``maxBufferSize`` | number | 1024 | If ``buffer`` is set to ``true``, specifies the | -| | | | number of log entries to store before flushing to | -| | | | output. | -+----------------------+---------------+-------------------+-----------------------------------------------------------+ -| ``timestamp`` | boolean | true | Determines whether the timestamp is included in | -| | | | the log output. | -+----------------------+---------------+-------------------+-----------------------------------------------------------+ + @@ -1182,7 +1169,7 @@ the action are specified in the ``"foo_default"`` object. "call": "foo-1.index" } -In this code snippet from ``controller.js``, the `Url addon <../../api/classes/Url.common.html>`_ +In this code snippet from ``controller.js``, the `Url addon <../../api/classes/Url.common.html>`_ with the ``make`` method use the mojit instance and function specified in the ``routes.json`` above to create the URL ``/foo`` with the query string parameters ``?foo=bar``. @@ -1202,9 +1189,9 @@ The ``index`` function above returns the following URL: ``http://localhost:8666/ Accessing Configurations from Mojits ==================================== -The controller, model, and binder can access mojit configurations from the ``init`` +The model, and binder can access mojit configurations from the ``init`` function. The controller and model are passed ``configuration`` objects. The controller -can also access configuration from other functions through the ``actionContext`` object. +can access configuration the ``actionContext`` object and the ``Config`` addon. The ``init`` function in the binder instead of a configuration object is passed the ``mojitProxy`` object, which enables you to get the configurations. @@ -1310,9 +1297,8 @@ configurations of ``application.json`` override those in ``defaults.json``. Controller ########## -In the controller, the mojit-level configurations are passed to the ``init`` function. In -other controller functions, you can access mojit-level configurations from the -``actionContext`` object using the `Config addon <../../api/classes/Config.common.html>`_. +Controllers can access mojit-level configurations from the ``actionContext`` object +using the `Config addon <../../api/classes/Config.common.html>`_. Use ``ac.config.get`` to access configuration values from ``application.json`` and ``defaults.json`` and ``ac.config.getDefinition`` to access definition values from ``definition.json``. @@ -1323,10 +1309,10 @@ Use ``ac.config.get`` to access configuration values from ``application.json`` a Model ##### -The ``init`` function in the model is also passed the mojit-level configurations. If other -model functions need the configurations, you need to save the configurations to the -``this`` reference because no ``actionContext`` object is passed to the model, so your -model does not have access to the ``Config`` addon. +The ``init`` function in the model is also passed the mojit-level configurations. +If other model functions need the configurations, you need to save the +configurations to the ``this`` reference because no ``actionContext`` object is +passed to the model, so your model does not have access to the ``Config`` addon. .. _access_mojit-binder: diff --git a/docs/dev_guide/intro/mojito_mojits.rst b/docs/dev_guide/intro/mojito_mojits.rst index 3542b41bf..0295977c0 100644 --- a/docs/dev_guide/intro/mojito_mojits.rst +++ b/docs/dev_guide/intro/mojito_mojits.rst @@ -13,7 +13,7 @@ implementation details, see the following: - `Mojit Configuration `_ - `Mojits `_ in the `Mojito Applications `_ - chapter + chapter - `MVC in Mojito `_ - `Mojito API Documentation <../../api>`_ @@ -176,6 +176,7 @@ and has the following characteristics: - versioned and immutable for a given version. Metadata can be packaged as a unit (e.g., as a zip file) for: + - configuration schema - data requirements - mojit dependencies diff --git a/docs/dev_guide/intro/mojito_mvc.rst b/docs/dev_guide/intro/mojito_mvc.rst index f0db1ad10..f4065ad3d 100644 --- a/docs/dev_guide/intro/mojito_mvc.rst +++ b/docs/dev_guide/intro/mojito_mvc.rst @@ -420,7 +420,7 @@ For example, if you wanted to use the ``photo_search`` function in the model for ``flickr`` mojit, you would use the following: ``ac.models.get('flickr').photo_search(args, callback);`` The ``controller.server.js`` below shows a simple example of calling -``get_data`` from the model of the ``simple`` mojit. +``get_data`` from the model ``simpleModel``. .. code-block:: javascript @@ -455,8 +455,10 @@ The controller also uses the ActionContext object to send data to the view. Calling the ``done`` method from the ActionContext object, you can send literal strings or objects, with the latter being interpolated in template tags that are rendered by the appropriate view engine. The ``done`` method should only be -called once. If neither ``done`` nor ``error`` is called, your application will -hang waiting for output. +called once. If neither ``done`` nor ``error`` is called within 60 seconds, Mojito +will log a warning and invoke ``error`` with a Timeout error. +You can change the default timeout value of 60000ms (60 seconds) by setting the +``actionTimeout`` property of your application configuration. In the example ``controller.server.js`` below, the ``index`` function sends the ``user`` object to the ``index`` template. diff --git a/docs/dev_guide/intro/mojito_static_resources.rst b/docs/dev_guide/intro/mojito_static_resources.rst index 5b86850ba..a4216bbb1 100644 --- a/docs/dev_guide/intro/mojito_static_resources.rst +++ b/docs/dev_guide/intro/mojito_static_resources.rst @@ -11,9 +11,7 @@ URL that contains the following three components: application, or the mojit depending on the level of the resource. - **relative path** - the path relative to the source path. -The URL of the static URL has the following syntax: - -``/static/{source_path}/{relative_path}`` +The URL of the static URL has the following syntax: ``/static/{source_path}/{relative_path}`` .. _static_resources-prefix: diff --git a/docs/dev_guide/topics/mojito_extensions.rst b/docs/dev_guide/topics/mojito_extensions.rst index 410789840..301c8117a 100644 --- a/docs/dev_guide/topics/mojito_extensions.rst +++ b/docs/dev_guide/topics/mojito_extensions.rst @@ -461,7 +461,7 @@ Mojito framework and the rendering engine. In the following sections, we will be discussing how to create a view engine addon that relies on a rendering engine, not how to write code that renders - templates. +templates. .. _ve_overview-term: @@ -571,42 +571,42 @@ The view engine addon must have the following: - a ``YUI.add`` statement to register the addon. For example: - .. code-block:: javascript + .. code-block:: javascript - YUI.add('addons-viewengine-hb', function(Y, NAME) { + YUI.add('addons-viewengine-hb', function(Y, NAME) { - // The addon name 'addons-viewengine-hb' is registered by YUI.add + // The addon name 'addons-viewengine-hb' is registered by YUI.add - }, '0.1.0', {requires: []}); + }, '0.1.0', {requires: []}); - an object that is assigned to ``Y.mojito.addons.viewEngines.{view_engine_name}`` as seen below: - .. code-block:: javascript + .. code-block:: javascript - ... + ... - function EjsAdapter(viewId) { - this.viewId = viewId; - } - ... - Y.namespace('mojito.addons.viewEngines').ejs = EjsAdapter; + function EjsAdapter(viewId) { + this.viewId = viewId; + } + ... + Y.namespace('mojito.addons.viewEngines').ejs = EjsAdapter; - a prototype of the object has the following two methods ``render`` and ``compiler`` as shown below: - .. code-block:: javascript + .. code-block:: javascript - ... + ... - EjsAdapter.prototype = { + EjsAdapter.prototype = { - render: function(data, mojitType, tmpl, adapter, meta, more) { + render: function(data, mojitType, tmpl, adapter, meta, more) { ... - }, - compiler: function(tmpl) { + }, + compiler: function(tmpl) { ... - } + } ... diff --git a/docs/dev_guide/topics/mojito_logging.rst b/docs/dev_guide/topics/mojito_logging.rst index 13e1dbe30..59303e67f 100644 --- a/docs/dev_guide/topics/mojito_logging.rst +++ b/docs/dev_guide/topics/mojito_logging.rst @@ -36,12 +36,6 @@ Log Defaults The server and client log settings have the following default values: - ``logLevel:`` ``DEBUG`` - log level filter. -- ``yui:`` ``true`` - determines whether YUI library logs are displayed. -- ``buffer:`` ``false`` - determines whether logs are buffered. -- ``maxBufferSize: 1024`` - the number of logs the buffer holds before auto-flushing. -- ``timestamp: true`` - log statements are given a timestamp if value is true. -- ``defaultLevel: 'info'`` - if ``Y.log`` is called without a log level, this is the - default. .. _mojito_logging-config: @@ -61,7 +55,6 @@ overrides the defaults for ``logLevel`` and ``buffer``. "yui": { "config": { "level": "error", - "buffer": true } }, ... @@ -91,66 +84,7 @@ context with the log configuration shown below: } ] -.. _mojito_logging-buffering: -Log Buffering -============= - -To avoid performance issues caused by logging, you can enable buffering, which will -configure Mojito to cache all logs in memory. You can force Mojito to flush the logs with -the ``Y.log`` function or setting the maximum buffer size. The following sections show you -how to enable buffering and force Mojito to flush the cached logs. - -.. _logging_buffering-enable: - -Enable Buffering ----------------- - -To configure Mojito to buffer your logs, set the ``buffer`` property to ``true`` in the -``yui.config`` object as shown in the example ``application.json`` below. - -.. code-block:: javascript - - [ - { - "settings": [ "master" ], - "yui": { - "config": { - "buffer": true - } - }, - ... - } - ] - -.. _logging_buffering-flush: - -Flush Cached Logs ------------------ - -Mojito provides you with two ways to forcefully flush cached logs. When you have buffering -enabled, you can force Mojito to flush the cached logs with ``Y.log(({flush: true})``. -You can also set the maximum buffer size, so that Mojito will flush cached logs after the -cache has reached the maximum buffer size. - -In the example ``application.json`` below, the maximum buffer size is set to be 4096 bytes. -Once the log cache reaches this size, the logs are then flushed. The default size of the -log cache is 1024 bytes. - -.. code-block:: javascript - - [ - { - "settings": [ "master" ], - "yui": { - "config": { - "buffer": true, - "maxBufferSize": 4096 - } - }, - ... - } - ] .. _mojito_logging-custom: diff --git a/docs/dev_guide/topics/mojito_run_dyn_defined_mojits.rst b/docs/dev_guide/topics/mojito_run_dyn_defined_mojits.rst index d411f7fa6..46e451f72 100644 --- a/docs/dev_guide/topics/mojito_run_dyn_defined_mojits.rst +++ b/docs/dev_guide/topics/mojito_run_dyn_defined_mojits.rst @@ -376,7 +376,7 @@ Adapter Functions The functions ``ac.done``, ``ac.flush``, and ``ac.error`` defined in the ``adapter`` object are actually implemented by the Mojito framework. For example, before ``adapter.done`` is executed, Mojito runs the ``done`` function defined in -`output-adapter.common.js `_, +`action-context.common.js `_, which collects metadata and configuration. .. _dyn_dispatch-controller: diff --git a/examples/input/cookies/mojits/ClientCookie/controller.common.js b/examples/input/cookies/mojits/ClientCookie/controller.common.js index e91f1400f..2b4731d40 100644 --- a/examples/input/cookies/mojits/ClientCookie/controller.common.js +++ b/examples/input/cookies/mojits/ClientCookie/controller.common.js @@ -20,10 +20,6 @@ YUI.add('ClientCookie', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - /** * Method corresponding to the 'index' action. * diff --git a/examples/newsboxes/application.json b/examples/newsboxes/application.json index e048096ab..9092a27b7 100644 --- a/examples/newsboxes/application.json +++ b/examples/newsboxes/application.json @@ -2,9 +2,6 @@ "settings": ["master"], "appPort": 8000, - "staticHandling": { - "useRollups": true - }, "builds": { "html5app": { "attachManifest": true, @@ -12,10 +9,6 @@ "urls": ["/read.html"] } }, - "log": { - "client": { "level": "warn", "yui": true }, - "server": { "level": "info", "yui": true } - }, "cacheViewTemplates": false, "specs": { diff --git a/examples/performance/string/application.json b/examples/performance/string/application.json index f7ba4d9b9..6dc491be1 100644 --- a/examples/performance/string/application.json +++ b/examples/performance/string/application.json @@ -1,14 +1,9 @@ [{ "settings": [ "master" ], - - "log": { - "client": { - "level": "none", - "yui": false - }, - "server": { - "level": "none", - "yui": false - } - } -}] \ No newline at end of file + "yui": { + "config": { + "debug": true, + "logLevel": "error" + } + } +}] diff --git a/examples/sandbox/bindercomm/mojits/BlueChild/controller.server.js b/examples/sandbox/bindercomm/mojits/BlueChild/controller.server.js index 60cf3d86c..008a4e810 100644 --- a/examples/sandbox/bindercomm/mojits/BlueChild/controller.server.js +++ b/examples/sandbox/bindercomm/mojits/BlueChild/controller.server.js @@ -20,10 +20,6 @@ YUI.add('BlueChild', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - /** * Method corresponding to the 'index' action. * diff --git a/examples/sandbox/bindercomm/mojits/Parent/controller.server.js b/examples/sandbox/bindercomm/mojits/Parent/controller.server.js index 51813d055..16b615e55 100644 --- a/examples/sandbox/bindercomm/mojits/Parent/controller.server.js +++ b/examples/sandbox/bindercomm/mojits/Parent/controller.server.js @@ -20,10 +20,6 @@ YUI.add('Parent', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - 'index': function(ac) { ac.done(); }, diff --git a/examples/sandbox/bindercomm/mojits/RedChild/controller.server.js b/examples/sandbox/bindercomm/mojits/RedChild/controller.server.js index d2cb8e205..8f56ca830 100644 --- a/examples/sandbox/bindercomm/mojits/RedChild/controller.server.js +++ b/examples/sandbox/bindercomm/mojits/RedChild/controller.server.js @@ -20,10 +20,6 @@ YUI.add('RedChild', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - /** * Method corresponding to the 'index' action. * @@ -31,7 +27,6 @@ YUI.add('RedChild', function(Y, NAME) { * to the Mojito API. */ index: function(ac) { - Y.log(this.config); ac.done({id: ac.config.get('id')}); } diff --git a/examples/sandbox/binderrender/application.json b/examples/sandbox/binderrender/application.json index 3b8a21303..6ccb7ebfa 100644 --- a/examples/sandbox/binderrender/application.json +++ b/examples/sandbox/binderrender/application.json @@ -2,15 +2,6 @@ { "settings": [ "master" ], - "log": { - "client": { "level": "warn", "yui": false }, - "server": { "level": "warn", "yui": false } - }, - - "staticHandling": { - "useRollups": true - }, - "specs": { "home": { "type": "HTMLFrameMojit", diff --git a/examples/sandbox/bindertime/application.json b/examples/sandbox/bindertime/application.json index 5b8a20221..515b9b058 100644 --- a/examples/sandbox/bindertime/application.json +++ b/examples/sandbox/bindertime/application.json @@ -4,17 +4,6 @@ "allowQueryStringRouting": true, - "log": { - "server": { - "level": "debug", - "yui": true - }, - "client": { - "level": "mojito", - "yui": true - } - }, - "specs": { "frame": { "type": "HTMLFrameMojit", diff --git a/examples/sandbox/bindertime/mojits/Layout/controller.common.js b/examples/sandbox/bindertime/mojits/Layout/controller.common.js index 0a69c0679..20bd37aeb 100644 --- a/examples/sandbox/bindertime/mojits/Layout/controller.common.js +++ b/examples/sandbox/bindertime/mojits/Layout/controller.common.js @@ -20,10 +20,6 @@ YUI.add('Layout', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - /** * Method corresponding to the 'index' action. * diff --git a/examples/sandbox/bindertime/mojits/Loader/controller.common.js b/examples/sandbox/bindertime/mojits/Loader/controller.common.js index c6ea156a5..41e8535f1 100644 --- a/examples/sandbox/bindertime/mojits/Loader/controller.common.js +++ b/examples/sandbox/bindertime/mojits/Loader/controller.common.js @@ -20,10 +20,6 @@ YUI.add('Loader', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - /** * Method corresponding to the 'index' action. * diff --git a/examples/sandbox/controller-state/application.json b/examples/sandbox/controller-state/application.json index a0bf972e0..a60de1778 100644 --- a/examples/sandbox/controller-state/application.json +++ b/examples/sandbox/controller-state/application.json @@ -2,12 +2,6 @@ { "settings": [ "master" ], - "log": { - "server": { - "level": "debug" - } - }, - "specs": { "frame": { diff --git a/examples/sandbox/controller-state/mojits/Parent/controller.common.js b/examples/sandbox/controller-state/mojits/Parent/controller.common.js index 14aea6c34..1d6e0e2e7 100644 --- a/examples/sandbox/controller-state/mojits/Parent/controller.common.js +++ b/examples/sandbox/controller-state/mojits/Parent/controller.common.js @@ -20,10 +20,6 @@ YUI.add('Parent', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - /** * Method corresponding to the 'index' action. * diff --git a/examples/sandbox/controller-state/mojits/Stateful/controller.common.js b/examples/sandbox/controller-state/mojits/Stateful/controller.common.js index dd50034e0..86a3596a4 100644 --- a/examples/sandbox/controller-state/mojits/Stateful/controller.common.js +++ b/examples/sandbox/controller-state/mojits/Stateful/controller.common.js @@ -6,15 +6,12 @@ YUI.add('Stateful', function(Y, NAME) { - Y.namespace('mojito.controllers')[NAME] = { + var time = new Date().getTime(); - init: function(config) { - this.config = config; - this.time = new Date().getTime(); - }, + Y.namespace('mojito.controllers')[NAME] = { index: function(ac) { - ac.done({id: this.config.id}); + ac.done({id: ac.config.get('id')}); }, pitch: function(ac) { @@ -26,11 +23,10 @@ YUI.add('Stateful', function(Y, NAME) { 'catch': function(ac) { var self = this; this.logit('catch'); -// DOING ac.models.get('Stateful').getData(function(err, data) { ac.done({ ball: self.ball, - time: self.time, + time: time, model: data.modelId }, 'json'); }); @@ -38,7 +34,7 @@ YUI.add('Stateful', function(Y, NAME) { logit: function(msg) { - Y.log(msg + this.time, 'warn', NAME); + Y.log(msg + time, 'warn', NAME); } }; diff --git a/examples/sandbox/metabubble/mojits/Child/controller.common.js b/examples/sandbox/metabubble/mojits/Child/controller.common.js index 0789602e6..e87337ba9 100644 --- a/examples/sandbox/metabubble/mojits/Child/controller.common.js +++ b/examples/sandbox/metabubble/mojits/Child/controller.common.js @@ -8,10 +8,6 @@ YUI.add('Child', function(Y, NAME) { Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - index: function(ac) { var color = ac.config.get('color'); // store some analytics stuff diff --git a/examples/sandbox/metabubble/mojits/Parent/controller.common.js b/examples/sandbox/metabubble/mojits/Parent/controller.common.js index b7806c261..db3228f37 100644 --- a/examples/sandbox/metabubble/mojits/Parent/controller.common.js +++ b/examples/sandbox/metabubble/mojits/Parent/controller.common.js @@ -8,10 +8,6 @@ YUI.add('Parent', function(Y, NAME) { Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - index: function(ac) { ac.analytics.retrieve(function(analytics) { diff --git a/examples/sandbox/server_side/mojits/Layout/controller.server.js b/examples/sandbox/server_side/mojits/Layout/controller.server.js index 7895ff4e6..73ba83604 100644 --- a/examples/sandbox/server_side/mojits/Layout/controller.server.js +++ b/examples/sandbox/server_side/mojits/Layout/controller.server.js @@ -20,10 +20,6 @@ YUI.add('Layout', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - /** * Method corresponding to the 'index' action. * diff --git a/examples/sandbox/server_side/mojits/MyServer/controller.server.js b/examples/sandbox/server_side/mojits/MyServer/controller.server.js index 0f306d2d0..a7d3da3fc 100644 --- a/examples/sandbox/server_side/mojits/MyServer/controller.server.js +++ b/examples/sandbox/server_side/mojits/MyServer/controller.server.js @@ -20,10 +20,6 @@ YUI.add('MyServer', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - /** * Method corresponding to the 'index' action. * diff --git a/examples/sandbox/strangeloop/application.json b/examples/sandbox/strangeloop/application.json index 41f4ecd4d..d7f5d06ae 100644 --- a/examples/sandbox/strangeloop/application.json +++ b/examples/sandbox/strangeloop/application.json @@ -2,10 +2,6 @@ { "settings": [ "master" ], - "staticHandling": { - "useRollups": true - }, - "specs": { "frame": { "type": "HTMLFrameMojit", diff --git a/examples/sandbox/view_refresh/application.json b/examples/sandbox/view_refresh/application.json index 2b746714c..5fbdafd9d 100644 --- a/examples/sandbox/view_refresh/application.json +++ b/examples/sandbox/view_refresh/application.json @@ -1,12 +1,6 @@ [ { "settings": [ "master" ], - "log": { - "client": { - "level": "debug", - "yui": false - } - }, "specs": { "frame": { "type": "HTMLFrameMojit", diff --git a/examples/sandbox/yuiconf/application.json b/examples/sandbox/yuiconf/application.json index 77a6414a4..9691d092c 100644 --- a/examples/sandbox/yuiconf/application.json +++ b/examples/sandbox/yuiconf/application.json @@ -2,10 +2,6 @@ { "settings": [ "master" ], - "staticHandling": { - "useRollups": true - }, - "specs": { "frame": { "type": "HTMLFrameMojit", diff --git a/lib/app/addons/ac/output-adapter.common.js b/lib/app/addons/ac/output-adapter.common.js deleted file mode 100644 index f11845a99..000000000 --- a/lib/app/addons/ac/output-adapter.common.js +++ /dev/null @@ -1,382 +0,0 @@ -/* - * Copyright (c) 2011-2012, Yahoo! Inc. All rights reserved. - * Copyrights licensed under the New BSD License. - * See the accompanying LICENSE file for terms. - */ - - -/*jslint anon:true, sloppy:true, nomen:true*/ -/*global YUI*/ - - -/** - * @module ActionContextAddon - */ -YUI.add('mojito-output-adapter-addon', function(Y, NAME) { - - return; - -// var CHARSET = 'charset=utf-8', -// // the functions this core addon is going to attach to the -// // ActionContext -// flush, -// done, -// error, - -// // serializer container -// serializer, -// // private functions -// serialize_xml, -// serialize_json, -// sanitizeConfigCopy, -// sanitizeChildren, -// attachChildViewIdsToMetaChildren, -// CACHE = { renderers: { } }; - -// /* see action-context.common.js for docs */ -// flush = function(data, meta) { -// // NOTE: 'this' is the ActionContext instance -// return this.done(data, meta, true); -// }; - - -// /* see action-context.common.js for docs */ -// done = function(data, meta, more) { - -// // NOTE: 'this' is the ActionContext instance -// var callbackFunc = more ? 'flush' : 'done', -// instance = this.command.instance, -// config = instance.config || {}, -// context = this.command.context || {}, -// adapter = this._adapter, -// action = this.command.action, -// mojitView, -// renderer = null, -// contentType, -// contentPath, -// appConfig = this.app.config, -// viewEngineOptions, -// perf = Y.mojito.perf.timeline('mojito', 'ac.done', -// 'time to execute ac.done process', this.command); - -// if (Y.Lang.isString(meta)) { -// // If the meta string is a serializer set it -// if (serializer[meta]) { -// meta = { -// serialize: meta -// }; -// } else {// Otherwise we think it is a template name -// meta = { -// view: {name: meta} -// }; -// } -// } - -// meta = meta || {}; -// meta.assets = meta.assets || {}; -// meta.assets.bottom = meta.assets.bottom || {}; -// meta.assets.bottom.js = meta.assets.bottom.js || []; -// meta.http = meta.http || {}; -// meta.http.code = meta.http.code || 200; -// meta.http.headers = meta.http.headers || {}; -// meta.view = meta.view || {}; -// viewEngineOptions = appConfig.viewEngine || {}; - -// // Cache all tempates by default -// meta.view.cacheTemplates = true; - -// if (appConfig.cacheViewTemplates) { -// meta.view.cacheTemplates = appConfig.cacheViewTemplates || false; -// } - -// // Check to see we need to serialize the data -// if (meta.serialize && serializer[meta.serialize]) { -// // Warning: this metod can change the "meta" object -// data = serializer[meta.serialize].apply(this, [data, meta]); -// // Once we are done remove the "serialize" option so others don't -// // use it by mistake -// delete meta.serialize; -// } - -// // We want to know the view name, id, and binder used later so make sure -// // "meta" is up-to-date -// meta.view.name = meta.view.name || action; -// // TODO: Use a different binder -// meta.view.binder = meta.view.binder || meta.view.name; -// mojitView = instance.views[meta.view.name]; -// if (!meta.view.id) { -// meta.view.id = Y.guid(); -// //DEBUGGING: meta.view.id += '-viewId-' + -// // this.command.instance.type + '-' + this.command.action; -// } - -// // If we are given "meta.view['content-path']" use it over what we got -// // from "instance.views" -// if (mojitView && meta.view['content-path']) { -// mojitView['content-path'] = meta.view['content-path']; -// } - -// // If we are given "meta.view['engine']" use it over what we got from -// // "instance.views" -// if (mojitView && meta.view.engine) { -// mojitView.engine = meta.view.engine; -// } - -// meta.assets = Y.mojito.util.metaMerge(meta.assets, config.assets || {}); -// // Here we ask each "thing" attached to the AC if it wants to add view -// // "meta" -// Y.Object.each(this, function(item) { -// if (item && Y.Lang.isFunction(item.mergeMetaInto)) { -// item.mergeMetaInto(meta); -// } -// }); - -// contentType = meta.http.headers['content-type']; - -// attachChildViewIdsToMetaChildren(meta.children, meta.binders); - -// if (!meta.binders) { -// meta.binders = {}; -// } - -// // Don't clobber an existing meta.binders[meta.view.id] entry -// if (!meta.binders[meta.view.id]) { -// meta.binders[meta.view.id] = { -// base: instance.base, -// action: action, -// config: sanitizeConfigCopy(instance.config), -// type: instance.type, -// viewId: meta.view.id, -// guid: instance.instanceId, // DEPRECATED, use instanceId -// instanceId: instance.instanceId, -// // We don't use the actual config's children object, because -// // that might not have been what was actually dispatched. We get -// // the actual children config that was dispatched through the -// // meta object. -// children: sanitizeChildren(meta.children) -// }; -// } - -// /* -// * Here we provide an easy way to return a string -// * data == 'a string of chars' -// */ -// if (Y.Lang.isString(data)) { -// // if the user didn't provided a content type, we'll make it plain -// // text -// if (!contentType) { -// meta.http.headers['content-type'] = ['text/plain; ' + CHARSET]; -// } -// //Y.log('pushing to native adapter', 'info', NAME); -// adapter[callbackFunc](data, meta); - -// perf.done(); // closing the 'ac.done' timeline - -// return; -// } - -// // there may not be a view if this is running on the client -// if (mojitView) { - -// data = data || {}; // default null data to empty view template - -// // Get the YUI Module name of the Binder if we can. -// if (meta.binders[meta.view.id]) { -// meta.binders[meta.view.id].name = mojitView['binder-module']; -// meta.binders[meta.view.id].needs = -// mojitView['binder-yui-sorted']; -// } - -// if (!contentType) { -// meta.http.headers['content-type'] = ['text/html; ' + CHARSET]; -// } - -// data.mojit_guid = instance.instanceId; -// data.mojit_view_id = meta.view.id; -// data.mojit_assets = this.command.instance.assetsRoot; - -// // Use engine to compile template view -// // Y.log('Rendering "' + meta.view.name + '" view for "' + -// // (instance.id || '@' + instance.type) + '"', 'info', NAME); - -// contentPath = mojitView['content-path']; -// // this is mainly used by html5app -// if (appConfig.pathToRoot) { -// contentPath = appConfig.pathToRoot + contentPath; -// } - -// // optimize for server only -// if (typeof context.runtime !== undefined && 'server' === context.runtime) { -// renderer = CACHE.renderers[mojitView.engine]; -// if (!renderer) { -// // viewEngineOptions are app level -// CACHE.renderers[mojitView.engine] = renderer = -// new (Y.mojito.addons.viewEngines[mojitView.engine])('', viewEngineOptions); -// } -// renderer.viewId = meta.view.id; -// renderer.render(data, instance.type, contentPath, adapter, meta, more); -// } else { -// renderer = new Y.mojito.ViewRenderer( -// mojitView.engine, -// meta.view.id, -// viewEngineOptions -// ); -// renderer.render(data, instance.type, contentPath, adapter, meta, more); -// } - -// } else { - -// if (Y.Lang.isObject(data)) { -// throw new Error("Missing view template: '" + meta.view.name + -// "'"); -// } -// adapter[callbackFunc](data, meta); -// } - -// perf.done(); // closing the 'ac.done' timeline - -// Y.mojito.perf.mark('mojito', 'action:stop', 'after the action', this.command); -// }; - - -// /* see action-context.common.js for docs */ -// error = function(err) { -// // NOTE: 'this' is the ActionContext instance -// this._adapter.error(err); -// }; - - -// sanitizeConfigCopy = function(cfg) { -// var copy; -// if (!Y.Lang.isObject(cfg)) { -// return cfg; -// } -// copy = Y.mojito.util.copy(cfg); -// copy.children = sanitizeChildren(copy.children); -// return copy; -// }; - - -// sanitizeChildren = function(children) { -// if (!Y.Lang.isObject(children)) { -// return children; -// } -// Y.Object.each(children, function(v, k) { -// // We don't want child params to be included within a mojit's -// // configuration, because it can leak implemenation details out to -// // other execution environments. For example, the client runtime -// // does not need to have the parameters of the mojits that were used -// // to construct the initial client DOM. -// delete children[k].params; -// }); -// return children; -// }; - - -// attachChildViewIdsToMetaChildren = function(children, binders) { -// if (!children) { -// return; -// } -// Y.Object.each(binders, function(binderData, viewId) { -// Y.Object.each(children, function(childData) { -// if (binderData.instanceId === childData.instanceId) { -// childData.viewId = viewId; -// } -// }); -// }); -// }; - - -// /* -// * @method serialize_json -// * @private -// * @param {object} data -// * @param {object} meta -// * @return {string} -// */ -// serialize_json = function(data, meta) { -// meta.http.headers['content-type'] = ['application/json; ' + CHARSET]; - -// try { -// return Y.JSON.stringify(data); -// } catch (err) { -// throw new Error('Expected JSON data, but there was a parse error' + -// ' on the string: \"' + data); -// } - -// }; - - -// /* -// * @method serialize_xml -// * @private -// * @param {object} data -// * @param {object} meta -// * @return {string} -// */ -// serialize_xml = function(data, meta) { -// // A dirty XML function I found on the interwebs -// function simpleXml(js, wraptag) { -// if (js instanceof Object) { -// return simpleXml(Y.Object.keys(js).map(function(key) { -// return simpleXml(js[key], key); -// }).join('\n'), wraptag); -// } - -// return ((wraptag) ? '<' + wraptag + '>' : '') + js + -// ((wraptag) ? '' : '' -// ); -// } - -// meta.http.headers['content-type'] = ['application/xml; ' + CHARSET]; -// if (Y.Lang.isObject) { -// try { -// return simpleXml(data, 'xml'); -// } catch (err) { -// throw new Error('Expected XML data, but there was a parse' + -// ' error on the string: \"' + err.message); -// } -// } - -// return ''; -// }; - - -// serializer = { -// json: serialize_json, -// xml: serialize_xml -// }; - - -// /** -// * Access point: ac.* -// * The main API point for developers in a Controller. This addon provides -// * the core functions -// * of the ActionContext: flush, done, and error. -// * @class OutputAdapter.common -// * @private -// */ -// function Addon(command, adapter, ac) { -// /* -// * This plugin doesn't act the same way as the others. It attaches its -// * functions directly onto the ActionContext. Each functions is assumed -// * that 'this' will be the actual instance of ActionContext, not the -// * object this constructor is creating. -// */ -// ac.flush = flush; -// ac.done = done; -// ac.error = error; -// } - -// Addon.prototype = { -// namespace: 'core' -// }; - -// Y.namespace('mojito.addons.ac').core = Addon; - -}, '0.1.0', {requires: [ - 'json-stringify', - 'event-custom-base', - 'mojito-view-renderer', - 'mojito-util' -]}); diff --git a/lib/app/autoload/controller-context.common.js b/lib/app/autoload/controller-context.common.js deleted file mode 100644 index aba24d3bd..000000000 --- a/lib/app/autoload/controller-context.common.js +++ /dev/null @@ -1,224 +0,0 @@ -/* - * Copyright (c) 2011-2012, Yahoo! Inc. All rights reserved. - * Copyrights licensed under the New BSD License. - * See the accompanying LICENSE file for terms. - */ - - -// << RIC + This is not used anymore - -/*jslint anon:true, sloppy:true, nomen:true*/ -/*global YUI*/ - - -YUI.add('mojito-controller-context', function(Y, NAME) { - - return; - -// /** -// * @class ControllerContext -// * @constructor -// * @param {Object} opts contains instance, Y, store, appShareYUIInstance, -// * dispatch -// */ -// function ControllerContext(opts) { -// this.instance = opts.instance; -// this.dispatch = opts.dispatch; -// this.store = opts.store; -// this.Y = opts.Y; -// this.shareYUIInstance = false; -// Y.mojito.util.shouldShareYUIInstance(opts.appShareYUIInstance, this.instance); -// this.init(); -// } - - -// ControllerContext.prototype = { - -// init: function() { - -// var c = this.Y.mojito.controllers[this.instance['controller-module']], -// controller; - -// controller = this.controller = Y.mojito.util.heir(c); - -// if (Y.Lang.isFunction(controller.init)) { -// controller.init(this.instance.config); -// } - -// return; // << RIC - -// /* -// var error, -// // Not really an instance...more like constructor options...see -// // controller.init() call below. -// instance = this.instance, -// controller, -// shareYUIInstance = this.shareYUIInstance, - -// // do a shallow merge of app-level and mojit-level configs -// // mojit config properties take precedence -// configApp = this.store.getAppConfig({}).config, -// configCombo = Y.merge(configApp, instance.config), - -// // Y.mojito.controller for legacy, multi-instance. -// // Y.mojito.controllers for shared instance -// c = this.Y.mojito.controller || -// this.Y.mojito.controllers[instance['controller-module']]; - -// // If sharing YUI and controller clobbers, log an error. -// if (shareYUIInstance && this.Y.mojito.controller) { -// this.Y.log(instance['controller-module'] + ' mojit' + -// ' clobbers Y.mojito.controller namespace. Please use' + -// ' `Y.namespace(\'mojito.controllers\')[NAME]` when ' + -// ' declaring controllers.', 'error', NAME); -// } - -// if (!Y.Lang.isObject(c)) { -// error = new Error('Mojit controller prototype is not an' + -// ' object! (mojit id: \'' + instance.id + '\')'); - -// error.code = 500; -// throw error; -// } - -// // we make a controller instance by using the heir() function, this -// // gives us proper function scope within the controller actions -// controller = this.controller = Y.mojito.util.heir(c); - -// if (Y.Lang.isFunction(controller.init)) { -// // Use the instance data which isn't really an instance to -// // provide construction parameters for the controller init(). -// controller.init(configCombo); -// } - -// // mix in any (new) actions (the actions namespace here would be -// // populated by the resource store...but currently unused? Could -// // this be replaced by light inheritance to the controllers here). -// Y.Object.each(this.Y.mojito.actions, function(action, actionName) { -// this.Y.log('mixing action \'' + actionName + -// '\' into controller...', 'debug', NAME); -// controller[actionName] = function() { -// action.apply(controller, arguments); -// }; -// }); - -// // stash the models this controller has available to be later -// // attached to the ActionContext -// this.models = {}; - -// Y.Object.each(this.Y.mojito.models, function(model, modelName) { - -// if (!shareYUIInstance || (instance.models && -// instance.models[modelName])) { - -// // TODO: Why? There's no particular reason to inherit here. -// var modelInstance = Y.mojito.util.heir(model); - -// if (Y.Lang.isFunction(modelInstance.init)) { -// // NOTE that we use the same config here that we use to -// // config the controller -// modelInstance.init(configCombo); -// } -// this.models[modelName] = modelInstance; -// } -// }, this); -// */ -// }, - - -// invoke: function(command, adapter) { - -// var ac; - -// try { -// ac = new this.Y.mojito.ActionContext({ -// command: command, -// controller: this.controller, -// models: this.models, -// dispatch: this.dispatch, -// adapter: adapter, -// store: this.store -// }); -// } catch (err) { -// console.log(err); -// this.Y.log('WARNING!! Uncaught error from dispatch on' + -// ' instance \'' + (command.instance.id || '@' + command.instance.type) + -// '\'', 'error', NAME); -// this.Y.log(err.message, 'error', NAME); -// this.Y.log(err.stack, 'error', NAME); -// } - -// return; // << RIC - -// /* -// var instance = this.instance, -// config = command.instance.config, -// // this is the action that will be executed -// action = command.action, -// ac, -// perfID, -// perf; - -// // replace the non-expanded command instance with the proper -// // instance, that was already expanded when the controller context -// // was created - -// // TODO: This may not be necessary...we did this in dispatch(). -// // command.instance = instance; - -// // however! we want to use the most recent config, not the cached -// // config, because that can change between action executions! -// // command.instance.config = config; - -// // if there is no action, make 'index' the default -// // TODO: This may not be necessary...we did this in dispatch(). -// if (!command.action) { -// // use instance config for default action or 'index' -// command.action = instance.action || 'index'; -// } - -// perfID = Y.mojito.perf.idFromCommand(command); -// perf = Y.mojito.perf.timeline('mojito', 'ac:ctor', -// 'create ac (which also invokes the action)', perfID); - -// try { -// // Note: ac var is here to appease jslint. -// ac = new this.Y.mojito.ActionContext({ -// command: command, -// controller: this.controller, -// models: this.models, -// dispatch: this.dispatch, -// adapter: adapter, -// store: this.store -// }); - -// // TODO: uncomment once above issue is repaired. -// // ac.invoke(command, adapter); // do it this way ;) -// } catch (err) { -// if (adapter.error) { -// adapter.error(err); -// } else { -// this.Y.log('WARNING!! Uncaught error from dispatch on' + -// ' instance \'' + (instance.id || '@' + instance.type) + -// '\'', 'error', NAME); -// this.Y.log(err.message, 'error', NAME); -// this.Y.log(err.stack, 'error', NAME); -// } -// // TODO: should we be rethrowing the error here? We log but we -// // don't ensure callers know...but then again dispatch() may -// // need this level of isolation. -// } finally { -// perf.done(); -// } - -// this.Y.mojito.perf.mark('mojito', 'core_dispatch_end', 'invoked action', perfID); -// */ -// } -// }; - -// Y.namespace('mojito').ControllerContext = ControllerContext; - -}, '0.1.0', {requires: [ - 'mojito-action-context', - 'mojito-util' -]}); diff --git a/lib/app/autoload/dispatch.client.js b/lib/app/autoload/dispatch.client.js index 1915ddcde..fe67f13eb 100644 --- a/lib/app/autoload/dispatch.client.js +++ b/lib/app/autoload/dispatch.client.js @@ -149,6 +149,10 @@ YUI.add('mojito-dispatcher', function (Y, NAME) { rpc: function (command, adapter) { if (this.tunnel) { + // this prevents the server from trying to RPC itself + // FUTURE: might be a better place to do this + delete command.rpc; + Y.log('Dispatching instance "' + (command.instance.base || '@' + command.instance.type) + '" through RPC tunnel.', 'info', NAME); this.tunnel.rpc(command, adapter); diff --git a/lib/app/autoload/json-stringify-hack.server.js b/lib/app/autoload/json-stringify-hack.server.js index ad13ea43d..2f422e19f 100644 --- a/lib/app/autoload/json-stringify-hack.server.js +++ b/lib/app/autoload/json-stringify-hack.server.js @@ -12,6 +12,8 @@ YUI.add('json-stringify-hack', function (Y) { // http://yuilibrary.com/projects/yui3/ticket/2532759 // PR here: // https://github.com/yui/yui3/pull/270 + // GIST for verification: + // https://gist.github.com/4119541 Y.JSON.stringify = JSON.stringify; }, '3.5.1-2', {requires: ['json-stringify']}); diff --git a/lib/app/autoload/loader.common.js b/lib/app/autoload/loader.common.js deleted file mode 100644 index dd44914a6..000000000 --- a/lib/app/autoload/loader.common.js +++ /dev/null @@ -1,171 +0,0 @@ -/* - * Copyright (c) 2011-2012, Yahoo! Inc. All rights reserved. - * Copyrights licensed under the New BSD License. - * See the accompanying LICENSE file for terms. - */ - - -/*jslint anon:true, sloppy:true, nomen:true*/ -/*global YUI*/ - -YUI.add('mojito-loader', function(Y, NAME) { - - return; - -// // IE has a limit of 2048-character long URLs. -// var MAX_URL_LENGTH = 2000; - -// function Loader(appConfig, prefix) { -// // Y.log('ctor()', 'mojito', NAME); -// this.appConfig = appConfig; -// this.prefix = prefix || ''; // optional -// } - - -// Loader.prototype = { - -// load: function(paths, cb) { -// var self = this, -// mod, -// script, -// scriptsToLoad = {}, -// loaded = 0; - -// paths = paths || {}; -// if (!Y.Object.size(paths)) { -// cb(); -// return; -// } - -// for (mod in paths) { -// if (paths.hasOwnProperty(mod)) { -// if (!YUI.Env.mods[mod]) { -// script = paths[mod]; -// if (/\.js$/i.test(script)) { -// if ('/' === script.charAt(0)) { -// script = this.prefix + script; -// } -// scriptsToLoad[script] = true; -// } -// } -// } -// } -// scriptsToLoad = Y.Object.keys(scriptsToLoad); -// if (!scriptsToLoad.length) { -// return cb(); -// } - -// Y.log('loading ' + scriptsToLoad.join(', '), 'mojito', NAME); - -// Y.Get.script(scriptsToLoad, { -// async: true, - -// onSuccess: function() { -// Y.log('SUCCESS', 'mojito', NAME); -// cb(); -// }, - -// onFailure: function() { -// Y.log('FAILURE', 'warn', NAME); -// var err = new Error('Failed to load URLs: ' + -// scriptsToLoad.join(', ')); -// cb(err); -// } -// }); -// }, - - -// _createURLlist: function(base, list) { -// var url, urls = [], -// newPart, newLength; -// if (!list.length) { -// return []; -// } -// url = base + list.shift(); -// while (list.length) { -// newPart = list.shift(); -// newLength = url.length + 1 + newPart.length; -// if (newLength > MAX_URL_LENGTH) { -// urls.push(url); -// url = base + newPart; -// } else { -// url += '&' + newPart; -// } -// } -// urls.push(url); -// return urls; -// }, - - - -// // this also pulls in dependencies -// createYuiLibComboUrl: function(modules, filter) { -// var required = {}, -// comboJsParts = [], -// comboCssParts = [], -// loader, -// filterDef, -// filterDefSearchExp, -// i, -// name, -// info, -// filteredPath, -// combo = { js: [], css: [] }, -// config = this.appConfig && this.appConfig.yui && this.appConfig.yui.config; - -// filter = filter || 'min'; - -// loader = new Y.Loader((config || {})); -// for (i = 0; i < modules.length; i += 1) { -// name = modules[i]; -// required[name] = true; -// } -// loader.ignoreRegistered = true; -// loader.calculate({required: required}); - -// // workaround for a bug fixed in yui-3.5.0 -// Object.keys(loader.moduleInfo).forEach(function(module) { -// var m = loader.moduleInfo[module]; -// YUI.Env._renderedMods[module] = m; -// }); - -// filterDef = loader.FILTER_DEFS[filter.toUpperCase()]; -// if (filterDef) { -// filterDefSearchExp = new RegExp(filterDef.searchExp); -// } - -// for (i = 0; i < loader.sorted.length; i += 1) { -// name = loader.sorted[i]; -// if (('parallel' !== name) && (name.indexOf('nodejs') === -1)) { -// info = loader.moduleInfo[name]; -// if (info) { -// filteredPath = (filterDef) ? -// info.path.replace(filterDefSearchExp, -// filterDef.replaceStr) : -// info.path; - -// if ('lang/datatype-date' === name) { -// // this one is messed up -// filteredPath = 'datatype/lang/datatype-date.js'; -// } - -// if ('js' === info.type) { -// comboJsParts.push(loader.root + filteredPath); -// } else if ('css' === info.type) { -// comboCssParts.push(loader.root + filteredPath); -// } -// } -// } -// } -// combo.js = this._createURLlist(loader.comboBase, comboJsParts); -// combo.css = this._createURLlist(loader.comboBase, comboCssParts); -// return combo; -// } -// }; - -// Y.namespace('mojito').Loader = Loader; - -}, '0.1.0', {requires: [ - 'get', - 'mojito' -]}); diff --git a/lib/app/autoload/logger.common.js b/lib/app/autoload/logger.common.js deleted file mode 100644 index aff21c48e..000000000 --- a/lib/app/autoload/logger.common.js +++ /dev/null @@ -1,217 +0,0 @@ -/* - * Copyright (c) 2011-2012, Yahoo! Inc. All rights reserved. - * Copyrights licensed under the New BSD License. - * See the accompanying LICENSE file for terms. - */ - - -/*jslint anon:true, sloppy:true, nomen:true*/ -/*global YUI*/ - - -YUI.add('mojito-logger', function(Y, NAME) { - - return; - -// // TODO: [Issue 70] Clean up the logger implementation. - -// var isYuiLog = /^yui/, -// LOG_LEVEL = 'info', -// logNothingAtAllEver = false, -// defaults = { -// writer: null, //assigned below -// formatter: null, //assigned below -// timestamp: true, -// level: LOG_LEVEL, -// defaultLevel: 'info', -// yui: false, -// buffer: false, -// maxBufferSize: 1024, -// order: [ -// 'DEBUG', 'MOJITO', 'INFO', 'WARN', 'ERROR', 'NONE' -// ], -// filter: { -// DEBUG: true, -// MOJITO: true, -// INFO: true, -// WARN: true, -// ERROR: true, -// NONE: true -// } -// }; - - -// defaults.writer = function(data) { -// var i = 0; -// if (!console || !console.log) { -// // not much to do if I can't console.log. Sorry, IE6 -// return; -// } -// if (Y.Lang.isArray(data)) { -// // this is a flush of many logs -// for (i = 0; i < data.length; i += 1) { -// console.log(data[i]); -// } -// } else { -// console.log.apply(console, arguments); -// } -// }; - - -// defaults.formatter = function(msg, lvl, source, timestamp, opts, id) { -// var ts = opts.timestamp ? '(' + timestamp + ') ' : '', -// code = '', -// stack = ''; - -// if (msg instanceof Error) { -// if (msg.code) { -// code = ' ' + msg.code; -// } -// if (msg.stack) { -// stack = '\n' + msg.stack; -// } -// msg = 'Error' + code + ': ' + msg.message + stack; -// } else if (Y.Lang.isObject(msg)) { -// msg = Y.JSON.stringify(msg, null, 2); -// } -// source = source ? source + ': ' : ''; -// return '[' + lvl.toUpperCase() + '] ' + ts + source + msg; -// }; - - -// function Logger(opts, id) { -// var cnt = 0, -// order, -// lvl; - -// this._opts = Y.merge(defaults, opts); -// this._buffer = []; - -// if (id) { -// this._id = id; -// } - -// order = this._opts.order || []; -// lvl = this._opts.level.toLowerCase(); - -// for (cnt = 0; cnt < order.length; cnt += 1) { -// this._opts.filter[order[cnt]] = true; -// } -// cnt = 0; -// while (cnt <= order.length) { -// if (order[cnt] && order[cnt].toLowerCase() !== lvl) { -// this._opts.filter[order[cnt]] = false; -// } else { -// break; -// } -// cnt += 1; -// } - -// //Hmm... If the count is the same length as the order list we mean NONE -// if (cnt === order.length) { -// logNothingAtAllEver = true; -// } - -// if (this._opts.filter.DEBUG) { -// if (!YUI._mojito) { -// YUI._mojito = {}; -// } -// YUI._mojito.DEBUG = true; -// } -// } - - -// Logger.prototype = { - -// log: function(msg, lvl, source) { - -// var level, -// isYui, -// baseLevel, -// now; - -// if (logNothingAtAllEver) { -// return; -// } - -// now = new Date().getTime(); - -// // flush-fast if msg is {flush: true} -// if (Y.Lang.isObject(msg) && msg.flush === true) { -// return this.flush(); -// } - -// level = (lvl || this._opts.defaultLevel).toLowerCase(); -// isYui = isYuiLog.test(level); -// baseLevel = isYui ? level.split('-').pop() : level; - -// // the fat filter strips out log calls below current base log level -// if (!this._opts.filter[baseLevel.toUpperCase()]) { -// return; -// } - -// // this strips out all YUI logs if the 'showYui' option is false -// if (isYui && !this._opts.yui) { -// return; -// } - -// if (this._opts.buffer) { -// this._buffer.push([msg, level, source, now]); -// // auto-flush buffer if breaking max buffer size -// if (Y.Object.size(this._buffer) > this._opts.maxBufferSize) { -// this.flush(); -// } -// } else { -// this._publish(msg, level, source, now); -// } -// }, - - -// flush: function() { -// var log, logs = []; -// if (this._opts.publisher) { -// this._opts.publisher(this._buffer); -// } else { -// while (this._buffer.length) { -// log = this._buffer.shift(); -// logs.push(this._opts.formatter(log[0], log[1], log[2], -// log[3], this._opts, this._id)); -// } -// this._opts.writer(logs); -// } -// this._buffer = []; -// }, - - -// setFormatter: function(f) { -// this._opts.formatter = f; -// }, - - -// setWriter: function(w) { -// this._opts.writer = w; -// }, - - -// setPublisher: function(p) { -// console.log('publisher set: ' + p.toString()); -// this._opts.publisher = p; -// }, - - -// _publish: function(msg, lvl, src, ts) { -// //console.log('default publisher'); -// if (this._opts.publisher) { -// this._opts.publisher(msg, lvl, src, ts, this._id); -// } else { -// this._opts.writer(this._opts.formatter(msg, lvl, src, ts, -// this._opts, this._id)); -// } -// } -// }; - -// Y.namespace('mojito').Logger = Logger; - -}, '0.1.0', {requires: [ - 'mojito' -]}); diff --git a/lib/app/autoload/resource-store-adapter.common.js b/lib/app/autoload/resource-store-adapter.common.js deleted file mode 100644 index 7f9fdec58..000000000 --- a/lib/app/autoload/resource-store-adapter.common.js +++ /dev/null @@ -1,203 +0,0 @@ -/* - * Copyright (c) 2011-2012, Yahoo! Inc. All rights reserved. - * Copyrights licensed under the New BSD License. - * See the accompanying LICENSE file for terms. - */ - - -/*jslint anon:true, sloppy:true, nomen:true*/ -/*global YUI*/ - - -/** - * This object is responsible for running mojits. - * @class MojitoDispatcher - * @constructor - * @param {ServerStore} resourceStore the store to use. - * @private - */ -YUI.add('mojito-resource-store-adapter', function(Y, NAME) { - - return; - -/* - Y.namespace('mojito').ResourceStoreAdapter = { - - ENV: '', - - - init: function(env, resourceStore) { - - Y.log('resource store adapter init', 'mojito', NAME); - - this.ENV = env; - this.store = resourceStore; - - return this; - }, - - - expandInstance: function(instance, ctx, cb) { - //Y.log('expandInstance', 'mojito', NAME); - return this.expandInstanceForEnv(this.ENV, instance, ctx, cb); - }, - - - expandInstanceForEnv: function(env, instance, context, callback) { - var base = {}, - source = {}, - my = this; - - if (!instance.instanceId) { - instance.instanceId = Y.guid(); - //DEBUGGING: instance.instanceId += '-instance-common-' + - // [instance.base||'', instance.type||''].join('-'); - } - - // What are being asked to expand? - if (instance.base) { - source.name = instance.base; - source.func = this.getSpec; - } else if (instance.type) { - source.name = instance.type; - source.func = this.getType; - } else { - // We don't have any inputs so fail - throw new Error('There was no info in the "instance" object'); - } - - // This contains the app "definition" and app config - my.getApp(env, context, function(app) { - - // Here we get either the a spec or a type - source.func(env, source.name, context, function(err, data) { - if (err) { - callback(err, {}); - return; - } - - // Merge the inputs from right to left (right most values - // win) - base = my.merge(app, data, instance); - - // Ensure the "instance" has been properly resolved. If - // there are no specs in the application.json file, there is - // an error below because the instance is invalid. We should - // check here for a valid instance object and throw an error - // if it is not. This happens because someone could create a - // routes.json file with routes that don't route to mojit - // instances, and the URI router creates invalid commands, - // which are passed into the dispatch. - if (!my.validate(base)) { - callback({ - message: 'Instance was not valid.', - stack: Y.JSON.stringify(base, null, 4) - }, {}); - return; - } - - // Add the final "base" to the cache - my.cache(env, instance, context, base); - - callback(null, base); - }, my); - }); - }, - - - getApp: function(env, context, callback) { - var obj = {}; - - callback(obj); - }, - - - getAppPath: function() { - return this.store._config.root; - }, - - - getAppConfig: function(context) { - return this.store.getAppConfig(context); - }, - - - getSpec: function(env, id, context, callback, scope) { - - if (!scope) { - scope = this; - } - - scope.store.getSpec(env, id, context, callback); - }, - - - getType: function(env, type, context, callback, scope) { - - if (!scope) { - scope = this; - } - - scope.store.getType(env, type, context, callback); - }, - - - merge: function() { - var obj = {}, - i; - - for (i = 0; i < arguments.length; i += 1) { - obj = Y.mojito.util.mergeRecursive(obj, arguments[i]); - } - - return obj; - }, - - - validate: function(base) { - - if (!base.type || !base.yui) { - return false; - } - return true; - }, - - - isCached: function(env, instance, context) { - return false; - }, - - - getCached: function(env, instance, context) { - return {}; - }, - - - cache: function(env, instance, context, obj) { - return false; - }, - - - serializeClientStore: function(ctx) { - //Y.log('serializeClientStore', 'warn', NAME); - return this.store.serializeClientStore(ctx); - }, - - - getMojitTypeDetails: function(env, ctx, mojitType, dest) { - //Y.log('getMojitTypeDetails', 'warn', NAME); - return this.store.getMojitTypeDetails(env, ctx, mojitType, dest); - }, - - - getRoutes: function(ctx) { - //Y.log('getRoutes', 'warn', NAME); - return this.store.getRoutes(ctx); - } - }; -*/ - -}, '0.1.0', {requires: [ - 'mojito-util', - 'json-stringify' -]}); diff --git a/lib/app/autoload/store.server.js b/lib/app/autoload/store.server.js index fdc7a2b3d..38650f54f 100644 --- a/lib/app/autoload/store.server.js +++ b/lib/app/autoload/store.server.js @@ -1422,11 +1422,6 @@ YUI.add('mojito-resource-store', function(Y, NAME) { addResourceVersion: function(res) { res.affinity = new Affinity(res.affinity); - if (this._appConfigStatic.deferAllOptionalAutoloads && - 'optional' === res.affinity.type) { - return; - } - if (res.selector) { this.selectors[res.selector] = true; } diff --git a/lib/app/autoload/tunnel.common.js b/lib/app/autoload/tunnel-client.common.js similarity index 100% rename from lib/app/autoload/tunnel.common.js rename to lib/app/autoload/tunnel-client.common.js diff --git a/lib/app/mojits/TunnelProxy/controller.server.js b/lib/app/mojits/TunnelProxy/controller.server.js index 7e987dcb0..ec5f34f58 100644 --- a/lib/app/mojits/TunnelProxy/controller.server.js +++ b/lib/app/mojits/TunnelProxy/controller.server.js @@ -76,10 +76,6 @@ YUI.add('TunnelProxy', function(Y, NAME) { Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - __call: function(ac) { // This key is set by the TunnelServer in _handleRpc(). var proxyCommand = ac.params.body('proxyCommand'), diff --git a/lib/mojito.js b/lib/mojito.js index 0a07d1ada..2bc51b704 100644 --- a/lib/mojito.js +++ b/lib/mojito.js @@ -598,43 +598,6 @@ MojitoServer.prototype.getWebPages = function(urls, cb) { initOne(); }; - -/** - * Sets the formatting function for the server's associated logger. - * @param {function(string, number, string, Date, Object, number)} formatter A - * function accepting a message, level, source, timestamp, options, and - * request ID which will format those parameters for output. - */ -MojitoServer.prototype.setLogFormatter = function(formatter) { - this._logFormatter = formatter; -}; - - -/** - * Sets the publisher function for the server's associated logger. The publisher - * is invoked when buffering is not active, or when flush() is invoked on the - * log. - * @param {function(string, number, string, Date, number)} publisher A - * function accepting a message, level, source, timestamp, and request ID - * which will publish (i.e. output) that data (rather than buffering it). - */ -MojitoServer.prototype.setLogPublisher = function(publisher) { - this._logPublisher = publisher; -}; - - -/** - * Sets the write function for the server's associated logger. The writer is - * invoked with the formatter associated with the server's logger. Set - * setLogFormatter for more information. - * @param {function(function(string, number, string, Date, Object, number))} - * writer A function accepting a formatting function as a parameter. - */ -MojitoServer.prototype.setLogWriter = function(writer) { - this._logWriter = writer; -}; - - // ---------------------------------------------------------------------------- // Mojito // ---------------------------------------------------------------------------- diff --git a/lib/server-log.js b/lib/server-log.js deleted file mode 100644 index 54412ed14..000000000 --- a/lib/server-log.js +++ /dev/null @@ -1,147 +0,0 @@ -/* - * Copyright (c) 2011-2012, Yahoo! Inc. All rights reserved. - * Copyrights licensed under the New BSD License. - * See the accompanying LICENSE file for terms. - */ - - -/*jslint anon:true, sloppy:true*/ - - -// TODO: [Issue 70] SIMPLIFY. - -// TODO: [Issue 97] allow options to be on config.json at the framework -// level. -var tty = require('tty'), - LOG_LEVEL = 'debug', - YUI_LOGS = true, - isatty = tty.isatty(1) && tty.isatty(2), - tests = { - INFO: /INFO$/, - DEBUG: /DEBUG$/, - WARN: /WARN$/, - ERROR: /ERROR$/ - }, - writer, - colored, - bland, - formatter, - options; - -writer = function(data) { - var i; - - if (typeof data === 'object' && data.length) { - // this is a flush of many logs - for (i = 0; i < data.length; i += 1) { - console.log(data[i]); - } - } else { - console.log.apply(console, arguments); - } -}; - - -colored = function(msg, lvl, source, timestamp, opts) { - var ts = opts.timestamp ? ('(' + timestamp + ') ').grey : '', - code = '', - stack = ''; - - if (msg === undefined) { - msg = 'undefined'; - } else if (msg === null) { - msg = 'null'; - } else if (msg instanceof Error) { - if (msg.code) { - code = ' ' + msg.code; - } - if (msg.stack) { - stack = '\n' + msg.stack; - } - msg = ('Error' + code + ': ' + msg.message + stack); - } else if (typeof msg === 'object') { - msg = JSON.stringify(msg, null, 2); - } else { - msg = msg ? msg.toString() : ''; - } - source = source ? (source + ': ').blue : ''; - lvl = lvl || 'INFO'; - lvl = lvl.toUpperCase(); - if (tests.ERROR.test(lvl)) { - lvl = ('[' + lvl + '] ').red.bold; - msg = msg.red.bold; - } else if (tests.WARN.test(lvl)) { - lvl = ('[' + lvl + '] ').yellow.bold; - msg = msg.yellow.bold; - } else if (tests.INFO.test(lvl)) { - lvl = ('[' + lvl + '] ').white; - msg = msg.green; - } else if (tests.DEBUG.test(lvl)) { - lvl = ('[' + lvl + '] ').cyan; - msg = msg.cyan; - } else { - lvl = ('[' + lvl + '] ').magenta; - msg = msg.magenta; - } - return lvl + ts + source + msg; -}; - - -bland = function(msg, lvl, source, timestamp, opts) { - var ts = opts.timestamp ? ('(' + timestamp + ') ') : '', - code = '', - stack = ''; - - if (msg instanceof Error) { - if (msg.code) { - code = ' ' + msg.code; - } - if (msg.stack) { - stack = '\n' + msg.stack; - } - msg = ('Error' + code + ': ' + msg.message + stack); - } else if (typeof msg === 'object') { - msg = JSON.stringify(msg, null, 2); - } else { - msg = msg ? msg.toString() : ''; - } - source = source ? (source + ': ') : ''; - lvl = lvl || 'INFO'; - lvl = lvl.toUpperCase(); - lvl = ('[' + lvl + '] '); - return lvl + ts + source + msg; -}; - - -formatter = function(msg, lvl, source, timestamp, opts) { - var myFormatter = (isatty && ''.red) ? colored : bland; - - return myFormatter(msg, lvl, source, timestamp, opts); -}; - - -options = { - writer: writer, - formatter: formatter, - timestamp: true, - level: LOG_LEVEL, - defaultLevel: 'debug', - yui: YUI_LOGS, - order: [ - 'DEBUG', 'MOJITO', 'INFO', 'WARN', 'ERROR', 'NONE' - ], - filter: { - DEBUG: true, - MOJITO: true, - INFO: true, - WARN: true, - ERROR: true, - NONE: true - } -}; - -/** - */ -module.exports = { - options: options -}; diff --git a/package.json b/package.json index b789141ad..022bbca0b 100644 --- a/package.json +++ b/package.json @@ -50,7 +50,7 @@ }, "devDependencies": { "node-static": "~0.6.1", - "yahoo-arrow": "0.0.64" + "yahoo-arrow": "~0.0.69" }, "homepage": "http://developer.yahoo.com/cocktails/mojito/", "repository": { diff --git a/tests/base/mojito-test.js b/tests/base/mojito-test.js index 6e7f86178..fde9e7656 100644 --- a/tests/base/mojito-test.js +++ b/tests/base/mojito-test.js @@ -61,7 +61,6 @@ YUI.add('mojito-models-addon', function(Y, NAME) {}); YUI.add('mojito-i13n-addon', function(Y, NAME) {}); YUI.add('mojito-intl-addon', function(Y, NAME) {}); YUI.add('mojito-meta-addon', function(Y, NAME) {}); -YUI.add('mojito-output-adapter-addon', function(Y, NAME) {}); YUI.add('mojito-params-addon', function(Y, NAME) {}); YUI.add('mojito-partial-addon', function(Y, NAME) {}); YUI.add('mojito-url-addon', function(Y, NAME) {}); @@ -79,20 +78,15 @@ YUI.add('mojito-mu', function(Y, NAME) {}); /* AUTOLOAD */ YUI.add('mojito-action-context', function(Y, NAME) {}); -YUI.add('mojito-controller-context', function(Y, NAME) {}); YUI.add('mojito-dispatcher', function(Y, NAME) {}); -YUI.add('mojito-loader', function(Y, NAME) {}); -YUI.add('mojito-logger', function(Y, NAME) {}); YUI.add('mojito-mojit-proxy', function(Y, NAME) {}); YUI.add('mojito-output-handler', function(Y, NAME) {}); YUI.add('mojito-perf', function(Y, NAME) {}); YUI.add('mojito-resource-store', function(Y, NAME) {}); -YUI.add('mojito-resource-store-adapter', function(Y, NAME) {}); YUI.add('mojito-rest-lib', function(Y, NAME) {}); YUI.add('mojito-route-maker', function(Y, NAME) {}); YUI.add('mojito-client-store', function(Y, NAME) {}); -// Don't add mojito-tunnel-client. It's optional, so adding always will -// confuse our test that makes sure it's not loaded sometimes :) +YUI.add('mojito-tunnel-client', function(Y, NAME) {}); YUI.add('mojito-util', function(Y, NAME) {}); YUI.add('mojito-view-renderer', function(Y, NAME) {}); diff --git a/tests/fixtures/badfiles/mojits/M/controller.server.js b/tests/fixtures/badfiles/mojits/M/controller.server.js index d5c9ac688..e518ffd5c 100644 --- a/tests/fixtures/badfiles/mojits/M/controller.server.js +++ b/tests/fixtures/badfiles/mojits/M/controller.server.js @@ -15,11 +15,7 @@ YUI.add('M', function(Y, NAME) { * @class Controller * @constructor */ - Y.mojito.controller = { - - init: function(config) { - this.config = config; - }, + Y.namespace('mojito.controllers')[NAME] = { /** * Method corresponding to the 'index' action. diff --git a/tests/fixtures/gsg5-appConfig/application.json b/tests/fixtures/gsg5-appConfig/application.json index a25021a40..84cd84e5a 100644 --- a/tests/fixtures/gsg5-appConfig/application.json +++ b/tests/fixtures/gsg5-appConfig/application.json @@ -2,29 +2,12 @@ { "settings": [ "master" ], - "deferAllOptionalAutoloads": true, - "staticHandling": { "prefix": "", "appName": "app", "frameworkName": "fw" }, - "yui": { - "base": "/foo/" - }, - - "log": { - "client": { - "level": "warn", - "yui": false - }, - "server": { - "level": "warn", - "yui": false - } - }, - "specs": { "flickr": { "type": "HTMLFrameMojit", diff --git a/tests/fixtures/gsg5-appConfig/server.js b/tests/fixtures/gsg5-appConfig/server.js index 6ff56ef1e..9daa55aed 100644 --- a/tests/fixtures/gsg5-appConfig/server.js +++ b/tests/fixtures/gsg5-appConfig/server.js @@ -3,10 +3,4 @@ */ var m = require('mojito'); -// you can access log formatter, writer, or publisher for the server here - -//m.setLogPublisher(function() { -// console.log(arguments); -//}); - module.exports = m.createServer(); diff --git a/tests/fixtures/gsg5/application.json b/tests/fixtures/gsg5/application.json index 2653c7486..071d3666d 100644 --- a/tests/fixtures/gsg5/application.json +++ b/tests/fixtures/gsg5/application.json @@ -2,17 +2,6 @@ { "settings": [ "master" ], - "log": { - "client": { - "level": "warn", - "yui": false - }, - "server": { - "level": "warn", - "yui": false - } - }, - "specs": { "flickr": { "type": "HTMLFrameMojit", diff --git a/tests/fixtures/gsg5/server.js b/tests/fixtures/gsg5/server.js index 6ff56ef1e..9daa55aed 100644 --- a/tests/fixtures/gsg5/server.js +++ b/tests/fixtures/gsg5/server.js @@ -3,10 +3,4 @@ */ var m = require('mojito'); -// you can access log formatter, writer, or publisher for the server here - -//m.setLogPublisher(function() { -// console.log(arguments); -//}); - module.exports = m.createServer(); diff --git a/tests/fixtures/ondemand/application.json b/tests/fixtures/ondemand/application.json deleted file mode 100644 index 9ad738af1..000000000 --- a/tests/fixtures/ondemand/application.json +++ /dev/null @@ -1,58 +0,0 @@ -[ - { - "settings": [ "master" ], - - "log": { - "client": { - "level": "warn", - "yui": false - }, - "server": { - "level": "warn", - "yui": false - } - }, - - "yui": { - "dependencyCalculations": "ondemand" - }, - - "specs": { - "flickr": { - "type": "HTMLFrameMojit", - "config": { - "deploy": true, - "child": { - "type": "FlickrBrowser", - "config": { - "children": { - "thumbs": { - "base": "thumbs" - }, - "detail": { - "base": "detail" - } - } - } - }, - "meta": { - "viewport": "width=device-width,initial-scale=1" - }, - "assets": { - "top": { - "css": [ - "/static/PagedFlickr/assets/index.css" - ] - } - } - } - }, - "thumbs": { - "type": "PagedFlickr" - }, - "detail": { - "type": "FlickrDetail" - } - } - } -] diff --git a/tests/fixtures/ondemand/index.js b/tests/fixtures/ondemand/index.js deleted file mode 100644 index 14391af18..000000000 --- a/tests/fixtures/ondemand/index.js +++ /dev/null @@ -1,16 +0,0 @@ -/* - * Copyright (c) 2011 Yahoo! Inc. All rights reserved. - */ -// this file provides Manhattan integration - -process.chdir(__dirname); - -/** - * @token given by manhattan and used to emit that the app is ready - */ -module.exports = function(config, token) { - var app = require('./server.js'); - - // send the application to Manhattan along with the token - process.emit("application-ready", token, app); -}; diff --git a/tests/fixtures/ondemand/models/flickr.common.js b/tests/fixtures/ondemand/models/flickr.common.js deleted file mode 100644 index 1cc7ecc51..000000000 --- a/tests/fixtures/ondemand/models/flickr.common.js +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Copyright (c) 2011 Yahoo! Inc. All rights reserved. - */ -YUI.add('ModelFlickr', function(Y) { - - Y.mojito.models.flickr = { - - getFlickrImages: function(queryString, start, count, callback) { - var q; - start = parseInt(start) || 0; - count = parseInt(count) || 10; - // The YQL docs say that the second number is the end, but in practice - // it appears to be the count. - // http://developer.yahoo.com/yql/guide/paging.html#remote_limits - q = 'select * from flickr.photos.search(' + start + ',' + count + ') where text="' + queryString + '"'; - Y.YQL(q, function(rawYqlData) { - if (!rawYqlData || !rawYqlData.query || !rawYqlData.query.results) { - callback(rawYqlData); - return; - } - var rawPhotos = rawYqlData.query.results.photo, - rawPhoto = null, - photos = [], - photo = null, - i = 0; - - for (; i < rawPhotos.length; i++) { - rawPhoto = rawPhotos[i]; - photo = { - id: rawPhoto.id, - title: rawPhoto.title, - url: buildFlickrUrlFromRecord(rawPhoto) - }; - // some flickr photos don't have titles, so force them - if (!photo.title) { - photo.title = "[" + queryString + "]"; - } - photos.push(photo); - } - callback(null, photos); - }); - }, - - getFlickrDetail: function(imageId, callback) { - var q = 'select * from flickr.photos.info where photo_id="' + imageId + '"'; - Y.YQL(q, function(rawYqlData) { - if (!rawYqlData || !rawYqlData.query || !rawYqlData.query.results) { - callback("BAD YQL!"); - return; - } - var photo = rawYqlData.query.results.photo; - photo.urls.image = { - type: 'image', - content: buildFlickrUrlFromRecord(photo) - }; - callback(null, photo); - }); - } - - }; - - function buildFlickrUrlFromRecord(record) { - return 'http://farm' + record.farm - + '.static.flickr.com/' + record.server - + '/' + record.id + '_' + record.secret + '.jpg'; - } - -// TODO: remove 'jsonp-url' requirement when YUI fix for bug http://yuilibrary.com/projects/yui3/ticket/2530251 is deployed. -}, '0.0.1', {requires: ['yql', 'jsonp-url']}); diff --git a/tests/fixtures/ondemand/mojits/FlickrBrowser/assets/logmutator.js b/tests/fixtures/ondemand/mojits/FlickrBrowser/assets/logmutator.js deleted file mode 100644 index 6e9168240..000000000 --- a/tests/fixtures/ondemand/mojits/FlickrBrowser/assets/logmutator.js +++ /dev/null @@ -1,27 +0,0 @@ -/* - * Copyright (c) 2011 Yahoo! Inc. All rights reserved. - */ -YUI.add('flickr-logger-mutator', function(Y) { - - /* - * Providing a custom log formatter function - */ - -// function formatter(msg, lvl, src, ts, opts) { -// return "LOG MSG: " + msg.toLowerCase() + " -[" + lvl.toUpperCase() + "]- (" + ts + ")"; -// } -// -// YUI._mojito.logger.set('formatter', formatter); - - /* - * Totally replacing the log publisher with something we do ourselves - */ - -// function publisher() { -// console.log(arguments); -// } -// -// YUI._mojito.logger.set('publisher', publisher); - - -}, 'whatever'); \ No newline at end of file diff --git a/tests/fixtures/ondemand/mojits/FlickrBrowser/binders/index.js b/tests/fixtures/ondemand/mojits/FlickrBrowser/binders/index.js deleted file mode 100644 index e9cb8b35a..000000000 --- a/tests/fixtures/ondemand/mojits/FlickrBrowser/binders/index.js +++ /dev/null @@ -1,48 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add('FlickrBrowserBinderIndex', function(Y, NAME) { - -/** - * The FlickrBrowserBinderIndex module. - * - * @module FlickrBrowserBinderIndex - */ - - /** - * Constructor for the Binder class. - * - * @param mojitProxy {Object} The proxy to allow the binder to interact - * with its owning mojit. - * - * @class Binder - * @constructor - */ - - Y.namespace('mojito.binders')[NAME] = { - - /** - * Binder initialization method, invoked after all binders on the page - * have been constructed. - */ - init: function(mojitProxy) { - this.mojitProxy = mojitProxy; - this.mojitProxy.listen('flickr-image-chosen', function(event) { - Y.log('on flickr-image-chosen ' + event.data.id, 'debug', NAME); - // Turn the event generated by PagedFlickr into something - // understood by FlickrDetail. - mojitProxy.broadcast('flickr-image-detail', { id: event.data.id }); - }); - }, - - /** - * The binder method, invoked to allow the mojit to attach DOM event - * handlers. - * - * @param node {Node} The DOM node to which this mojit is attached. - */ - bind: function(node) {} - - }; - -}, '0.0.1', {requires: ['mojito-client']}); diff --git a/tests/fixtures/ondemand/mojits/FlickrBrowser/controller.common.js b/tests/fixtures/ondemand/mojits/FlickrBrowser/controller.common.js deleted file mode 100644 index ceab9d768..000000000 --- a/tests/fixtures/ondemand/mojits/FlickrBrowser/controller.common.js +++ /dev/null @@ -1,33 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add('FlickrBrowser', function(Y) { - -/** - * The FlickrBrowser module. - * - * @module FlickrBrowser - */ - - /** - * Constructor for the Controller class. - * - * @class Controller - * @constructor - */ - Y.mojito.controller = { - - /** - * Method corresponding to the 'index' action. - * - * @param ac {Object} The action context that provides access - * to the Mojito API. - */ - index: function(ac) { - ac.composite.done(); - } - - }; - - -}, '0.0.1', {requires: []}); diff --git a/tests/fixtures/ondemand/mojits/FlickrBrowser/views/index.hb.html b/tests/fixtures/ondemand/mojits/FlickrBrowser/views/index.hb.html deleted file mode 100644 index 264212e92..000000000 --- a/tests/fixtures/ondemand/mojits/FlickrBrowser/views/index.hb.html +++ /dev/null @@ -1,12 +0,0 @@ -
- - - - - -
- {{{thumbs}}} - - {{{detail}}} -
-
diff --git a/tests/fixtures/ondemand/mojits/FlickrBrowser/views/index.iphone.hb.html b/tests/fixtures/ondemand/mojits/FlickrBrowser/views/index.iphone.hb.html deleted file mode 100644 index 23e1394f5..000000000 --- a/tests/fixtures/ondemand/mojits/FlickrBrowser/views/index.iphone.hb.html +++ /dev/null @@ -1,14 +0,0 @@ -
- - - - - - - -
- {{{thumbs}}} -
- {{{detail}}} -
-
diff --git a/tests/fixtures/ondemand/mojits/FlickrDetail/assets/index.css b/tests/fixtures/ondemand/mojits/FlickrDetail/assets/index.css deleted file mode 100644 index f800122ca..000000000 --- a/tests/fixtures/ondemand/mojits/FlickrDetail/assets/index.css +++ /dev/null @@ -1,41 +0,0 @@ -.FlickrDetail .img td { - width: 400px; - height: 400px; - text-align: center; - vertical-align: middle; -} -.FlickrDetail .img img { - max-width: 400px; - max-height: 400px; -} -.FlickrDetail th { - padding: 0.2em 0.6em; - text-align: right; - vertical-align: top; -} -.FlickrDetail .title th { - vertical-align: bottom; -} -.FlickrDetail .title td { - font-size: 120%; -} -.FlickrDetail .title td , -.FlickrDetail .description td , -.FlickrDetail .tags td { - max-width: 20em; -} -.FlickrDetail .none { - font-style: italic; - font-size: 80%; - color: #888; - padding-left: 0.6em; -} -.FlickrDetail.device-iphone .img img { - max-width: 300px; - max-height: 300px; -} -.FlickrDetail.device-iphone .title td , -.FlickrDetail.device-iphone .description td , -.FlickrDetail.device-iphone .tags td { - max-width: 20em; -} diff --git a/tests/fixtures/ondemand/mojits/FlickrDetail/assets/message.css b/tests/fixtures/ondemand/mojits/FlickrDetail/assets/message.css deleted file mode 100644 index 919c7e99b..000000000 --- a/tests/fixtures/ondemand/mojits/FlickrDetail/assets/message.css +++ /dev/null @@ -1,12 +0,0 @@ -.FlickrDetail.info { - text-align: center; - vertical-align: middle; - padding: 1em; - color: #666; -} -.FlickrDetail.error { - text-align: center; - vertical-align: middle; - padding: 1em; - color: #844; -} diff --git a/tests/fixtures/ondemand/mojits/FlickrDetail/binders/index.js b/tests/fixtures/ondemand/mojits/FlickrDetail/binders/index.js deleted file mode 100644 index f834efe86..000000000 --- a/tests/fixtures/ondemand/mojits/FlickrDetail/binders/index.js +++ /dev/null @@ -1,65 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add('FlickrDetailBinderIndex', function(Y, NAME) { - -/** - * The FlickrDetailBinder module. - * - * @module FlickrDetailBinder - */ - - /** - * Constructor for the Binder class. - * - * @param mojitProxy {Object} The proxy to allow the binder to interact - * with its owning mojit. - * - * @class Binder - * @constructor - */ - - Y.namespace('mojito.binders')[NAME] = { - - /** - * Binder initialization method, invoked after all binders on the page - * have been constructed. - */ - init: function(mojitProxy) { - var self = this; - this.mojitProxy = mojitProxy; - this.mojitProxy.listen('flickr-image-detail', function(payload) { - Y.log('on flickr-image-detail ' + payload.data.id, 'debug', NAME); - var urlParams = Y.mojito.util.copy(mojitProxy.context); - var routeParams = { - image: payload.data.id - }; - mojitProxy.invoke('index', { - params: { - url: urlParams, - route: routeParams - }, - scope: this - }, function(err, markup) { - if (err) { - Y.log(err, 'error', NAME); - } else { - self.node.replace(markup); - } - }); - }); - }, - - /** - * The binder method, invoked to allow the mojit to attach DOM event - * handlers. - * - * @param node {Node} The DOM node to which this mojit is attached. - */ - bind: function(node) { - this.node = node; - } - - }; - -}, '@VERSION@', {requires: ['node', 'mojito-client', 'mojito-util']}); diff --git a/tests/fixtures/ondemand/mojits/FlickrDetail/binders/message.js b/tests/fixtures/ondemand/mojits/FlickrDetail/binders/message.js deleted file mode 100644 index b64fb3974..000000000 --- a/tests/fixtures/ondemand/mojits/FlickrDetail/binders/message.js +++ /dev/null @@ -1,15 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add('FlickrDetailBinderMessage', function(Y, NAME) { - - /** - * The FlickrDetailBinderMessage module. - * - * @module FlickrDetailBinderMessage - */ - - // The "index" binder is entirely appropriate here. - Y.mojito.binders.FlickrDetailBinderMessage = Y.mojito.binders.FlickrDetailBinderIndex; - -}, '0.1.0', {requires: ['FlickrDetailBinderIndex']}); diff --git a/tests/fixtures/ondemand/mojits/FlickrDetail/controller.common.js b/tests/fixtures/ondemand/mojits/FlickrDetail/controller.common.js deleted file mode 100644 index 9ad63310d..000000000 --- a/tests/fixtures/ondemand/mojits/FlickrDetail/controller.common.js +++ /dev/null @@ -1,64 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add('FlickrDetail', function(Y) { - - Y.mojito.controller = { - - index: function(ac) { - - var image = ac.params.getFromMerged('image') || '0'; - - // a little paranoia about inputs - if (!image.match(/^\d+$/)) { - ac.assets.addCss('./message.css'); - ac.done({ type: 'error', message: ac.intl.lang('ERROR_BAD_IMAGE_ID') }, { view: { name:'message' } }); - return; - } - - if ('0' === image) { - ac.assets.addCss('./message.css'); - ac.done({ type: 'info', message: ac.intl.lang('INFO_NO_IMAGE_CHOSEN') }, { view: { name:'message' } }); - return; - } - - ac.models.flickr.getFlickrDetail(image, function(err, details) { - if (err) { - ac.error(new Error("YQL Error")); - return; - } - //Y.log(details); - details.intl = { - DATE_POSTED: ac.intl.lang('DATE_POSTED'), - TITLE: ac.intl.lang('TITLE'), - TITLE_NONE: ac.intl.lang('TITLE_NONE'), - DESCRIPTION: ac.intl.lang('DESCRIPTION'), - DESCRIPTION_NONE: ac.intl.lang('DESCRIPTION_NONE'), - OWNER_USERNAME: ac.intl.lang('OWNER_USERNAME'), - TAGS: ac.intl.lang('TAGS'), - TAGS_NONE: ac.intl.lang('TAGS_NONE'), - URLS: ac.intl.lang('URLS'), - URL_PHOTO_PAGE: ac.intl.lang('URL_PHOTO_PAGE'), - URL_IMAGE: ac.intl.lang('URL_IMAGE') - }; - details.intl.posted = ac.intl.formatDate(new Date(1000 * Number(details.dates.posted))); - - // The mustache library we're using is a little finicky. - details.title = details.title || false; - if (details.title) { - details.have_title = true; - } - details.description = details.description || false; - if (details.description) { - details.have_description = true; - } - details.tags = details.tags || false; - - ac.assets.addCss('./index.css'); - ac.done(details); - }); - } - - }; - -}, '0.0.1', {requires: ['mojito-intl-addon', 'ModelFlickr'], lang: ['de', 'en-US']}); diff --git a/tests/fixtures/ondemand/mojits/FlickrDetail/lang/FlickrDetail_de.js b/tests/fixtures/ondemand/mojits/FlickrDetail/lang/FlickrDetail_de.js deleted file mode 100644 index 58222cb95..000000000 --- a/tests/fixtures/ondemand/mojits/FlickrDetail/lang/FlickrDetail_de.js +++ /dev/null @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add("lang/FlickrDetail_de", function(Y) { - - Y.Intl.add( - - "FlickrDetail", // associated module - "de", // BCP 47 language tag - - // key-value pairs for this module and language - { - INFO_NO_IMAGE_CHOSEN: "Bild nicht gewählt", - ERROR_BAD_IMAGE_ID: "Fehler! schlechtes Image-Kennung.", - ERROR_NO_DETAILS: "Wir konnten zu Informationen für Foto abzurufen.", - DATE_POSTED: "Erstellungsdatum", - TITLE: "Titel", - TITLE_NONE: "kein", - DESCRIPTION: "Beschreibung", - DESCRIPTION_NONE: "keine", - OWNER_USERNAME: "Benutzername", - TAGS: "Begriffe", - TAGS_NONE: "keine", - URLS: "URLs", - URL_PHOTO_PAGE: "Seite", - URL_IMAGE: "Bild" - } - ); -}, "3.1.0", {requires: ['intl']}); diff --git a/tests/fixtures/ondemand/mojits/FlickrDetail/lang/FlickrDetail_en-US.js b/tests/fixtures/ondemand/mojits/FlickrDetail/lang/FlickrDetail_en-US.js deleted file mode 100644 index d5203d494..000000000 --- a/tests/fixtures/ondemand/mojits/FlickrDetail/lang/FlickrDetail_en-US.js +++ /dev/null @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add("lang/FlickrDetail_en-US", function(Y) { - - Y.Intl.add( - - "FlickrDetail", // associated module - "en-US", // BCP 47 language tag - - // key-value pairs for this module and language - { - INFO_NO_IMAGE_CHOSEN: "No image chosen.", - ERROR_BAD_IMAGE_ID: "Error! Bad image ID.", - ERROR_NO_DETAILS: "Failed to retrieve details for photo.", - DATE_POSTED: "posted", - TITLE: "title", - TITLE_NONE: "none", - DESCRIPTION: "description", - DESCRIPTION_NONE: "none", - OWNER_USERNAME: "username", - TAGS: "tags", - TAGS_NONE: "none", - URLS: "urls", - URL_PHOTO_PAGE: "page", - URL_IMAGE: "image" - } - ); -}, "3.1.0", {requires: ['intl']}); diff --git a/tests/fixtures/ondemand/mojits/FlickrDetail/views/index.hb.html b/tests/fixtures/ondemand/mojits/FlickrDetail/views/index.hb.html deleted file mode 100644 index a54e2fa91..000000000 --- a/tests/fixtures/ondemand/mojits/FlickrDetail/views/index.hb.html +++ /dev/null @@ -1,45 +0,0 @@ -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- {{title}} -
{{#intl}}{{TITLE}}{{/intl}} - {{#have_title}}{{title}}{{/have_title}} - {{^have_title}}{{#intl}}{{TITLE_NONE}}{{/intl}}{{/have_title}} -
{{#intl}}{{OWNER_USERNAME}}{{/intl}}{{#owner}}{{username}}{{/owner}}
{{#intl}}{{DATE_POSTED}}{{/intl}}{{#intl}}{{posted}}{{/intl}}
{{#intl}}{{DESCRIPTION}}{{/intl}} - {{#have_description}}{{description}}{{/have_description}} - {{^have_description}}{{#intl}}{{DESCRIPTION_NONE}}{{/intl}}{{/have_description}} -
{{#intl}}{{TAGS}}{{/intl}} - {{#tags}}{{#tag}}{{content}} {{/tag}}{{/tags}} - {{^tags}}{{#intl}}{{TAGS_NONE}}{{/intl}}{{/tags}} -
{{#intl}}{{URLS}}{{/intl}} - {{#urls}}{{#url}}{{#intl}}{{URL_PHOTO_PAGE}}{{/intl}}{{/url}}{{/urls}} - {{#urls}}{{#image}}{{#intl}}{{URL_IMAGE}}{{/intl}}{{/image}}{{/urls}} -
-
diff --git a/tests/fixtures/ondemand/mojits/FlickrDetail/views/index.iphone.hb.html b/tests/fixtures/ondemand/mojits/FlickrDetail/views/index.iphone.hb.html deleted file mode 100644 index 942909f33..000000000 --- a/tests/fixtures/ondemand/mojits/FlickrDetail/views/index.iphone.hb.html +++ /dev/null @@ -1,45 +0,0 @@ -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- {{title}} -
{{#intl}}{{TITLE}}{{/intl}} - {{#have_title}}{{title}}{{/have_title}} - {{^have_title}}{{#intl}}{{TITLE_NONE}}{{/intl}}{{/have_title}} -
{{#intl}}{{OWNER_USERNAME}}{{/intl}}{{#owner}}{{username}}{{/owner}}
{{#intl}}{{DATE_POSTED}}{{/intl}}{{#intl}}{{posted}}{{/intl}}
{{#intl}}{{DESCRIPTION}}{{/intl}} - {{#have_description}}{{description}}{{/have_description}} - {{^have_description}}{{#intl}}{{DESCRIPTION_NONE}}{{/intl}}{{/have_description}} -
{{#intl}}{{TAGS}}{{/intl}} - {{#tags}}{{#tag}}{{content}} {{/tag}}{{/tags}} - {{^tags}}{{#intl}}{{TAGS_NONE}}{{/intl}}{{/tags}} -
{{#intl}}{{URLS}}{{/intl}} - {{#urls}}{{#url}}{{#intl}}{{URL_PHOTO_PAGE}}{{/intl}}{{/url}}{{/urls}} - {{#urls}}{{#image}}{{#intl}}{{URL_IMAGE}}{{/intl}}{{/image}}{{/urls}} -
-
diff --git a/tests/fixtures/ondemand/mojits/FlickrDetail/views/message.hb.html b/tests/fixtures/ondemand/mojits/FlickrDetail/views/message.hb.html deleted file mode 100644 index 2fe92137f..000000000 --- a/tests/fixtures/ondemand/mojits/FlickrDetail/views/message.hb.html +++ /dev/null @@ -1,3 +0,0 @@ -
-{{message}} -
diff --git a/tests/fixtures/ondemand/mojits/PagedFlickr/assets/index.css b/tests/fixtures/ondemand/mojits/PagedFlickr/assets/index.css deleted file mode 100644 index 592e7c6cd..000000000 --- a/tests/fixtures/ondemand/mojits/PagedFlickr/assets/index.css +++ /dev/null @@ -1,12 +0,0 @@ -.pics .pic img { - height: 60px; - width: 60px; -} -#paginate span { margin:1em; } - -ul.pics { - list-style-type: none; -} -ul.pics .pic { - padding: 1px; -} diff --git a/tests/fixtures/ondemand/mojits/PagedFlickr/binders/index.js b/tests/fixtures/ondemand/mojits/PagedFlickr/binders/index.js deleted file mode 100644 index 823664358..000000000 --- a/tests/fixtures/ondemand/mojits/PagedFlickr/binders/index.js +++ /dev/null @@ -1,62 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add('PagedFlickrBinderIndex', function(Y, NAME) { - -/** - * The PagedFlickrBinder module. - * - * @module PagedFlickrBinder - */ - - /** - * Constructor for the Binder class. - * - * @param mojitProxy {Object} The proxy to allow the binder to interact - * with its owning mojit. - * - * @class Binder - * @constructor - */ - - Y.namespace('mojito.binders')[NAME] = { - - /** - * Binder initialization method, invoked after all binders on the page - * have been constructed. - */ - init: function(mojitProxy) { - this.mojitProxy = mojitProxy; - }, - - /** - * The binder method, invoked to allow the mojit to attach DOM event - * handlers. - * - * @param node {Node} The DOM node to which this mojit is attached. - */ - bind: function(node) { - node.all('.pic a').on('click', function(evt) { - var url = evt.currentTarget.get('href'); - Y.log('on click ' + url, 'debug', NAME); - var matches = url.match(/image\/(\d+)/); - var imageID = matches[1]; - if (imageID) { - evt.halt(); - - // Update our pagination links so when we round-trip back - // to the server, we persist the image choice. - node.all('#paginate a').each(function(pageLink) { - var pageUrl = pageLink.get('href'); - pageLink.set('href', pageUrl.replace(/\/image\/\d+/, '/image/'+imageID)); - }); - - Y.log('broadcast flickr-image-chosen ' + imageID, 'debug', NAME); - this.mojitProxy.broadcast('flickr-image-chosen', { id: imageID }); - } - }, this); - } - - }; - -}, '0.0.1', {requires: ['node', 'mojito-client']}); diff --git a/tests/fixtures/ondemand/mojits/PagedFlickr/controller.common.js b/tests/fixtures/ondemand/mojits/PagedFlickr/controller.common.js deleted file mode 100644 index c8559b6b7..000000000 --- a/tests/fixtures/ondemand/mojits/PagedFlickr/controller.common.js +++ /dev/null @@ -1,90 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add('PagedFlickr', function(Y) { - -/** - * The PagedFlickr module. - * - * @module PagedFlickr - */ - - var PAGESIZE = 6; - - /** - * Constructor for the Controller class. - * - * @class Controller - * @constructor - */ - Y.mojito.controller = { - - /** - * Method corresponding to the 'index' action. - * - * @param ac {Object} The action context that provides access - * to the Mojito API. - */ - index: function(ac) { - - Y.log(ac.params.getAll()); - - var page = ac.params.getFromMerged('page'), - start; - - // a little paranoia about inputs - page = parseInt(page, 10); - if ((!page) || (page < 1)) { - page = 1; - } - - // The "page" parameter is base-1, but the model's "start" - // parameter is base-0. - start = (page-1) * PAGESIZE; - - ac.models.flickr.getFlickrImages('mojito', start, PAGESIZE, function(err, images) { - var dateString, data; - - // on model error, fail fast - if (err) { - return ac.error(err); - } - - dateString = ac.intl.formatDate(new Date()); - data = { - date: dateString, - greeting: ac.intl.lang("TITLE"), - prev: { - url: selfUrl(ac, 'flickr', { page: page-1 } ), - title: ac.intl.lang("PREV") || 'prev' - }, - next: { - url: selfUrl(ac, 'flickr', { page: page+1 } ), - title: ac.intl.lang("NEXT") || 'next' - } - }; - - Y.Array.each(images, function(image) { - image.detail_url = selfUrl(ac, 'flickr', { image: image.id }); - }, this); - data.images = images; - - if (page > 1) { - data.prev.url = selfUrl(ac, 'flickr', { page: page-1 }); - data.has_prev = true; - } - ac.done(data); - - }); - } - }; - - function selfUrl(ac, mojitType, mods) { - var params = Y.mojito.util.copy(ac.params.getFromMerged()); - for (var k in mods) { - params[k] = mods[k]; - } - return ac.url.make(mojitType, 'index', Y.QueryString.stringify(params)); - } - -}, '0.0.1', {requires: ['mojito-intl-addon', 'mojito-util', 'querystring-stringify', 'ModelFlickr'], lang: ['de', 'en-US']}); diff --git a/tests/fixtures/ondemand/mojits/PagedFlickr/controller.iphone.common.js b/tests/fixtures/ondemand/mojits/PagedFlickr/controller.iphone.common.js deleted file mode 100644 index e49ee0497..000000000 --- a/tests/fixtures/ondemand/mojits/PagedFlickr/controller.iphone.common.js +++ /dev/null @@ -1,90 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add('PagedFlickr', function(Y) { - -/** - * The PagedFlickr module. - * - * @module PagedFlickr - */ - - var PAGESIZE = 3; - - /** - * Constructor for the Controller class. - * - * @class Controller - * @constructor - */ - Y.mojito.controller = { - - /** - * Method corresponding to the 'index' action. - * - * @param ac {Object} The action context that provides access - * to the Mojito API. - */ - index: function(ac) { - - Y.log(ac.params.getAll()); - - var page = ac.params.getFromMerged('page'), - start; - - // a little paranoia about inputs - page = parseInt(page, 10); - if ((!page) || (page < 1)) { - page = 1; - } - - // The "page" parameter is base-1, but the model's "start" - // parameter is base-0. - start = (page-1) * PAGESIZE; - - ac.models.flickr.getFlickrImages('mojito', start, PAGESIZE, function(err, images) { - var dateString, data; - - // on model error, fail fast - if (err) { - return ac.error(err); - } - - dateString = ac.intl.formatDate(new Date()); - data = { - date: dateString, - greeting: ac.intl.lang("TITLE"), - prev: { - url: selfUrl(ac, 'flickr', { page: page-1 } ), - title: ac.intl.lang("PREV") || 'prev' - }, - next: { - url: selfUrl(ac, 'flickr', { page: page+1 } ), - title: ac.intl.lang("NEXT") || 'next' - } - }; - - Y.Array.each(images, function(image) { - image.detail_url = selfUrl(ac, 'flickr', { image: image.id }); - }, this); - data.images = images; - - if (page > 1) { - data.prev.url = selfUrl(ac, 'flickr', { page: page-1 }); - data.has_prev = true; - } - ac.done(data); - - }); - } - }; - - function selfUrl(ac, mojitType, mods) { - var params = Y.mojito.util.copy(ac.params.getFromMerged()); - for (var k in mods) { - params[k] = mods[k]; - } - return ac.url.make(mojitType, 'index', Y.QueryString.stringify(params)); - } - -}, '0.0.1', {requires: ['mojito-intl-addon', 'mojito-util', 'querystring-stringify', 'ModelFlickr'], lang: ['de', 'en-US']}); diff --git a/tests/fixtures/ondemand/mojits/PagedFlickr/lang/PagedFlickr_de.js b/tests/fixtures/ondemand/mojits/PagedFlickr/lang/PagedFlickr_de.js deleted file mode 100644 index 40ba40dcc..000000000 --- a/tests/fixtures/ondemand/mojits/PagedFlickr/lang/PagedFlickr_de.js +++ /dev/null @@ -1,18 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add("lang/PagedFlickr_de", function(Y) { - - Y.Intl.add( - - "PagedFlickr", // associated module - "de", // BCP 47 language tag - - // key-value pairs for this module and language - { - TITLE: "Hallo! genießen Sie Ihre Bilder", - PREV: "zurück", - NEXT: "weiter" - } - ); -}, "3.1.0", {requires: ['intl']}); diff --git a/tests/fixtures/ondemand/mojits/PagedFlickr/lang/PagedFlickr_en-US.js b/tests/fixtures/ondemand/mojits/PagedFlickr/lang/PagedFlickr_en-US.js deleted file mode 100644 index 92ccb4e49..000000000 --- a/tests/fixtures/ondemand/mojits/PagedFlickr/lang/PagedFlickr_en-US.js +++ /dev/null @@ -1,18 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add("lang/PagedFlickr_en-US", function(Y) { - - Y.Intl.add( - - "PagedFlickr", // associated module - "en-US", // BCP 47 language tag - - // key-value pairs for this module and language - { - TITLE: "Yo dawg, here's yo pics!", - PREV: "back", - NEXT: "ford", - } - ); -}, "3.1.0", {requires: ['intl']}); diff --git a/tests/fixtures/ondemand/mojits/PagedFlickr/lang/PagedFlickr_en.js b/tests/fixtures/ondemand/mojits/PagedFlickr/lang/PagedFlickr_en.js deleted file mode 100644 index 181065760..000000000 --- a/tests/fixtures/ondemand/mojits/PagedFlickr/lang/PagedFlickr_en.js +++ /dev/null @@ -1,18 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add("lang/PagedFlickr_en", function(Y) { - - Y.Intl.add( - - "PagedFlickr", // associated module - "en", // BCP 47 language tag - - // key-value pairs for this module and language - { - TITLE: "Enjoy your Flickr Images!", - PREV: "previous", - NEXT: "next" - } - ); -}, "3.1.0", {requires: ['intl']}); diff --git a/tests/fixtures/ondemand/mojits/PagedFlickr/views/index.hb.html b/tests/fixtures/ondemand/mojits/PagedFlickr/views/index.hb.html deleted file mode 100644 index d5cadcf74..000000000 --- a/tests/fixtures/ondemand/mojits/PagedFlickr/views/index.hb.html +++ /dev/null @@ -1,21 +0,0 @@ -
-

{{ greeting }} - {{ date }}

-
    - {{#images}} -
  • {{title}}
  • - {{/images}} -
-
- - {{#prev}} - {{title}} - {{/prev}} - - - {{#next}} - {{title}} - {{/next}} - - -
-
diff --git a/tests/fixtures/ondemand/mojits/PagedFlickr/views/index.iphone.hb.html b/tests/fixtures/ondemand/mojits/PagedFlickr/views/index.iphone.hb.html deleted file mode 100644 index 57a19851c..000000000 --- a/tests/fixtures/ondemand/mojits/PagedFlickr/views/index.iphone.hb.html +++ /dev/null @@ -1,26 +0,0 @@ -
-

{{ greeting }}

-
- {{#images}} -
{{title}}
- {{/images}} -
-
- - {{#has_prev}} - {{#prev}} - {{title}} - {{/prev}} - {{/has_prev}} - {{^has_prev}} - {{#prev}}{{title}}{{/prev}} - {{/has_prev}} - - - {{#next}} - {{title}} - {{/next}} - -
- {{ date }} -
diff --git a/tests/fixtures/ondemand/package.json b/tests/fixtures/ondemand/package.json deleted file mode 100644 index b3f02f1d5..000000000 --- a/tests/fixtures/ondemand/package.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "name": "paged-yql", - "description": "My Mojito Application", - "version": "0.1.0", - "contributors": [ - { - "name": "Your Name", - "email": "nobody@yahoo-inc.com" - } - ], - "config": { - "mojito": { - "version": "*" - } - } -} diff --git a/tests/fixtures/ondemand/routes.json b/tests/fixtures/ondemand/routes.json deleted file mode 100644 index 8e485d189..000000000 --- a/tests/fixtures/ondemand/routes.json +++ /dev/null @@ -1,23 +0,0 @@ -[ - { - "settings": [ "master" ], - - "flickr_by_page": { - "verbs": ["get"], - "path": "/flickr/page/:page/image/:image", - "call": "flickr.index" - }, - - "flickr_base": { - "verbs": ["get"], - "path": "/flickr", - "param": "page=1&image=0", - "call": "flickr.index" - }, - - "detail": { - - } - - } -] diff --git a/tests/fixtures/ondemand/server.js b/tests/fixtures/ondemand/server.js deleted file mode 100644 index 6ff56ef1e..000000000 --- a/tests/fixtures/ondemand/server.js +++ /dev/null @@ -1,12 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -var m = require('mojito'); - -// you can access log formatter, writer, or publisher for the server here - -//m.setLogPublisher(function() { -// console.log(arguments); -//}); - -module.exports = m.createServer(); diff --git a/tests/fixtures/precomputed-ondemand/application.json b/tests/fixtures/precomputed-ondemand/application.json deleted file mode 100644 index edce13d23..000000000 --- a/tests/fixtures/precomputed-ondemand/application.json +++ /dev/null @@ -1,58 +0,0 @@ -[ - { - "settings": [ "master" ], - - "log": { - "client": { - "level": "warn", - "yui": false - }, - "server": { - "level": "warn", - "yui": false - } - }, - - "yui": { - "dependencyCalculations": "precomputed+ondemand" - }, - - "specs": { - "flickr": { - "type": "HTMLFrameMojit", - "config": { - "deploy": true, - "child": { - "type": "FlickrBrowser", - "config": { - "children": { - "thumbs": { - "base": "thumbs" - }, - "detail": { - "base": "detail" - } - } - } - }, - "meta": { - "viewport": "width=device-width,initial-scale=1" - }, - "assets": { - "top": { - "css": [ - "/static/PagedFlickr/assets/index.css" - ] - } - } - } - }, - "thumbs": { - "type": "PagedFlickr" - }, - "detail": { - "type": "FlickrDetail" - } - } - } -] diff --git a/tests/fixtures/precomputed-ondemand/index.js b/tests/fixtures/precomputed-ondemand/index.js deleted file mode 100644 index 14391af18..000000000 --- a/tests/fixtures/precomputed-ondemand/index.js +++ /dev/null @@ -1,16 +0,0 @@ -/* - * Copyright (c) 2011 Yahoo! Inc. All rights reserved. - */ -// this file provides Manhattan integration - -process.chdir(__dirname); - -/** - * @token given by manhattan and used to emit that the app is ready - */ -module.exports = function(config, token) { - var app = require('./server.js'); - - // send the application to Manhattan along with the token - process.emit("application-ready", token, app); -}; diff --git a/tests/fixtures/precomputed-ondemand/models/flickr.common.js b/tests/fixtures/precomputed-ondemand/models/flickr.common.js deleted file mode 100644 index 1cc7ecc51..000000000 --- a/tests/fixtures/precomputed-ondemand/models/flickr.common.js +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Copyright (c) 2011 Yahoo! Inc. All rights reserved. - */ -YUI.add('ModelFlickr', function(Y) { - - Y.mojito.models.flickr = { - - getFlickrImages: function(queryString, start, count, callback) { - var q; - start = parseInt(start) || 0; - count = parseInt(count) || 10; - // The YQL docs say that the second number is the end, but in practice - // it appears to be the count. - // http://developer.yahoo.com/yql/guide/paging.html#remote_limits - q = 'select * from flickr.photos.search(' + start + ',' + count + ') where text="' + queryString + '"'; - Y.YQL(q, function(rawYqlData) { - if (!rawYqlData || !rawYqlData.query || !rawYqlData.query.results) { - callback(rawYqlData); - return; - } - var rawPhotos = rawYqlData.query.results.photo, - rawPhoto = null, - photos = [], - photo = null, - i = 0; - - for (; i < rawPhotos.length; i++) { - rawPhoto = rawPhotos[i]; - photo = { - id: rawPhoto.id, - title: rawPhoto.title, - url: buildFlickrUrlFromRecord(rawPhoto) - }; - // some flickr photos don't have titles, so force them - if (!photo.title) { - photo.title = "[" + queryString + "]"; - } - photos.push(photo); - } - callback(null, photos); - }); - }, - - getFlickrDetail: function(imageId, callback) { - var q = 'select * from flickr.photos.info where photo_id="' + imageId + '"'; - Y.YQL(q, function(rawYqlData) { - if (!rawYqlData || !rawYqlData.query || !rawYqlData.query.results) { - callback("BAD YQL!"); - return; - } - var photo = rawYqlData.query.results.photo; - photo.urls.image = { - type: 'image', - content: buildFlickrUrlFromRecord(photo) - }; - callback(null, photo); - }); - } - - }; - - function buildFlickrUrlFromRecord(record) { - return 'http://farm' + record.farm - + '.static.flickr.com/' + record.server - + '/' + record.id + '_' + record.secret + '.jpg'; - } - -// TODO: remove 'jsonp-url' requirement when YUI fix for bug http://yuilibrary.com/projects/yui3/ticket/2530251 is deployed. -}, '0.0.1', {requires: ['yql', 'jsonp-url']}); diff --git a/tests/fixtures/precomputed-ondemand/mojits/FlickrBrowser/assets/logmutator.js b/tests/fixtures/precomputed-ondemand/mojits/FlickrBrowser/assets/logmutator.js deleted file mode 100644 index 6e9168240..000000000 --- a/tests/fixtures/precomputed-ondemand/mojits/FlickrBrowser/assets/logmutator.js +++ /dev/null @@ -1,27 +0,0 @@ -/* - * Copyright (c) 2011 Yahoo! Inc. All rights reserved. - */ -YUI.add('flickr-logger-mutator', function(Y) { - - /* - * Providing a custom log formatter function - */ - -// function formatter(msg, lvl, src, ts, opts) { -// return "LOG MSG: " + msg.toLowerCase() + " -[" + lvl.toUpperCase() + "]- (" + ts + ")"; -// } -// -// YUI._mojito.logger.set('formatter', formatter); - - /* - * Totally replacing the log publisher with something we do ourselves - */ - -// function publisher() { -// console.log(arguments); -// } -// -// YUI._mojito.logger.set('publisher', publisher); - - -}, 'whatever'); \ No newline at end of file diff --git a/tests/fixtures/precomputed-ondemand/mojits/FlickrBrowser/binders/index.js b/tests/fixtures/precomputed-ondemand/mojits/FlickrBrowser/binders/index.js deleted file mode 100644 index e9cb8b35a..000000000 --- a/tests/fixtures/precomputed-ondemand/mojits/FlickrBrowser/binders/index.js +++ /dev/null @@ -1,48 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add('FlickrBrowserBinderIndex', function(Y, NAME) { - -/** - * The FlickrBrowserBinderIndex module. - * - * @module FlickrBrowserBinderIndex - */ - - /** - * Constructor for the Binder class. - * - * @param mojitProxy {Object} The proxy to allow the binder to interact - * with its owning mojit. - * - * @class Binder - * @constructor - */ - - Y.namespace('mojito.binders')[NAME] = { - - /** - * Binder initialization method, invoked after all binders on the page - * have been constructed. - */ - init: function(mojitProxy) { - this.mojitProxy = mojitProxy; - this.mojitProxy.listen('flickr-image-chosen', function(event) { - Y.log('on flickr-image-chosen ' + event.data.id, 'debug', NAME); - // Turn the event generated by PagedFlickr into something - // understood by FlickrDetail. - mojitProxy.broadcast('flickr-image-detail', { id: event.data.id }); - }); - }, - - /** - * The binder method, invoked to allow the mojit to attach DOM event - * handlers. - * - * @param node {Node} The DOM node to which this mojit is attached. - */ - bind: function(node) {} - - }; - -}, '0.0.1', {requires: ['mojito-client']}); diff --git a/tests/fixtures/precomputed-ondemand/mojits/FlickrBrowser/controller.common.js b/tests/fixtures/precomputed-ondemand/mojits/FlickrBrowser/controller.common.js deleted file mode 100644 index ceab9d768..000000000 --- a/tests/fixtures/precomputed-ondemand/mojits/FlickrBrowser/controller.common.js +++ /dev/null @@ -1,33 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add('FlickrBrowser', function(Y) { - -/** - * The FlickrBrowser module. - * - * @module FlickrBrowser - */ - - /** - * Constructor for the Controller class. - * - * @class Controller - * @constructor - */ - Y.mojito.controller = { - - /** - * Method corresponding to the 'index' action. - * - * @param ac {Object} The action context that provides access - * to the Mojito API. - */ - index: function(ac) { - ac.composite.done(); - } - - }; - - -}, '0.0.1', {requires: []}); diff --git a/tests/fixtures/precomputed-ondemand/mojits/FlickrBrowser/views/index.hb.html b/tests/fixtures/precomputed-ondemand/mojits/FlickrBrowser/views/index.hb.html deleted file mode 100644 index 264212e92..000000000 --- a/tests/fixtures/precomputed-ondemand/mojits/FlickrBrowser/views/index.hb.html +++ /dev/null @@ -1,12 +0,0 @@ -
- - - - - -
- {{{thumbs}}} - - {{{detail}}} -
-
diff --git a/tests/fixtures/precomputed-ondemand/mojits/FlickrBrowser/views/index.iphone.hb.html b/tests/fixtures/precomputed-ondemand/mojits/FlickrBrowser/views/index.iphone.hb.html deleted file mode 100644 index 23e1394f5..000000000 --- a/tests/fixtures/precomputed-ondemand/mojits/FlickrBrowser/views/index.iphone.hb.html +++ /dev/null @@ -1,14 +0,0 @@ -
- - - - - - - -
- {{{thumbs}}} -
- {{{detail}}} -
-
diff --git a/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/assets/index.css b/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/assets/index.css deleted file mode 100644 index f800122ca..000000000 --- a/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/assets/index.css +++ /dev/null @@ -1,41 +0,0 @@ -.FlickrDetail .img td { - width: 400px; - height: 400px; - text-align: center; - vertical-align: middle; -} -.FlickrDetail .img img { - max-width: 400px; - max-height: 400px; -} -.FlickrDetail th { - padding: 0.2em 0.6em; - text-align: right; - vertical-align: top; -} -.FlickrDetail .title th { - vertical-align: bottom; -} -.FlickrDetail .title td { - font-size: 120%; -} -.FlickrDetail .title td , -.FlickrDetail .description td , -.FlickrDetail .tags td { - max-width: 20em; -} -.FlickrDetail .none { - font-style: italic; - font-size: 80%; - color: #888; - padding-left: 0.6em; -} -.FlickrDetail.device-iphone .img img { - max-width: 300px; - max-height: 300px; -} -.FlickrDetail.device-iphone .title td , -.FlickrDetail.device-iphone .description td , -.FlickrDetail.device-iphone .tags td { - max-width: 20em; -} diff --git a/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/assets/message.css b/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/assets/message.css deleted file mode 100644 index 919c7e99b..000000000 --- a/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/assets/message.css +++ /dev/null @@ -1,12 +0,0 @@ -.FlickrDetail.info { - text-align: center; - vertical-align: middle; - padding: 1em; - color: #666; -} -.FlickrDetail.error { - text-align: center; - vertical-align: middle; - padding: 1em; - color: #844; -} diff --git a/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/binders/index.js b/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/binders/index.js deleted file mode 100644 index f834efe86..000000000 --- a/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/binders/index.js +++ /dev/null @@ -1,65 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add('FlickrDetailBinderIndex', function(Y, NAME) { - -/** - * The FlickrDetailBinder module. - * - * @module FlickrDetailBinder - */ - - /** - * Constructor for the Binder class. - * - * @param mojitProxy {Object} The proxy to allow the binder to interact - * with its owning mojit. - * - * @class Binder - * @constructor - */ - - Y.namespace('mojito.binders')[NAME] = { - - /** - * Binder initialization method, invoked after all binders on the page - * have been constructed. - */ - init: function(mojitProxy) { - var self = this; - this.mojitProxy = mojitProxy; - this.mojitProxy.listen('flickr-image-detail', function(payload) { - Y.log('on flickr-image-detail ' + payload.data.id, 'debug', NAME); - var urlParams = Y.mojito.util.copy(mojitProxy.context); - var routeParams = { - image: payload.data.id - }; - mojitProxy.invoke('index', { - params: { - url: urlParams, - route: routeParams - }, - scope: this - }, function(err, markup) { - if (err) { - Y.log(err, 'error', NAME); - } else { - self.node.replace(markup); - } - }); - }); - }, - - /** - * The binder method, invoked to allow the mojit to attach DOM event - * handlers. - * - * @param node {Node} The DOM node to which this mojit is attached. - */ - bind: function(node) { - this.node = node; - } - - }; - -}, '@VERSION@', {requires: ['node', 'mojito-client', 'mojito-util']}); diff --git a/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/binders/message.js b/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/binders/message.js deleted file mode 100644 index b64fb3974..000000000 --- a/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/binders/message.js +++ /dev/null @@ -1,15 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add('FlickrDetailBinderMessage', function(Y, NAME) { - - /** - * The FlickrDetailBinderMessage module. - * - * @module FlickrDetailBinderMessage - */ - - // The "index" binder is entirely appropriate here. - Y.mojito.binders.FlickrDetailBinderMessage = Y.mojito.binders.FlickrDetailBinderIndex; - -}, '0.1.0', {requires: ['FlickrDetailBinderIndex']}); diff --git a/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/controller.common.js b/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/controller.common.js deleted file mode 100644 index 9ad63310d..000000000 --- a/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/controller.common.js +++ /dev/null @@ -1,64 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add('FlickrDetail', function(Y) { - - Y.mojito.controller = { - - index: function(ac) { - - var image = ac.params.getFromMerged('image') || '0'; - - // a little paranoia about inputs - if (!image.match(/^\d+$/)) { - ac.assets.addCss('./message.css'); - ac.done({ type: 'error', message: ac.intl.lang('ERROR_BAD_IMAGE_ID') }, { view: { name:'message' } }); - return; - } - - if ('0' === image) { - ac.assets.addCss('./message.css'); - ac.done({ type: 'info', message: ac.intl.lang('INFO_NO_IMAGE_CHOSEN') }, { view: { name:'message' } }); - return; - } - - ac.models.flickr.getFlickrDetail(image, function(err, details) { - if (err) { - ac.error(new Error("YQL Error")); - return; - } - //Y.log(details); - details.intl = { - DATE_POSTED: ac.intl.lang('DATE_POSTED'), - TITLE: ac.intl.lang('TITLE'), - TITLE_NONE: ac.intl.lang('TITLE_NONE'), - DESCRIPTION: ac.intl.lang('DESCRIPTION'), - DESCRIPTION_NONE: ac.intl.lang('DESCRIPTION_NONE'), - OWNER_USERNAME: ac.intl.lang('OWNER_USERNAME'), - TAGS: ac.intl.lang('TAGS'), - TAGS_NONE: ac.intl.lang('TAGS_NONE'), - URLS: ac.intl.lang('URLS'), - URL_PHOTO_PAGE: ac.intl.lang('URL_PHOTO_PAGE'), - URL_IMAGE: ac.intl.lang('URL_IMAGE') - }; - details.intl.posted = ac.intl.formatDate(new Date(1000 * Number(details.dates.posted))); - - // The mustache library we're using is a little finicky. - details.title = details.title || false; - if (details.title) { - details.have_title = true; - } - details.description = details.description || false; - if (details.description) { - details.have_description = true; - } - details.tags = details.tags || false; - - ac.assets.addCss('./index.css'); - ac.done(details); - }); - } - - }; - -}, '0.0.1', {requires: ['mojito-intl-addon', 'ModelFlickr'], lang: ['de', 'en-US']}); diff --git a/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/lang/FlickrDetail_de.js b/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/lang/FlickrDetail_de.js deleted file mode 100644 index 58222cb95..000000000 --- a/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/lang/FlickrDetail_de.js +++ /dev/null @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add("lang/FlickrDetail_de", function(Y) { - - Y.Intl.add( - - "FlickrDetail", // associated module - "de", // BCP 47 language tag - - // key-value pairs for this module and language - { - INFO_NO_IMAGE_CHOSEN: "Bild nicht gewählt", - ERROR_BAD_IMAGE_ID: "Fehler! schlechtes Image-Kennung.", - ERROR_NO_DETAILS: "Wir konnten zu Informationen für Foto abzurufen.", - DATE_POSTED: "Erstellungsdatum", - TITLE: "Titel", - TITLE_NONE: "kein", - DESCRIPTION: "Beschreibung", - DESCRIPTION_NONE: "keine", - OWNER_USERNAME: "Benutzername", - TAGS: "Begriffe", - TAGS_NONE: "keine", - URLS: "URLs", - URL_PHOTO_PAGE: "Seite", - URL_IMAGE: "Bild" - } - ); -}, "3.1.0", {requires: ['intl']}); diff --git a/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/lang/FlickrDetail_en-US.js b/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/lang/FlickrDetail_en-US.js deleted file mode 100644 index d5203d494..000000000 --- a/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/lang/FlickrDetail_en-US.js +++ /dev/null @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add("lang/FlickrDetail_en-US", function(Y) { - - Y.Intl.add( - - "FlickrDetail", // associated module - "en-US", // BCP 47 language tag - - // key-value pairs for this module and language - { - INFO_NO_IMAGE_CHOSEN: "No image chosen.", - ERROR_BAD_IMAGE_ID: "Error! Bad image ID.", - ERROR_NO_DETAILS: "Failed to retrieve details for photo.", - DATE_POSTED: "posted", - TITLE: "title", - TITLE_NONE: "none", - DESCRIPTION: "description", - DESCRIPTION_NONE: "none", - OWNER_USERNAME: "username", - TAGS: "tags", - TAGS_NONE: "none", - URLS: "urls", - URL_PHOTO_PAGE: "page", - URL_IMAGE: "image" - } - ); -}, "3.1.0", {requires: ['intl']}); diff --git a/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/views/index.hb.html b/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/views/index.hb.html deleted file mode 100644 index a54e2fa91..000000000 --- a/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/views/index.hb.html +++ /dev/null @@ -1,45 +0,0 @@ -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- {{title}} -
{{#intl}}{{TITLE}}{{/intl}} - {{#have_title}}{{title}}{{/have_title}} - {{^have_title}}{{#intl}}{{TITLE_NONE}}{{/intl}}{{/have_title}} -
{{#intl}}{{OWNER_USERNAME}}{{/intl}}{{#owner}}{{username}}{{/owner}}
{{#intl}}{{DATE_POSTED}}{{/intl}}{{#intl}}{{posted}}{{/intl}}
{{#intl}}{{DESCRIPTION}}{{/intl}} - {{#have_description}}{{description}}{{/have_description}} - {{^have_description}}{{#intl}}{{DESCRIPTION_NONE}}{{/intl}}{{/have_description}} -
{{#intl}}{{TAGS}}{{/intl}} - {{#tags}}{{#tag}}{{content}} {{/tag}}{{/tags}} - {{^tags}}{{#intl}}{{TAGS_NONE}}{{/intl}}{{/tags}} -
{{#intl}}{{URLS}}{{/intl}} - {{#urls}}{{#url}}{{#intl}}{{URL_PHOTO_PAGE}}{{/intl}}{{/url}}{{/urls}} - {{#urls}}{{#image}}{{#intl}}{{URL_IMAGE}}{{/intl}}{{/image}}{{/urls}} -
-
diff --git a/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/views/index.iphone.hb.html b/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/views/index.iphone.hb.html deleted file mode 100644 index 942909f33..000000000 --- a/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/views/index.iphone.hb.html +++ /dev/null @@ -1,45 +0,0 @@ -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- {{title}} -
{{#intl}}{{TITLE}}{{/intl}} - {{#have_title}}{{title}}{{/have_title}} - {{^have_title}}{{#intl}}{{TITLE_NONE}}{{/intl}}{{/have_title}} -
{{#intl}}{{OWNER_USERNAME}}{{/intl}}{{#owner}}{{username}}{{/owner}}
{{#intl}}{{DATE_POSTED}}{{/intl}}{{#intl}}{{posted}}{{/intl}}
{{#intl}}{{DESCRIPTION}}{{/intl}} - {{#have_description}}{{description}}{{/have_description}} - {{^have_description}}{{#intl}}{{DESCRIPTION_NONE}}{{/intl}}{{/have_description}} -
{{#intl}}{{TAGS}}{{/intl}} - {{#tags}}{{#tag}}{{content}} {{/tag}}{{/tags}} - {{^tags}}{{#intl}}{{TAGS_NONE}}{{/intl}}{{/tags}} -
{{#intl}}{{URLS}}{{/intl}} - {{#urls}}{{#url}}{{#intl}}{{URL_PHOTO_PAGE}}{{/intl}}{{/url}}{{/urls}} - {{#urls}}{{#image}}{{#intl}}{{URL_IMAGE}}{{/intl}}{{/image}}{{/urls}} -
-
diff --git a/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/views/message.hb.html b/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/views/message.hb.html deleted file mode 100644 index 2fe92137f..000000000 --- a/tests/fixtures/precomputed-ondemand/mojits/FlickrDetail/views/message.hb.html +++ /dev/null @@ -1,3 +0,0 @@ -
-{{message}} -
diff --git a/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/assets/index.css b/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/assets/index.css deleted file mode 100644 index 592e7c6cd..000000000 --- a/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/assets/index.css +++ /dev/null @@ -1,12 +0,0 @@ -.pics .pic img { - height: 60px; - width: 60px; -} -#paginate span { margin:1em; } - -ul.pics { - list-style-type: none; -} -ul.pics .pic { - padding: 1px; -} diff --git a/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/binders/index.js b/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/binders/index.js deleted file mode 100644 index 823664358..000000000 --- a/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/binders/index.js +++ /dev/null @@ -1,62 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add('PagedFlickrBinderIndex', function(Y, NAME) { - -/** - * The PagedFlickrBinder module. - * - * @module PagedFlickrBinder - */ - - /** - * Constructor for the Binder class. - * - * @param mojitProxy {Object} The proxy to allow the binder to interact - * with its owning mojit. - * - * @class Binder - * @constructor - */ - - Y.namespace('mojito.binders')[NAME] = { - - /** - * Binder initialization method, invoked after all binders on the page - * have been constructed. - */ - init: function(mojitProxy) { - this.mojitProxy = mojitProxy; - }, - - /** - * The binder method, invoked to allow the mojit to attach DOM event - * handlers. - * - * @param node {Node} The DOM node to which this mojit is attached. - */ - bind: function(node) { - node.all('.pic a').on('click', function(evt) { - var url = evt.currentTarget.get('href'); - Y.log('on click ' + url, 'debug', NAME); - var matches = url.match(/image\/(\d+)/); - var imageID = matches[1]; - if (imageID) { - evt.halt(); - - // Update our pagination links so when we round-trip back - // to the server, we persist the image choice. - node.all('#paginate a').each(function(pageLink) { - var pageUrl = pageLink.get('href'); - pageLink.set('href', pageUrl.replace(/\/image\/\d+/, '/image/'+imageID)); - }); - - Y.log('broadcast flickr-image-chosen ' + imageID, 'debug', NAME); - this.mojitProxy.broadcast('flickr-image-chosen', { id: imageID }); - } - }, this); - } - - }; - -}, '0.0.1', {requires: ['node', 'mojito-client']}); diff --git a/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/controller.common.js b/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/controller.common.js deleted file mode 100644 index c8559b6b7..000000000 --- a/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/controller.common.js +++ /dev/null @@ -1,90 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add('PagedFlickr', function(Y) { - -/** - * The PagedFlickr module. - * - * @module PagedFlickr - */ - - var PAGESIZE = 6; - - /** - * Constructor for the Controller class. - * - * @class Controller - * @constructor - */ - Y.mojito.controller = { - - /** - * Method corresponding to the 'index' action. - * - * @param ac {Object} The action context that provides access - * to the Mojito API. - */ - index: function(ac) { - - Y.log(ac.params.getAll()); - - var page = ac.params.getFromMerged('page'), - start; - - // a little paranoia about inputs - page = parseInt(page, 10); - if ((!page) || (page < 1)) { - page = 1; - } - - // The "page" parameter is base-1, but the model's "start" - // parameter is base-0. - start = (page-1) * PAGESIZE; - - ac.models.flickr.getFlickrImages('mojito', start, PAGESIZE, function(err, images) { - var dateString, data; - - // on model error, fail fast - if (err) { - return ac.error(err); - } - - dateString = ac.intl.formatDate(new Date()); - data = { - date: dateString, - greeting: ac.intl.lang("TITLE"), - prev: { - url: selfUrl(ac, 'flickr', { page: page-1 } ), - title: ac.intl.lang("PREV") || 'prev' - }, - next: { - url: selfUrl(ac, 'flickr', { page: page+1 } ), - title: ac.intl.lang("NEXT") || 'next' - } - }; - - Y.Array.each(images, function(image) { - image.detail_url = selfUrl(ac, 'flickr', { image: image.id }); - }, this); - data.images = images; - - if (page > 1) { - data.prev.url = selfUrl(ac, 'flickr', { page: page-1 }); - data.has_prev = true; - } - ac.done(data); - - }); - } - }; - - function selfUrl(ac, mojitType, mods) { - var params = Y.mojito.util.copy(ac.params.getFromMerged()); - for (var k in mods) { - params[k] = mods[k]; - } - return ac.url.make(mojitType, 'index', Y.QueryString.stringify(params)); - } - -}, '0.0.1', {requires: ['mojito-intl-addon', 'mojito-util', 'querystring-stringify', 'ModelFlickr'], lang: ['de', 'en-US']}); diff --git a/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/controller.iphone.common.js b/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/controller.iphone.common.js deleted file mode 100644 index e49ee0497..000000000 --- a/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/controller.iphone.common.js +++ /dev/null @@ -1,90 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add('PagedFlickr', function(Y) { - -/** - * The PagedFlickr module. - * - * @module PagedFlickr - */ - - var PAGESIZE = 3; - - /** - * Constructor for the Controller class. - * - * @class Controller - * @constructor - */ - Y.mojito.controller = { - - /** - * Method corresponding to the 'index' action. - * - * @param ac {Object} The action context that provides access - * to the Mojito API. - */ - index: function(ac) { - - Y.log(ac.params.getAll()); - - var page = ac.params.getFromMerged('page'), - start; - - // a little paranoia about inputs - page = parseInt(page, 10); - if ((!page) || (page < 1)) { - page = 1; - } - - // The "page" parameter is base-1, but the model's "start" - // parameter is base-0. - start = (page-1) * PAGESIZE; - - ac.models.flickr.getFlickrImages('mojito', start, PAGESIZE, function(err, images) { - var dateString, data; - - // on model error, fail fast - if (err) { - return ac.error(err); - } - - dateString = ac.intl.formatDate(new Date()); - data = { - date: dateString, - greeting: ac.intl.lang("TITLE"), - prev: { - url: selfUrl(ac, 'flickr', { page: page-1 } ), - title: ac.intl.lang("PREV") || 'prev' - }, - next: { - url: selfUrl(ac, 'flickr', { page: page+1 } ), - title: ac.intl.lang("NEXT") || 'next' - } - }; - - Y.Array.each(images, function(image) { - image.detail_url = selfUrl(ac, 'flickr', { image: image.id }); - }, this); - data.images = images; - - if (page > 1) { - data.prev.url = selfUrl(ac, 'flickr', { page: page-1 }); - data.has_prev = true; - } - ac.done(data); - - }); - } - }; - - function selfUrl(ac, mojitType, mods) { - var params = Y.mojito.util.copy(ac.params.getFromMerged()); - for (var k in mods) { - params[k] = mods[k]; - } - return ac.url.make(mojitType, 'index', Y.QueryString.stringify(params)); - } - -}, '0.0.1', {requires: ['mojito-intl-addon', 'mojito-util', 'querystring-stringify', 'ModelFlickr'], lang: ['de', 'en-US']}); diff --git a/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/lang/PagedFlickr_de.js b/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/lang/PagedFlickr_de.js deleted file mode 100644 index 40ba40dcc..000000000 --- a/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/lang/PagedFlickr_de.js +++ /dev/null @@ -1,18 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add("lang/PagedFlickr_de", function(Y) { - - Y.Intl.add( - - "PagedFlickr", // associated module - "de", // BCP 47 language tag - - // key-value pairs for this module and language - { - TITLE: "Hallo! genießen Sie Ihre Bilder", - PREV: "zurück", - NEXT: "weiter" - } - ); -}, "3.1.0", {requires: ['intl']}); diff --git a/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/lang/PagedFlickr_en-US.js b/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/lang/PagedFlickr_en-US.js deleted file mode 100644 index 92ccb4e49..000000000 --- a/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/lang/PagedFlickr_en-US.js +++ /dev/null @@ -1,18 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add("lang/PagedFlickr_en-US", function(Y) { - - Y.Intl.add( - - "PagedFlickr", // associated module - "en-US", // BCP 47 language tag - - // key-value pairs for this module and language - { - TITLE: "Yo dawg, here's yo pics!", - PREV: "back", - NEXT: "ford", - } - ); -}, "3.1.0", {requires: ['intl']}); diff --git a/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/lang/PagedFlickr_en.js b/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/lang/PagedFlickr_en.js deleted file mode 100644 index 181065760..000000000 --- a/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/lang/PagedFlickr_en.js +++ /dev/null @@ -1,18 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add("lang/PagedFlickr_en", function(Y) { - - Y.Intl.add( - - "PagedFlickr", // associated module - "en", // BCP 47 language tag - - // key-value pairs for this module and language - { - TITLE: "Enjoy your Flickr Images!", - PREV: "previous", - NEXT: "next" - } - ); -}, "3.1.0", {requires: ['intl']}); diff --git a/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/views/index.hb.html b/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/views/index.hb.html deleted file mode 100644 index d5cadcf74..000000000 --- a/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/views/index.hb.html +++ /dev/null @@ -1,21 +0,0 @@ -
-

{{ greeting }} - {{ date }}

-
    - {{#images}} -
  • {{title}}
  • - {{/images}} -
-
- - {{#prev}} - {{title}} - {{/prev}} - - - {{#next}} - {{title}} - {{/next}} - - -
-
diff --git a/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/views/index.iphone.hb.html b/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/views/index.iphone.hb.html deleted file mode 100644 index 57a19851c..000000000 --- a/tests/fixtures/precomputed-ondemand/mojits/PagedFlickr/views/index.iphone.hb.html +++ /dev/null @@ -1,26 +0,0 @@ -
-

{{ greeting }}

-
- {{#images}} -
{{title}}
- {{/images}} -
-
- - {{#has_prev}} - {{#prev}} - {{title}} - {{/prev}} - {{/has_prev}} - {{^has_prev}} - {{#prev}}{{title}}{{/prev}} - {{/has_prev}} - - - {{#next}} - {{title}} - {{/next}} - -
- {{ date }} -
diff --git a/tests/fixtures/precomputed-ondemand/package.json b/tests/fixtures/precomputed-ondemand/package.json deleted file mode 100644 index b3f02f1d5..000000000 --- a/tests/fixtures/precomputed-ondemand/package.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "name": "paged-yql", - "description": "My Mojito Application", - "version": "0.1.0", - "contributors": [ - { - "name": "Your Name", - "email": "nobody@yahoo-inc.com" - } - ], - "config": { - "mojito": { - "version": "*" - } - } -} diff --git a/tests/fixtures/precomputed-ondemand/routes.json b/tests/fixtures/precomputed-ondemand/routes.json deleted file mode 100644 index 8e485d189..000000000 --- a/tests/fixtures/precomputed-ondemand/routes.json +++ /dev/null @@ -1,23 +0,0 @@ -[ - { - "settings": [ "master" ], - - "flickr_by_page": { - "verbs": ["get"], - "path": "/flickr/page/:page/image/:image", - "call": "flickr.index" - }, - - "flickr_base": { - "verbs": ["get"], - "path": "/flickr", - "param": "page=1&image=0", - "call": "flickr.index" - }, - - "detail": { - - } - - } -] diff --git a/tests/fixtures/precomputed-ondemand/server.js b/tests/fixtures/precomputed-ondemand/server.js deleted file mode 100644 index 6ff56ef1e..000000000 --- a/tests/fixtures/precomputed-ondemand/server.js +++ /dev/null @@ -1,12 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -var m = require('mojito'); - -// you can access log formatter, writer, or publisher for the server here - -//m.setLogPublisher(function() { -// console.log(arguments); -//}); - -module.exports = m.createServer(); diff --git a/tests/fixtures/precomputed/application.json b/tests/fixtures/precomputed/application.json deleted file mode 100644 index 135b282ca..000000000 --- a/tests/fixtures/precomputed/application.json +++ /dev/null @@ -1,58 +0,0 @@ -[ - { - "settings": [ "master" ], - - "log": { - "client": { - "level": "warn", - "yui": false - }, - "server": { - "level": "warn", - "yui": false - } - }, - - "yui": { - "dependencyCalculations": "precomputed" - }, - - "specs": { - "flickr": { - "type": "HTMLFrameMojit", - "config": { - "deploy": true, - "child": { - "type": "FlickrBrowser", - "config": { - "children": { - "thumbs": { - "base": "thumbs" - }, - "detail": { - "base": "detail" - } - } - } - }, - "meta": { - "viewport": "width=device-width,initial-scale=1" - }, - "assets": { - "top": { - "css": [ - "/static/PagedFlickr/assets/index.css" - ] - } - } - } - }, - "thumbs": { - "type": "PagedFlickr" - }, - "detail": { - "type": "FlickrDetail" - } - } - } -] diff --git a/tests/fixtures/precomputed/index.js b/tests/fixtures/precomputed/index.js deleted file mode 100644 index 14391af18..000000000 --- a/tests/fixtures/precomputed/index.js +++ /dev/null @@ -1,16 +0,0 @@ -/* - * Copyright (c) 2011 Yahoo! Inc. All rights reserved. - */ -// this file provides Manhattan integration - -process.chdir(__dirname); - -/** - * @token given by manhattan and used to emit that the app is ready - */ -module.exports = function(config, token) { - var app = require('./server.js'); - - // send the application to Manhattan along with the token - process.emit("application-ready", token, app); -}; diff --git a/tests/fixtures/precomputed/models/flickr.common.js b/tests/fixtures/precomputed/models/flickr.common.js deleted file mode 100644 index 1cc7ecc51..000000000 --- a/tests/fixtures/precomputed/models/flickr.common.js +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Copyright (c) 2011 Yahoo! Inc. All rights reserved. - */ -YUI.add('ModelFlickr', function(Y) { - - Y.mojito.models.flickr = { - - getFlickrImages: function(queryString, start, count, callback) { - var q; - start = parseInt(start) || 0; - count = parseInt(count) || 10; - // The YQL docs say that the second number is the end, but in practice - // it appears to be the count. - // http://developer.yahoo.com/yql/guide/paging.html#remote_limits - q = 'select * from flickr.photos.search(' + start + ',' + count + ') where text="' + queryString + '"'; - Y.YQL(q, function(rawYqlData) { - if (!rawYqlData || !rawYqlData.query || !rawYqlData.query.results) { - callback(rawYqlData); - return; - } - var rawPhotos = rawYqlData.query.results.photo, - rawPhoto = null, - photos = [], - photo = null, - i = 0; - - for (; i < rawPhotos.length; i++) { - rawPhoto = rawPhotos[i]; - photo = { - id: rawPhoto.id, - title: rawPhoto.title, - url: buildFlickrUrlFromRecord(rawPhoto) - }; - // some flickr photos don't have titles, so force them - if (!photo.title) { - photo.title = "[" + queryString + "]"; - } - photos.push(photo); - } - callback(null, photos); - }); - }, - - getFlickrDetail: function(imageId, callback) { - var q = 'select * from flickr.photos.info where photo_id="' + imageId + '"'; - Y.YQL(q, function(rawYqlData) { - if (!rawYqlData || !rawYqlData.query || !rawYqlData.query.results) { - callback("BAD YQL!"); - return; - } - var photo = rawYqlData.query.results.photo; - photo.urls.image = { - type: 'image', - content: buildFlickrUrlFromRecord(photo) - }; - callback(null, photo); - }); - } - - }; - - function buildFlickrUrlFromRecord(record) { - return 'http://farm' + record.farm - + '.static.flickr.com/' + record.server - + '/' + record.id + '_' + record.secret + '.jpg'; - } - -// TODO: remove 'jsonp-url' requirement when YUI fix for bug http://yuilibrary.com/projects/yui3/ticket/2530251 is deployed. -}, '0.0.1', {requires: ['yql', 'jsonp-url']}); diff --git a/tests/fixtures/precomputed/mojits/FlickrBrowser/assets/logmutator.js b/tests/fixtures/precomputed/mojits/FlickrBrowser/assets/logmutator.js deleted file mode 100644 index 6e9168240..000000000 --- a/tests/fixtures/precomputed/mojits/FlickrBrowser/assets/logmutator.js +++ /dev/null @@ -1,27 +0,0 @@ -/* - * Copyright (c) 2011 Yahoo! Inc. All rights reserved. - */ -YUI.add('flickr-logger-mutator', function(Y) { - - /* - * Providing a custom log formatter function - */ - -// function formatter(msg, lvl, src, ts, opts) { -// return "LOG MSG: " + msg.toLowerCase() + " -[" + lvl.toUpperCase() + "]- (" + ts + ")"; -// } -// -// YUI._mojito.logger.set('formatter', formatter); - - /* - * Totally replacing the log publisher with something we do ourselves - */ - -// function publisher() { -// console.log(arguments); -// } -// -// YUI._mojito.logger.set('publisher', publisher); - - -}, 'whatever'); \ No newline at end of file diff --git a/tests/fixtures/precomputed/mojits/FlickrBrowser/binders/index.js b/tests/fixtures/precomputed/mojits/FlickrBrowser/binders/index.js deleted file mode 100644 index e9cb8b35a..000000000 --- a/tests/fixtures/precomputed/mojits/FlickrBrowser/binders/index.js +++ /dev/null @@ -1,48 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add('FlickrBrowserBinderIndex', function(Y, NAME) { - -/** - * The FlickrBrowserBinderIndex module. - * - * @module FlickrBrowserBinderIndex - */ - - /** - * Constructor for the Binder class. - * - * @param mojitProxy {Object} The proxy to allow the binder to interact - * with its owning mojit. - * - * @class Binder - * @constructor - */ - - Y.namespace('mojito.binders')[NAME] = { - - /** - * Binder initialization method, invoked after all binders on the page - * have been constructed. - */ - init: function(mojitProxy) { - this.mojitProxy = mojitProxy; - this.mojitProxy.listen('flickr-image-chosen', function(event) { - Y.log('on flickr-image-chosen ' + event.data.id, 'debug', NAME); - // Turn the event generated by PagedFlickr into something - // understood by FlickrDetail. - mojitProxy.broadcast('flickr-image-detail', { id: event.data.id }); - }); - }, - - /** - * The binder method, invoked to allow the mojit to attach DOM event - * handlers. - * - * @param node {Node} The DOM node to which this mojit is attached. - */ - bind: function(node) {} - - }; - -}, '0.0.1', {requires: ['mojito-client']}); diff --git a/tests/fixtures/precomputed/mojits/FlickrBrowser/controller.common.js b/tests/fixtures/precomputed/mojits/FlickrBrowser/controller.common.js deleted file mode 100644 index ceab9d768..000000000 --- a/tests/fixtures/precomputed/mojits/FlickrBrowser/controller.common.js +++ /dev/null @@ -1,33 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add('FlickrBrowser', function(Y) { - -/** - * The FlickrBrowser module. - * - * @module FlickrBrowser - */ - - /** - * Constructor for the Controller class. - * - * @class Controller - * @constructor - */ - Y.mojito.controller = { - - /** - * Method corresponding to the 'index' action. - * - * @param ac {Object} The action context that provides access - * to the Mojito API. - */ - index: function(ac) { - ac.composite.done(); - } - - }; - - -}, '0.0.1', {requires: []}); diff --git a/tests/fixtures/precomputed/mojits/FlickrBrowser/views/index.hb.html b/tests/fixtures/precomputed/mojits/FlickrBrowser/views/index.hb.html deleted file mode 100644 index 264212e92..000000000 --- a/tests/fixtures/precomputed/mojits/FlickrBrowser/views/index.hb.html +++ /dev/null @@ -1,12 +0,0 @@ -
- - - - - -
- {{{thumbs}}} - - {{{detail}}} -
-
diff --git a/tests/fixtures/precomputed/mojits/FlickrBrowser/views/index.iphone.hb.html b/tests/fixtures/precomputed/mojits/FlickrBrowser/views/index.iphone.hb.html deleted file mode 100644 index 23e1394f5..000000000 --- a/tests/fixtures/precomputed/mojits/FlickrBrowser/views/index.iphone.hb.html +++ /dev/null @@ -1,14 +0,0 @@ -
- - - - - - - -
- {{{thumbs}}} -
- {{{detail}}} -
-
diff --git a/tests/fixtures/precomputed/mojits/FlickrDetail/assets/index.css b/tests/fixtures/precomputed/mojits/FlickrDetail/assets/index.css deleted file mode 100644 index f800122ca..000000000 --- a/tests/fixtures/precomputed/mojits/FlickrDetail/assets/index.css +++ /dev/null @@ -1,41 +0,0 @@ -.FlickrDetail .img td { - width: 400px; - height: 400px; - text-align: center; - vertical-align: middle; -} -.FlickrDetail .img img { - max-width: 400px; - max-height: 400px; -} -.FlickrDetail th { - padding: 0.2em 0.6em; - text-align: right; - vertical-align: top; -} -.FlickrDetail .title th { - vertical-align: bottom; -} -.FlickrDetail .title td { - font-size: 120%; -} -.FlickrDetail .title td , -.FlickrDetail .description td , -.FlickrDetail .tags td { - max-width: 20em; -} -.FlickrDetail .none { - font-style: italic; - font-size: 80%; - color: #888; - padding-left: 0.6em; -} -.FlickrDetail.device-iphone .img img { - max-width: 300px; - max-height: 300px; -} -.FlickrDetail.device-iphone .title td , -.FlickrDetail.device-iphone .description td , -.FlickrDetail.device-iphone .tags td { - max-width: 20em; -} diff --git a/tests/fixtures/precomputed/mojits/FlickrDetail/assets/message.css b/tests/fixtures/precomputed/mojits/FlickrDetail/assets/message.css deleted file mode 100644 index 919c7e99b..000000000 --- a/tests/fixtures/precomputed/mojits/FlickrDetail/assets/message.css +++ /dev/null @@ -1,12 +0,0 @@ -.FlickrDetail.info { - text-align: center; - vertical-align: middle; - padding: 1em; - color: #666; -} -.FlickrDetail.error { - text-align: center; - vertical-align: middle; - padding: 1em; - color: #844; -} diff --git a/tests/fixtures/precomputed/mojits/FlickrDetail/binders/index.js b/tests/fixtures/precomputed/mojits/FlickrDetail/binders/index.js deleted file mode 100644 index f834efe86..000000000 --- a/tests/fixtures/precomputed/mojits/FlickrDetail/binders/index.js +++ /dev/null @@ -1,65 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add('FlickrDetailBinderIndex', function(Y, NAME) { - -/** - * The FlickrDetailBinder module. - * - * @module FlickrDetailBinder - */ - - /** - * Constructor for the Binder class. - * - * @param mojitProxy {Object} The proxy to allow the binder to interact - * with its owning mojit. - * - * @class Binder - * @constructor - */ - - Y.namespace('mojito.binders')[NAME] = { - - /** - * Binder initialization method, invoked after all binders on the page - * have been constructed. - */ - init: function(mojitProxy) { - var self = this; - this.mojitProxy = mojitProxy; - this.mojitProxy.listen('flickr-image-detail', function(payload) { - Y.log('on flickr-image-detail ' + payload.data.id, 'debug', NAME); - var urlParams = Y.mojito.util.copy(mojitProxy.context); - var routeParams = { - image: payload.data.id - }; - mojitProxy.invoke('index', { - params: { - url: urlParams, - route: routeParams - }, - scope: this - }, function(err, markup) { - if (err) { - Y.log(err, 'error', NAME); - } else { - self.node.replace(markup); - } - }); - }); - }, - - /** - * The binder method, invoked to allow the mojit to attach DOM event - * handlers. - * - * @param node {Node} The DOM node to which this mojit is attached. - */ - bind: function(node) { - this.node = node; - } - - }; - -}, '@VERSION@', {requires: ['node', 'mojito-client', 'mojito-util']}); diff --git a/tests/fixtures/precomputed/mojits/FlickrDetail/binders/message.js b/tests/fixtures/precomputed/mojits/FlickrDetail/binders/message.js deleted file mode 100644 index b64fb3974..000000000 --- a/tests/fixtures/precomputed/mojits/FlickrDetail/binders/message.js +++ /dev/null @@ -1,15 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add('FlickrDetailBinderMessage', function(Y, NAME) { - - /** - * The FlickrDetailBinderMessage module. - * - * @module FlickrDetailBinderMessage - */ - - // The "index" binder is entirely appropriate here. - Y.mojito.binders.FlickrDetailBinderMessage = Y.mojito.binders.FlickrDetailBinderIndex; - -}, '0.1.0', {requires: ['FlickrDetailBinderIndex']}); diff --git a/tests/fixtures/precomputed/mojits/FlickrDetail/controller.common.js b/tests/fixtures/precomputed/mojits/FlickrDetail/controller.common.js deleted file mode 100644 index 9ad63310d..000000000 --- a/tests/fixtures/precomputed/mojits/FlickrDetail/controller.common.js +++ /dev/null @@ -1,64 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add('FlickrDetail', function(Y) { - - Y.mojito.controller = { - - index: function(ac) { - - var image = ac.params.getFromMerged('image') || '0'; - - // a little paranoia about inputs - if (!image.match(/^\d+$/)) { - ac.assets.addCss('./message.css'); - ac.done({ type: 'error', message: ac.intl.lang('ERROR_BAD_IMAGE_ID') }, { view: { name:'message' } }); - return; - } - - if ('0' === image) { - ac.assets.addCss('./message.css'); - ac.done({ type: 'info', message: ac.intl.lang('INFO_NO_IMAGE_CHOSEN') }, { view: { name:'message' } }); - return; - } - - ac.models.flickr.getFlickrDetail(image, function(err, details) { - if (err) { - ac.error(new Error("YQL Error")); - return; - } - //Y.log(details); - details.intl = { - DATE_POSTED: ac.intl.lang('DATE_POSTED'), - TITLE: ac.intl.lang('TITLE'), - TITLE_NONE: ac.intl.lang('TITLE_NONE'), - DESCRIPTION: ac.intl.lang('DESCRIPTION'), - DESCRIPTION_NONE: ac.intl.lang('DESCRIPTION_NONE'), - OWNER_USERNAME: ac.intl.lang('OWNER_USERNAME'), - TAGS: ac.intl.lang('TAGS'), - TAGS_NONE: ac.intl.lang('TAGS_NONE'), - URLS: ac.intl.lang('URLS'), - URL_PHOTO_PAGE: ac.intl.lang('URL_PHOTO_PAGE'), - URL_IMAGE: ac.intl.lang('URL_IMAGE') - }; - details.intl.posted = ac.intl.formatDate(new Date(1000 * Number(details.dates.posted))); - - // The mustache library we're using is a little finicky. - details.title = details.title || false; - if (details.title) { - details.have_title = true; - } - details.description = details.description || false; - if (details.description) { - details.have_description = true; - } - details.tags = details.tags || false; - - ac.assets.addCss('./index.css'); - ac.done(details); - }); - } - - }; - -}, '0.0.1', {requires: ['mojito-intl-addon', 'ModelFlickr'], lang: ['de', 'en-US']}); diff --git a/tests/fixtures/precomputed/mojits/FlickrDetail/lang/FlickrDetail_de.js b/tests/fixtures/precomputed/mojits/FlickrDetail/lang/FlickrDetail_de.js deleted file mode 100644 index 58222cb95..000000000 --- a/tests/fixtures/precomputed/mojits/FlickrDetail/lang/FlickrDetail_de.js +++ /dev/null @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add("lang/FlickrDetail_de", function(Y) { - - Y.Intl.add( - - "FlickrDetail", // associated module - "de", // BCP 47 language tag - - // key-value pairs for this module and language - { - INFO_NO_IMAGE_CHOSEN: "Bild nicht gewählt", - ERROR_BAD_IMAGE_ID: "Fehler! schlechtes Image-Kennung.", - ERROR_NO_DETAILS: "Wir konnten zu Informationen für Foto abzurufen.", - DATE_POSTED: "Erstellungsdatum", - TITLE: "Titel", - TITLE_NONE: "kein", - DESCRIPTION: "Beschreibung", - DESCRIPTION_NONE: "keine", - OWNER_USERNAME: "Benutzername", - TAGS: "Begriffe", - TAGS_NONE: "keine", - URLS: "URLs", - URL_PHOTO_PAGE: "Seite", - URL_IMAGE: "Bild" - } - ); -}, "3.1.0", {requires: ['intl']}); diff --git a/tests/fixtures/precomputed/mojits/FlickrDetail/lang/FlickrDetail_en-US.js b/tests/fixtures/precomputed/mojits/FlickrDetail/lang/FlickrDetail_en-US.js deleted file mode 100644 index d5203d494..000000000 --- a/tests/fixtures/precomputed/mojits/FlickrDetail/lang/FlickrDetail_en-US.js +++ /dev/null @@ -1,29 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add("lang/FlickrDetail_en-US", function(Y) { - - Y.Intl.add( - - "FlickrDetail", // associated module - "en-US", // BCP 47 language tag - - // key-value pairs for this module and language - { - INFO_NO_IMAGE_CHOSEN: "No image chosen.", - ERROR_BAD_IMAGE_ID: "Error! Bad image ID.", - ERROR_NO_DETAILS: "Failed to retrieve details for photo.", - DATE_POSTED: "posted", - TITLE: "title", - TITLE_NONE: "none", - DESCRIPTION: "description", - DESCRIPTION_NONE: "none", - OWNER_USERNAME: "username", - TAGS: "tags", - TAGS_NONE: "none", - URLS: "urls", - URL_PHOTO_PAGE: "page", - URL_IMAGE: "image" - } - ); -}, "3.1.0", {requires: ['intl']}); diff --git a/tests/fixtures/precomputed/mojits/FlickrDetail/views/index.hb.html b/tests/fixtures/precomputed/mojits/FlickrDetail/views/index.hb.html deleted file mode 100644 index a54e2fa91..000000000 --- a/tests/fixtures/precomputed/mojits/FlickrDetail/views/index.hb.html +++ /dev/null @@ -1,45 +0,0 @@ -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- {{title}} -
{{#intl}}{{TITLE}}{{/intl}} - {{#have_title}}{{title}}{{/have_title}} - {{^have_title}}{{#intl}}{{TITLE_NONE}}{{/intl}}{{/have_title}} -
{{#intl}}{{OWNER_USERNAME}}{{/intl}}{{#owner}}{{username}}{{/owner}}
{{#intl}}{{DATE_POSTED}}{{/intl}}{{#intl}}{{posted}}{{/intl}}
{{#intl}}{{DESCRIPTION}}{{/intl}} - {{#have_description}}{{description}}{{/have_description}} - {{^have_description}}{{#intl}}{{DESCRIPTION_NONE}}{{/intl}}{{/have_description}} -
{{#intl}}{{TAGS}}{{/intl}} - {{#tags}}{{#tag}}{{content}} {{/tag}}{{/tags}} - {{^tags}}{{#intl}}{{TAGS_NONE}}{{/intl}}{{/tags}} -
{{#intl}}{{URLS}}{{/intl}} - {{#urls}}{{#url}}{{#intl}}{{URL_PHOTO_PAGE}}{{/intl}}{{/url}}{{/urls}} - {{#urls}}{{#image}}{{#intl}}{{URL_IMAGE}}{{/intl}}{{/image}}{{/urls}} -
-
diff --git a/tests/fixtures/precomputed/mojits/FlickrDetail/views/index.iphone.hb.html b/tests/fixtures/precomputed/mojits/FlickrDetail/views/index.iphone.hb.html deleted file mode 100644 index 942909f33..000000000 --- a/tests/fixtures/precomputed/mojits/FlickrDetail/views/index.iphone.hb.html +++ /dev/null @@ -1,45 +0,0 @@ -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- {{title}} -
{{#intl}}{{TITLE}}{{/intl}} - {{#have_title}}{{title}}{{/have_title}} - {{^have_title}}{{#intl}}{{TITLE_NONE}}{{/intl}}{{/have_title}} -
{{#intl}}{{OWNER_USERNAME}}{{/intl}}{{#owner}}{{username}}{{/owner}}
{{#intl}}{{DATE_POSTED}}{{/intl}}{{#intl}}{{posted}}{{/intl}}
{{#intl}}{{DESCRIPTION}}{{/intl}} - {{#have_description}}{{description}}{{/have_description}} - {{^have_description}}{{#intl}}{{DESCRIPTION_NONE}}{{/intl}}{{/have_description}} -
{{#intl}}{{TAGS}}{{/intl}} - {{#tags}}{{#tag}}{{content}} {{/tag}}{{/tags}} - {{^tags}}{{#intl}}{{TAGS_NONE}}{{/intl}}{{/tags}} -
{{#intl}}{{URLS}}{{/intl}} - {{#urls}}{{#url}}{{#intl}}{{URL_PHOTO_PAGE}}{{/intl}}{{/url}}{{/urls}} - {{#urls}}{{#image}}{{#intl}}{{URL_IMAGE}}{{/intl}}{{/image}}{{/urls}} -
-
diff --git a/tests/fixtures/precomputed/mojits/FlickrDetail/views/message.hb.html b/tests/fixtures/precomputed/mojits/FlickrDetail/views/message.hb.html deleted file mode 100644 index 2fe92137f..000000000 --- a/tests/fixtures/precomputed/mojits/FlickrDetail/views/message.hb.html +++ /dev/null @@ -1,3 +0,0 @@ -
-{{message}} -
diff --git a/tests/fixtures/precomputed/mojits/PagedFlickr/assets/index.css b/tests/fixtures/precomputed/mojits/PagedFlickr/assets/index.css deleted file mode 100644 index 592e7c6cd..000000000 --- a/tests/fixtures/precomputed/mojits/PagedFlickr/assets/index.css +++ /dev/null @@ -1,12 +0,0 @@ -.pics .pic img { - height: 60px; - width: 60px; -} -#paginate span { margin:1em; } - -ul.pics { - list-style-type: none; -} -ul.pics .pic { - padding: 1px; -} diff --git a/tests/fixtures/precomputed/mojits/PagedFlickr/binders/index.js b/tests/fixtures/precomputed/mojits/PagedFlickr/binders/index.js deleted file mode 100644 index 823664358..000000000 --- a/tests/fixtures/precomputed/mojits/PagedFlickr/binders/index.js +++ /dev/null @@ -1,62 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add('PagedFlickrBinderIndex', function(Y, NAME) { - -/** - * The PagedFlickrBinder module. - * - * @module PagedFlickrBinder - */ - - /** - * Constructor for the Binder class. - * - * @param mojitProxy {Object} The proxy to allow the binder to interact - * with its owning mojit. - * - * @class Binder - * @constructor - */ - - Y.namespace('mojito.binders')[NAME] = { - - /** - * Binder initialization method, invoked after all binders on the page - * have been constructed. - */ - init: function(mojitProxy) { - this.mojitProxy = mojitProxy; - }, - - /** - * The binder method, invoked to allow the mojit to attach DOM event - * handlers. - * - * @param node {Node} The DOM node to which this mojit is attached. - */ - bind: function(node) { - node.all('.pic a').on('click', function(evt) { - var url = evt.currentTarget.get('href'); - Y.log('on click ' + url, 'debug', NAME); - var matches = url.match(/image\/(\d+)/); - var imageID = matches[1]; - if (imageID) { - evt.halt(); - - // Update our pagination links so when we round-trip back - // to the server, we persist the image choice. - node.all('#paginate a').each(function(pageLink) { - var pageUrl = pageLink.get('href'); - pageLink.set('href', pageUrl.replace(/\/image\/\d+/, '/image/'+imageID)); - }); - - Y.log('broadcast flickr-image-chosen ' + imageID, 'debug', NAME); - this.mojitProxy.broadcast('flickr-image-chosen', { id: imageID }); - } - }, this); - } - - }; - -}, '0.0.1', {requires: ['node', 'mojito-client']}); diff --git a/tests/fixtures/precomputed/mojits/PagedFlickr/controller.common.js b/tests/fixtures/precomputed/mojits/PagedFlickr/controller.common.js deleted file mode 100644 index c8559b6b7..000000000 --- a/tests/fixtures/precomputed/mojits/PagedFlickr/controller.common.js +++ /dev/null @@ -1,90 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add('PagedFlickr', function(Y) { - -/** - * The PagedFlickr module. - * - * @module PagedFlickr - */ - - var PAGESIZE = 6; - - /** - * Constructor for the Controller class. - * - * @class Controller - * @constructor - */ - Y.mojito.controller = { - - /** - * Method corresponding to the 'index' action. - * - * @param ac {Object} The action context that provides access - * to the Mojito API. - */ - index: function(ac) { - - Y.log(ac.params.getAll()); - - var page = ac.params.getFromMerged('page'), - start; - - // a little paranoia about inputs - page = parseInt(page, 10); - if ((!page) || (page < 1)) { - page = 1; - } - - // The "page" parameter is base-1, but the model's "start" - // parameter is base-0. - start = (page-1) * PAGESIZE; - - ac.models.flickr.getFlickrImages('mojito', start, PAGESIZE, function(err, images) { - var dateString, data; - - // on model error, fail fast - if (err) { - return ac.error(err); - } - - dateString = ac.intl.formatDate(new Date()); - data = { - date: dateString, - greeting: ac.intl.lang("TITLE"), - prev: { - url: selfUrl(ac, 'flickr', { page: page-1 } ), - title: ac.intl.lang("PREV") || 'prev' - }, - next: { - url: selfUrl(ac, 'flickr', { page: page+1 } ), - title: ac.intl.lang("NEXT") || 'next' - } - }; - - Y.Array.each(images, function(image) { - image.detail_url = selfUrl(ac, 'flickr', { image: image.id }); - }, this); - data.images = images; - - if (page > 1) { - data.prev.url = selfUrl(ac, 'flickr', { page: page-1 }); - data.has_prev = true; - } - ac.done(data); - - }); - } - }; - - function selfUrl(ac, mojitType, mods) { - var params = Y.mojito.util.copy(ac.params.getFromMerged()); - for (var k in mods) { - params[k] = mods[k]; - } - return ac.url.make(mojitType, 'index', Y.QueryString.stringify(params)); - } - -}, '0.0.1', {requires: ['mojito-intl-addon', 'mojito-util', 'querystring-stringify', 'ModelFlickr'], lang: ['de', 'en-US']}); diff --git a/tests/fixtures/precomputed/mojits/PagedFlickr/controller.iphone.common.js b/tests/fixtures/precomputed/mojits/PagedFlickr/controller.iphone.common.js deleted file mode 100644 index e49ee0497..000000000 --- a/tests/fixtures/precomputed/mojits/PagedFlickr/controller.iphone.common.js +++ /dev/null @@ -1,90 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add('PagedFlickr', function(Y) { - -/** - * The PagedFlickr module. - * - * @module PagedFlickr - */ - - var PAGESIZE = 3; - - /** - * Constructor for the Controller class. - * - * @class Controller - * @constructor - */ - Y.mojito.controller = { - - /** - * Method corresponding to the 'index' action. - * - * @param ac {Object} The action context that provides access - * to the Mojito API. - */ - index: function(ac) { - - Y.log(ac.params.getAll()); - - var page = ac.params.getFromMerged('page'), - start; - - // a little paranoia about inputs - page = parseInt(page, 10); - if ((!page) || (page < 1)) { - page = 1; - } - - // The "page" parameter is base-1, but the model's "start" - // parameter is base-0. - start = (page-1) * PAGESIZE; - - ac.models.flickr.getFlickrImages('mojito', start, PAGESIZE, function(err, images) { - var dateString, data; - - // on model error, fail fast - if (err) { - return ac.error(err); - } - - dateString = ac.intl.formatDate(new Date()); - data = { - date: dateString, - greeting: ac.intl.lang("TITLE"), - prev: { - url: selfUrl(ac, 'flickr', { page: page-1 } ), - title: ac.intl.lang("PREV") || 'prev' - }, - next: { - url: selfUrl(ac, 'flickr', { page: page+1 } ), - title: ac.intl.lang("NEXT") || 'next' - } - }; - - Y.Array.each(images, function(image) { - image.detail_url = selfUrl(ac, 'flickr', { image: image.id }); - }, this); - data.images = images; - - if (page > 1) { - data.prev.url = selfUrl(ac, 'flickr', { page: page-1 }); - data.has_prev = true; - } - ac.done(data); - - }); - } - }; - - function selfUrl(ac, mojitType, mods) { - var params = Y.mojito.util.copy(ac.params.getFromMerged()); - for (var k in mods) { - params[k] = mods[k]; - } - return ac.url.make(mojitType, 'index', Y.QueryString.stringify(params)); - } - -}, '0.0.1', {requires: ['mojito-intl-addon', 'mojito-util', 'querystring-stringify', 'ModelFlickr'], lang: ['de', 'en-US']}); diff --git a/tests/fixtures/precomputed/mojits/PagedFlickr/lang/PagedFlickr_de.js b/tests/fixtures/precomputed/mojits/PagedFlickr/lang/PagedFlickr_de.js deleted file mode 100644 index 40ba40dcc..000000000 --- a/tests/fixtures/precomputed/mojits/PagedFlickr/lang/PagedFlickr_de.js +++ /dev/null @@ -1,18 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add("lang/PagedFlickr_de", function(Y) { - - Y.Intl.add( - - "PagedFlickr", // associated module - "de", // BCP 47 language tag - - // key-value pairs for this module and language - { - TITLE: "Hallo! genießen Sie Ihre Bilder", - PREV: "zurück", - NEXT: "weiter" - } - ); -}, "3.1.0", {requires: ['intl']}); diff --git a/tests/fixtures/precomputed/mojits/PagedFlickr/lang/PagedFlickr_en-US.js b/tests/fixtures/precomputed/mojits/PagedFlickr/lang/PagedFlickr_en-US.js deleted file mode 100644 index 92ccb4e49..000000000 --- a/tests/fixtures/precomputed/mojits/PagedFlickr/lang/PagedFlickr_en-US.js +++ /dev/null @@ -1,18 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add("lang/PagedFlickr_en-US", function(Y) { - - Y.Intl.add( - - "PagedFlickr", // associated module - "en-US", // BCP 47 language tag - - // key-value pairs for this module and language - { - TITLE: "Yo dawg, here's yo pics!", - PREV: "back", - NEXT: "ford", - } - ); -}, "3.1.0", {requires: ['intl']}); diff --git a/tests/fixtures/precomputed/mojits/PagedFlickr/lang/PagedFlickr_en.js b/tests/fixtures/precomputed/mojits/PagedFlickr/lang/PagedFlickr_en.js deleted file mode 100644 index 181065760..000000000 --- a/tests/fixtures/precomputed/mojits/PagedFlickr/lang/PagedFlickr_en.js +++ /dev/null @@ -1,18 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -YUI.add("lang/PagedFlickr_en", function(Y) { - - Y.Intl.add( - - "PagedFlickr", // associated module - "en", // BCP 47 language tag - - // key-value pairs for this module and language - { - TITLE: "Enjoy your Flickr Images!", - PREV: "previous", - NEXT: "next" - } - ); -}, "3.1.0", {requires: ['intl']}); diff --git a/tests/fixtures/precomputed/mojits/PagedFlickr/views/index.hb.html b/tests/fixtures/precomputed/mojits/PagedFlickr/views/index.hb.html deleted file mode 100644 index d5cadcf74..000000000 --- a/tests/fixtures/precomputed/mojits/PagedFlickr/views/index.hb.html +++ /dev/null @@ -1,21 +0,0 @@ -
-

{{ greeting }} - {{ date }}

-
    - {{#images}} -
  • {{title}}
  • - {{/images}} -
-
- - {{#prev}} - {{title}} - {{/prev}} - - - {{#next}} - {{title}} - {{/next}} - - -
-
diff --git a/tests/fixtures/precomputed/mojits/PagedFlickr/views/index.iphone.hb.html b/tests/fixtures/precomputed/mojits/PagedFlickr/views/index.iphone.hb.html deleted file mode 100644 index 57a19851c..000000000 --- a/tests/fixtures/precomputed/mojits/PagedFlickr/views/index.iphone.hb.html +++ /dev/null @@ -1,26 +0,0 @@ -
-

{{ greeting }}

-
- {{#images}} -
{{title}}
- {{/images}} -
-
- - {{#has_prev}} - {{#prev}} - {{title}} - {{/prev}} - {{/has_prev}} - {{^has_prev}} - {{#prev}}{{title}}{{/prev}} - {{/has_prev}} - - - {{#next}} - {{title}} - {{/next}} - -
- {{ date }} -
diff --git a/tests/fixtures/precomputed/package.json b/tests/fixtures/precomputed/package.json deleted file mode 100644 index b3f02f1d5..000000000 --- a/tests/fixtures/precomputed/package.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "name": "paged-yql", - "description": "My Mojito Application", - "version": "0.1.0", - "contributors": [ - { - "name": "Your Name", - "email": "nobody@yahoo-inc.com" - } - ], - "config": { - "mojito": { - "version": "*" - } - } -} diff --git a/tests/fixtures/precomputed/routes.json b/tests/fixtures/precomputed/routes.json deleted file mode 100644 index 8e485d189..000000000 --- a/tests/fixtures/precomputed/routes.json +++ /dev/null @@ -1,23 +0,0 @@ -[ - { - "settings": [ "master" ], - - "flickr_by_page": { - "verbs": ["get"], - "path": "/flickr/page/:page/image/:image", - "call": "flickr.index" - }, - - "flickr_base": { - "verbs": ["get"], - "path": "/flickr", - "param": "page=1&image=0", - "call": "flickr.index" - }, - - "detail": { - - } - - } -] diff --git a/tests/fixtures/precomputed/server.js b/tests/fixtures/precomputed/server.js deleted file mode 100644 index 6ff56ef1e..000000000 --- a/tests/fixtures/precomputed/server.js +++ /dev/null @@ -1,12 +0,0 @@ -/* -* Copyright (c) 2011 Yahoo! Inc. All rights reserved. -*/ -var m = require('mojito'); - -// you can access log formatter, writer, or publisher for the server here - -//m.setLogPublisher(function() { -// console.log(arguments); -//}); - -module.exports = m.createServer(); diff --git a/tests/fixtures/store/application.json b/tests/fixtures/store/application.json index fa609546c..e6fca30ed 100644 --- a/tests/fixtures/store/application.json +++ b/tests/fixtures/store/application.json @@ -4,9 +4,6 @@ "mojitDirs": [ "soloMojit" ], - "staticHandling": { - "useRollups": true - }, "testKey1": "testVal1", "testKey2": "testVal2", diff --git a/tests/fixtures/store/mojits/test_mojit_2/controller.server.js b/tests/fixtures/store/mojits/test_mojit_2/controller.server.js index 65b8b268c..99f4286d9 100644 --- a/tests/fixtures/store/mojits/test_mojit_2/controller.server.js +++ b/tests/fixtures/store/mojits/test_mojit_2/controller.server.js @@ -3,11 +3,7 @@ */ YUI.add('test_mojit_2', function(Y, NAME) { - Y.mojito.controller = { - - init: function(config) { - this.config = config; - }, + Y.namespace('mojito.controllers')[NAME] = { index: function(ac) { ac.done('Mojito is working.'); diff --git a/tests/fixtures/store/server.js b/tests/fixtures/store/server.js index 6ff56ef1e..9daa55aed 100644 --- a/tests/fixtures/store/server.js +++ b/tests/fixtures/store/server.js @@ -3,10 +3,4 @@ */ var m = require('mojito'); -// you can access log formatter, writer, or publisher for the server here - -//m.setLogPublisher(function() { -// console.log(arguments); -//}); - module.exports = m.createServer(); diff --git a/tests/fixtures/store/soloMojit/controller.server.js b/tests/fixtures/store/soloMojit/controller.server.js index 2e0c4860f..d2d721013 100644 --- a/tests/fixtures/store/soloMojit/controller.server.js +++ b/tests/fixtures/store/soloMojit/controller.server.js @@ -3,11 +3,7 @@ */ YUI.add('soloMojit', function(Y, NAME) { - Y.mojito.controller = { - - init: function(config) { - this.config = config; - }, + Y.namespace('mojito.controllers')[NAME] = { index: function(ac) { ac.done('Mojito is working.'); diff --git a/tests/fixtures/store_no_app_config/mojits/test_mojit/controller.server.js b/tests/fixtures/store_no_app_config/mojits/test_mojit/controller.server.js index 2e0c4860f..d2d721013 100644 --- a/tests/fixtures/store_no_app_config/mojits/test_mojit/controller.server.js +++ b/tests/fixtures/store_no_app_config/mojits/test_mojit/controller.server.js @@ -3,11 +3,7 @@ */ YUI.add('soloMojit', function(Y, NAME) { - Y.mojito.controller = { - - init: function(config) { - this.config = config; - }, + Y.namespace('mojito.controllers')[NAME] = { index: function(ac) { ac.done('Mojito is working.'); diff --git a/tests/func/applications/frameworkapp/commandline/mojits/Coverage/controller.server.js b/tests/func/applications/frameworkapp/commandline/mojits/Coverage/controller.server.js index 2567d290e..b4aef7409 100644 --- a/tests/func/applications/frameworkapp/commandline/mojits/Coverage/controller.server.js +++ b/tests/func/applications/frameworkapp/commandline/mojits/Coverage/controller.server.js @@ -5,10 +5,6 @@ YUI.add('Coverage', function(Y, NAME) { Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - index: function(ac) { var fs = require('fs'); var mojitoVer = Y.mojito.version; diff --git a/tests/func/applications/frameworkapp/commandline/mojits/ExecuteCommand/controller.server.js b/tests/func/applications/frameworkapp/commandline/mojits/ExecuteCommand/controller.server.js index 68ea09761..9aab8be9b 100644 --- a/tests/func/applications/frameworkapp/commandline/mojits/ExecuteCommand/controller.server.js +++ b/tests/func/applications/frameworkapp/commandline/mojits/ExecuteCommand/controller.server.js @@ -17,10 +17,6 @@ YUI.add('ExecuteCommand', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(spec) { - this.spec = spec; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/common/just_one_mojit/one_level_in/Binders/controller.common.js b/tests/func/applications/frameworkapp/common/just_one_mojit/one_level_in/Binders/controller.common.js index 289885550..54d130cf4 100644 --- a/tests/func/applications/frameworkapp/common/just_one_mojit/one_level_in/Binders/controller.common.js +++ b/tests/func/applications/frameworkapp/common/just_one_mojit/one_level_in/Binders/controller.common.js @@ -17,10 +17,6 @@ YUI.add('Binders', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(mojitSpec) { - this.spec = mojitSpec; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/common/mojits/BlueChild/controller.common.js b/tests/func/applications/frameworkapp/common/mojits/BlueChild/controller.common.js index 12fa73df7..e164f6233 100644 --- a/tests/func/applications/frameworkapp/common/mojits/BlueChild/controller.common.js +++ b/tests/func/applications/frameworkapp/common/mojits/BlueChild/controller.common.js @@ -17,10 +17,6 @@ YUI.add('BlueChild', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(spec) { - this.spec = spec; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/common/mojits/BroadCast/controller.common.js b/tests/func/applications/frameworkapp/common/mojits/BroadCast/controller.common.js index dced48e3e..408c2f4cc 100644 --- a/tests/func/applications/frameworkapp/common/mojits/BroadCast/controller.common.js +++ b/tests/func/applications/frameworkapp/common/mojits/BroadCast/controller.common.js @@ -17,10 +17,6 @@ YUI.add('BroadCast', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(spec) { - this.spec = spec; - }, - 'index': function(ac) { ac.done(); }, diff --git a/tests/func/applications/frameworkapp/common/mojits/CM_Layout/controller.common.js b/tests/func/applications/frameworkapp/common/mojits/CM_Layout/controller.common.js index 09a0782d5..256b868d7 100644 --- a/tests/func/applications/frameworkapp/common/mojits/CM_Layout/controller.common.js +++ b/tests/func/applications/frameworkapp/common/mojits/CM_Layout/controller.common.js @@ -17,10 +17,6 @@ YUI.add('CM_Layout', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/common/mojits/ClientCookie/controller.common.js b/tests/func/applications/frameworkapp/common/mojits/ClientCookie/controller.common.js index b173fa188..64fedb3ad 100644 --- a/tests/func/applications/frameworkapp/common/mojits/ClientCookie/controller.common.js +++ b/tests/func/applications/frameworkapp/common/mojits/ClientCookie/controller.common.js @@ -17,10 +17,6 @@ YUI.add('ClientCookie', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/common/mojits/Coverage/controller.common.js b/tests/func/applications/frameworkapp/common/mojits/Coverage/controller.common.js index 0da92ef74..507cafaec 100644 --- a/tests/func/applications/frameworkapp/common/mojits/Coverage/controller.common.js +++ b/tests/func/applications/frameworkapp/common/mojits/Coverage/controller.common.js @@ -5,10 +5,6 @@ YUI.add('Coverage', function(Y, NAME) { Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - index: function(ac) { var fs = require('fs'); var mojitoVer = Y.mojito.version; diff --git a/tests/func/applications/frameworkapp/common/mojits/CoverageClient/controller.common.js b/tests/func/applications/frameworkapp/common/mojits/CoverageClient/controller.common.js index 4185fe92d..134a13960 100644 --- a/tests/func/applications/frameworkapp/common/mojits/CoverageClient/controller.common.js +++ b/tests/func/applications/frameworkapp/common/mojits/CoverageClient/controller.common.js @@ -5,10 +5,6 @@ YUI.add('CoverageClient', function(Y, NAME) { Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - index: function(ac) { var data = { hostname: ac.http.getRequest().headers.host diff --git a/tests/func/applications/frameworkapp/common/mojits/GlobalMojit/controller.common.js b/tests/func/applications/frameworkapp/common/mojits/GlobalMojit/controller.common.js index 19b5b39e9..c8baec404 100644 --- a/tests/func/applications/frameworkapp/common/mojits/GlobalMojit/controller.common.js +++ b/tests/func/applications/frameworkapp/common/mojits/GlobalMojit/controller.common.js @@ -17,10 +17,6 @@ YUI.add('GlobalMojit', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/common/mojits/GreenChild/controller.common.js b/tests/func/applications/frameworkapp/common/mojits/GreenChild/controller.common.js index ed541bef9..4db3a8b83 100644 --- a/tests/func/applications/frameworkapp/common/mojits/GreenChild/controller.common.js +++ b/tests/func/applications/frameworkapp/common/mojits/GreenChild/controller.common.js @@ -17,10 +17,6 @@ YUI.add('GreenChild', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(spec) { - this.spec = spec; - }, - /** * Method corresponding to the 'index' action. * @@ -28,7 +24,6 @@ YUI.add('GreenChild', function(Y, NAME) { * to the Mojito API. */ index: function(ac) { - Y.log(this.spec); ac.done({id: ac.config.get('id')}); } diff --git a/tests/func/applications/frameworkapp/common/mojits/MetaChild/controller.common.js b/tests/func/applications/frameworkapp/common/mojits/MetaChild/controller.common.js index 7403b2dd3..a1e9df71b 100644 --- a/tests/func/applications/frameworkapp/common/mojits/MetaChild/controller.common.js +++ b/tests/func/applications/frameworkapp/common/mojits/MetaChild/controller.common.js @@ -17,10 +17,6 @@ YUI.add('MetaChild', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(spec) { - this.spec = spec; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/common/mojits/MojitContainer/controller.common.js b/tests/func/applications/frameworkapp/common/mojits/MojitContainer/controller.common.js index b0c3d3a1a..026af9b3d 100644 --- a/tests/func/applications/frameworkapp/common/mojits/MojitContainer/controller.common.js +++ b/tests/func/applications/frameworkapp/common/mojits/MojitContainer/controller.common.js @@ -17,10 +17,6 @@ YUI.add('MojitContainer', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(spec) { - this.spec = spec; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/common/mojits/MojitProxyMojit/controller.common.js b/tests/func/applications/frameworkapp/common/mojits/MojitProxyMojit/controller.common.js index d950a4dc5..7d192a8c5 100644 --- a/tests/func/applications/frameworkapp/common/mojits/MojitProxyMojit/controller.common.js +++ b/tests/func/applications/frameworkapp/common/mojits/MojitProxyMojit/controller.common.js @@ -17,10 +17,6 @@ YUI.add('MojitProxyMojit', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(spec) { - this.spec = spec; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/common/mojits/PartialMojit/controller.common.js b/tests/func/applications/frameworkapp/common/mojits/PartialMojit/controller.common.js index 7e20dec64..90a5acf1d 100644 --- a/tests/func/applications/frameworkapp/common/mojits/PartialMojit/controller.common.js +++ b/tests/func/applications/frameworkapp/common/mojits/PartialMojit/controller.common.js @@ -17,10 +17,6 @@ YUI.add('PartialMojit', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(spec) { - this.spec = spec; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/common/mojits/RedChild/controller.common.js b/tests/func/applications/frameworkapp/common/mojits/RedChild/controller.common.js index aa394ae81..fbd8e3bfd 100644 --- a/tests/func/applications/frameworkapp/common/mojits/RedChild/controller.common.js +++ b/tests/func/applications/frameworkapp/common/mojits/RedChild/controller.common.js @@ -17,10 +17,6 @@ YUI.add('RedChild', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(spec) { - this.spec = spec; - }, - /** * Method corresponding to the 'index' action. * @@ -28,7 +24,6 @@ YUI.add('RedChild', function(Y, NAME) { * to the Mojito API. */ index: function(ac) { - Y.log(this.spec); ac.done({id: ac.config.get('id')}); } diff --git a/tests/func/applications/frameworkapp/common/mojits/Stateful/controller.common.js b/tests/func/applications/frameworkapp/common/mojits/Stateful/controller.common.js index a9665af5e..9d9a7c1c4 100644 --- a/tests/func/applications/frameworkapp/common/mojits/Stateful/controller.common.js +++ b/tests/func/applications/frameworkapp/common/mojits/Stateful/controller.common.js @@ -17,10 +17,6 @@ YUI.add('Stateful', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(spec) { - this.spec = spec; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/common/mojits/TestsLayout/controller.common.js b/tests/func/applications/frameworkapp/common/mojits/TestsLayout/controller.common.js index 6d6021123..d27311090 100644 --- a/tests/func/applications/frameworkapp/common/mojits/TestsLayout/controller.common.js +++ b/tests/func/applications/frameworkapp/common/mojits/TestsLayout/controller.common.js @@ -17,10 +17,6 @@ YUI.add('TestsLayout', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(mojitSpec) { - this.spec = mojitSpec; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/common/mojits_subdir1/other_mojits/AccessGlobalMojit/controller.common.js b/tests/func/applications/frameworkapp/common/mojits_subdir1/other_mojits/AccessGlobalMojit/controller.common.js index 9a309c6e0..76b6e2f10 100644 --- a/tests/func/applications/frameworkapp/common/mojits_subdir1/other_mojits/AccessGlobalMojit/controller.common.js +++ b/tests/func/applications/frameworkapp/common/mojits_subdir1/other_mojits/AccessGlobalMojit/controller.common.js @@ -5,10 +5,6 @@ YUI.add('AccessGlobalMojit', function(Y, NAME) { Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - accessModel: function(ac) { ac.models.get('GlobalMojit').myGlobalModelFunction(function(data) { Y.log(data.some, "info"); diff --git a/tests/func/applications/frameworkapp/common/mojits_subdir1/other_mojits/AssetsMojit/controller.common.js b/tests/func/applications/frameworkapp/common/mojits_subdir1/other_mojits/AssetsMojit/controller.common.js index b80ee6949..7a5aadda0 100644 --- a/tests/func/applications/frameworkapp/common/mojits_subdir1/other_mojits/AssetsMojit/controller.common.js +++ b/tests/func/applications/frameworkapp/common/mojits_subdir1/other_mojits/AssetsMojit/controller.common.js @@ -5,10 +5,6 @@ YUI.add('AssetsMojit', function(Y, NAME) { Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - index: function(ac) { ac.done(); }, diff --git a/tests/func/applications/frameworkapp/common/mojits_subdir1/other_mojits/CM_News/controller.common.js b/tests/func/applications/frameworkapp/common/mojits_subdir1/other_mojits/CM_News/controller.common.js index e54950fb9..1734768b8 100644 --- a/tests/func/applications/frameworkapp/common/mojits_subdir1/other_mojits/CM_News/controller.common.js +++ b/tests/func/applications/frameworkapp/common/mojits_subdir1/other_mojits/CM_News/controller.common.js @@ -17,10 +17,6 @@ YUI.add('CM_News', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/common/mojits_subdir1/other_mojits/ConfigMojit/controller.common.js b/tests/func/applications/frameworkapp/common/mojits_subdir1/other_mojits/ConfigMojit/controller.common.js index f481711e3..62b75af73 100644 --- a/tests/func/applications/frameworkapp/common/mojits_subdir1/other_mojits/ConfigMojit/controller.common.js +++ b/tests/func/applications/frameworkapp/common/mojits_subdir1/other_mojits/ConfigMojit/controller.common.js @@ -17,10 +17,6 @@ YUI.add('ConfigMojit', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/configapp/mojits/Coverage/controller.common.js b/tests/func/applications/frameworkapp/configapp/mojits/Coverage/controller.common.js index 0da92ef74..507cafaec 100644 --- a/tests/func/applications/frameworkapp/configapp/mojits/Coverage/controller.common.js +++ b/tests/func/applications/frameworkapp/configapp/mojits/Coverage/controller.common.js @@ -5,10 +5,6 @@ YUI.add('Coverage', function(Y, NAME) { Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - index: function(ac) { var fs = require('fs'); var mojitoVer = Y.mojito.version; diff --git a/tests/func/applications/frameworkapp/routing/application.json b/tests/func/applications/frameworkapp/routing/application.json index 625b340dc..51dd14329 100644 --- a/tests/func/applications/frameworkapp/routing/application.json +++ b/tests/func/applications/frameworkapp/routing/application.json @@ -2,16 +2,6 @@ { "settings": [ "master" ], "appPort": 4082, - "log": { - "client": { - "level": "warn", - "yui": "false" - }, - "server": { - "level": "info", - "yui": "false" - } - }, "specs": { "route-1": { "type": "SimpleRoute", diff --git a/tests/func/applications/frameworkapp/routing/mojits/Coverage/controller.server.js b/tests/func/applications/frameworkapp/routing/mojits/Coverage/controller.server.js index 0da92ef74..507cafaec 100644 --- a/tests/func/applications/frameworkapp/routing/mojits/Coverage/controller.server.js +++ b/tests/func/applications/frameworkapp/routing/mojits/Coverage/controller.server.js @@ -5,10 +5,6 @@ YUI.add('Coverage', function(Y, NAME) { Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - index: function(ac) { var fs = require('fs'); var mojitoVer = Y.mojito.version; diff --git a/tests/func/applications/frameworkapp/routing/mojits/Poster/controller.server.js b/tests/func/applications/frameworkapp/routing/mojits/Poster/controller.server.js index 0407d7e44..6bfffa2d1 100644 --- a/tests/func/applications/frameworkapp/routing/mojits/Poster/controller.server.js +++ b/tests/func/applications/frameworkapp/routing/mojits/Poster/controller.server.js @@ -17,10 +17,6 @@ YUI.add('Poster', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/routing/mojits/ShowUrl/controller.server.js b/tests/func/applications/frameworkapp/routing/mojits/ShowUrl/controller.server.js index e337a7c1b..f3e73da79 100644 --- a/tests/func/applications/frameworkapp/routing/mojits/ShowUrl/controller.server.js +++ b/tests/func/applications/frameworkapp/routing/mojits/ShowUrl/controller.server.js @@ -17,10 +17,6 @@ YUI.add('ShowUrl', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/routing/mojits/SimpleRoute/controller.server.js b/tests/func/applications/frameworkapp/routing/mojits/SimpleRoute/controller.server.js index e427266b8..37a9890a1 100644 --- a/tests/func/applications/frameworkapp/routing/mojits/SimpleRoute/controller.server.js +++ b/tests/func/applications/frameworkapp/routing/mojits/SimpleRoute/controller.server.js @@ -17,10 +17,6 @@ YUI.add('SimpleRoute', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(mojitSpec) { - this.spec = mojitSpec; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/routing/mojits/SimpleRoute2/controller.server.js b/tests/func/applications/frameworkapp/routing/mojits/SimpleRoute2/controller.server.js index 88b3be7f0..3b0e47537 100644 --- a/tests/func/applications/frameworkapp/routing/mojits/SimpleRoute2/controller.server.js +++ b/tests/func/applications/frameworkapp/routing/mojits/SimpleRoute2/controller.server.js @@ -17,10 +17,6 @@ YUI.add('SimpleRoute2', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/serveronly/application.json b/tests/func/applications/frameworkapp/serveronly/application.json index 894d229ab..faa3b92b0 100644 --- a/tests/func/applications/frameworkapp/serveronly/application.json +++ b/tests/func/applications/frameworkapp/serveronly/application.json @@ -10,7 +10,6 @@ "fetchCSS": false, "testingyuiconfig": "myyuiconfig" }, - "dependencyCalculations": "ondemand", "extraModules": ["plugin","jsonp","piechart","profiler","record","timeaxis","curveutil","axis","circle","column","cookie","dial","fills","graph","intl","panel","plots","node-event-delegate","transition","event-move","calendar","Array","ArrayList","ArraySort"] }, "specs": { diff --git a/tests/func/applications/frameworkapp/serveronly/mojits/Container/controller.server.js b/tests/func/applications/frameworkapp/serveronly/mojits/Container/controller.server.js index 79caeb6d2..e63fbd6d0 100644 --- a/tests/func/applications/frameworkapp/serveronly/mojits/Container/controller.server.js +++ b/tests/func/applications/frameworkapp/serveronly/mojits/Container/controller.server.js @@ -18,10 +18,6 @@ YUI.add('Container', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/serveronly/mojits/Cookies/controller.server.js b/tests/func/applications/frameworkapp/serveronly/mojits/Cookies/controller.server.js index ee16d2956..8d8610ba2 100644 --- a/tests/func/applications/frameworkapp/serveronly/mojits/Cookies/controller.server.js +++ b/tests/func/applications/frameworkapp/serveronly/mojits/Cookies/controller.server.js @@ -16,9 +16,6 @@ YUI.add('Cookies', function(Y, NAME) { * @constructor */ Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, /** * Method corresponding to the 'index' action. diff --git a/tests/func/applications/frameworkapp/serveronly/mojits/Coverage/controller.server.js b/tests/func/applications/frameworkapp/serveronly/mojits/Coverage/controller.server.js index 5f8b8c4ec..a1f8581d3 100644 --- a/tests/func/applications/frameworkapp/serveronly/mojits/Coverage/controller.server.js +++ b/tests/func/applications/frameworkapp/serveronly/mojits/Coverage/controller.server.js @@ -5,10 +5,6 @@ YUI.add('Coverage', function(Y, NAME) { Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - index: function(ac) { var fs = require('fs'); var mojitoVer = Y.mojito.version; diff --git a/tests/func/applications/frameworkapp/serveronly/mojits/HttpAddonChild/controller.server.js b/tests/func/applications/frameworkapp/serveronly/mojits/HttpAddonChild/controller.server.js index e6efede1e..55ad3ebbc 100644 --- a/tests/func/applications/frameworkapp/serveronly/mojits/HttpAddonChild/controller.server.js +++ b/tests/func/applications/frameworkapp/serveronly/mojits/HttpAddonChild/controller.server.js @@ -17,10 +17,6 @@ YUI.add('HttpAddonChild', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(mojitSpec) { - this.spec = mojitSpec; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/serveronly/mojits/HttpAddonParent/controller.server.js b/tests/func/applications/frameworkapp/serveronly/mojits/HttpAddonParent/controller.server.js index fb76be9c9..7584f7e4d 100644 --- a/tests/func/applications/frameworkapp/serveronly/mojits/HttpAddonParent/controller.server.js +++ b/tests/func/applications/frameworkapp/serveronly/mojits/HttpAddonParent/controller.server.js @@ -17,10 +17,6 @@ YUI.add('HttpAddonParent', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(mojitSpec) { - this.spec = mojitSpec; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/serveronly/mojits/MultiAction/controller.server.js b/tests/func/applications/frameworkapp/serveronly/mojits/MultiAction/controller.server.js index 7509852cf..59c37d7a9 100644 --- a/tests/func/applications/frameworkapp/serveronly/mojits/MultiAction/controller.server.js +++ b/tests/func/applications/frameworkapp/serveronly/mojits/MultiAction/controller.server.js @@ -18,10 +18,6 @@ YUI.add('MultiAction', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/serveronly/mojits/RESTLib/controller.common.js b/tests/func/applications/frameworkapp/serveronly/mojits/RESTLib/controller.common.js index 7a63dcd4a..2c8679d6d 100644 --- a/tests/func/applications/frameworkapp/serveronly/mojits/RESTLib/controller.common.js +++ b/tests/func/applications/frameworkapp/serveronly/mojits/RESTLib/controller.common.js @@ -17,10 +17,6 @@ YUI.add('RESTLib', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/serveronly/mojits/RefreshChild/controller.server.js b/tests/func/applications/frameworkapp/serveronly/mojits/RefreshChild/controller.server.js index f6761b64f..0524023b7 100644 --- a/tests/func/applications/frameworkapp/serveronly/mojits/RefreshChild/controller.server.js +++ b/tests/func/applications/frameworkapp/serveronly/mojits/RefreshChild/controller.server.js @@ -18,10 +18,6 @@ YUI.add('RefreshChild', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/serveronly/mojits/RefreshParent/controller.server.js b/tests/func/applications/frameworkapp/serveronly/mojits/RefreshParent/controller.server.js index ca680f751..baabcb187 100644 --- a/tests/func/applications/frameworkapp/serveronly/mojits/RefreshParent/controller.server.js +++ b/tests/func/applications/frameworkapp/serveronly/mojits/RefreshParent/controller.server.js @@ -18,10 +18,6 @@ YUI.add('RefreshParent', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/serveronly/mojits/ServerCookie/controller.server.js b/tests/func/applications/frameworkapp/serveronly/mojits/ServerCookie/controller.server.js index 9348346a1..7588894e4 100644 --- a/tests/func/applications/frameworkapp/serveronly/mojits/ServerCookie/controller.server.js +++ b/tests/func/applications/frameworkapp/serveronly/mojits/ServerCookie/controller.server.js @@ -7,9 +7,6 @@ YUI.add('CookieMojit', function(Y, NAME) { Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, index: function(ac) { var myCookieValue = ac.cookie.get('mycookie'); ac.cookie.set("city", "Cleveland"); diff --git a/tests/func/applications/frameworkapp/serveronly/mojits/Yca/controller.common.js b/tests/func/applications/frameworkapp/serveronly/mojits/Yca/controller.common.js index 5b84869ee..74130c06b 100644 --- a/tests/func/applications/frameworkapp/serveronly/mojits/Yca/controller.common.js +++ b/tests/func/applications/frameworkapp/serveronly/mojits/Yca/controller.common.js @@ -5,10 +5,6 @@ YUI.add('Yca', function(Y, NAME) { Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - index: function(ac) { var test = ac.params.getFromUrl('testname'); var title = "This is the certificate"; diff --git a/tests/func/applications/frameworkapp/test_files/mojits/CM_Footer/controller.common.js b/tests/func/applications/frameworkapp/test_files/mojits/CM_Footer/controller.common.js index eb83b7bf4..68223e533 100644 --- a/tests/func/applications/frameworkapp/test_files/mojits/CM_Footer/controller.common.js +++ b/tests/func/applications/frameworkapp/test_files/mojits/CM_Footer/controller.common.js @@ -17,10 +17,6 @@ YUI.add('CM_Footer', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(config) { - this.config = config; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/usecase/mojits/Coverage/controller.server.js b/tests/func/applications/frameworkapp/usecase/mojits/Coverage/controller.server.js index b91597387..93848215f 100644 --- a/tests/func/applications/frameworkapp/usecase/mojits/Coverage/controller.server.js +++ b/tests/func/applications/frameworkapp/usecase/mojits/Coverage/controller.server.js @@ -17,10 +17,6 @@ YUI.add('Coverage', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(mojitSpec) { - this.spec = mojitSpec; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/usecase/mojits/i18nMojit/controller.server.js b/tests/func/applications/frameworkapp/usecase/mojits/i18nMojit/controller.server.js index 135c4e419..5d7674f66 100644 --- a/tests/func/applications/frameworkapp/usecase/mojits/i18nMojit/controller.server.js +++ b/tests/func/applications/frameworkapp/usecase/mojits/i18nMojit/controller.server.js @@ -17,10 +17,6 @@ YUI.add('i18nMojit', function(Y, NAME) { */ Y.namespace('mojito.controllers')[NAME] = { - init: function(mojitSpec) { - this.spec = mojitSpec; - }, - /** * Method corresponding to the 'index' action. * diff --git a/tests/func/applications/frameworkapp/usecase/mojits/i18n_Mojit/controller.server.js b/tests/func/applications/frameworkapp/usecase/mojits/i18n_Mojit/controller.server.js index de19d36e1..1789de58e 100644 --- a/tests/func/applications/frameworkapp/usecase/mojits/i18n_Mojit/controller.server.js +++ b/tests/func/applications/frameworkapp/usecase/mojits/i18n_Mojit/controller.server.js @@ -5,10 +5,6 @@ YUI.add('i18n_Mojit', function(Y, NAME) { Y.namespace('mojito.controllers')[NAME] = { - init: function(mojitSpec) { - this.spec = mojitSpec; - }, - index: function(ac) { ac.models.get('i18n_MojitModel').getFlickrImages('mojito', function(images) { var dateString = ac.intl.formatDate(new Date()); diff --git a/tests/func/common/commonclienttest_descriptor.json b/tests/func/common/commonclienttest_descriptor.json index b670787e8..28a347de5 100755 --- a/tests/func/common/commonclienttest_descriptor.json +++ b/tests/func/common/commonclienttest_descriptor.json @@ -4,8 +4,6 @@ "name" : "common", - "commonlib" : "../../base/yui-test.js", - "config" :{ "baseUrl" : "http://localhost:4081" }, diff --git a/tests/func/common/commonservertest_descriptor.json b/tests/func/common/commonservertest_descriptor.json index f262c416f..4a0bfffd9 100755 --- a/tests/func/common/commonservertest_descriptor.json +++ b/tests/func/common/commonservertest_descriptor.json @@ -4,8 +4,6 @@ "name" : "common", - "commonlib" : "../../base/yui-test.js", - "config" :{ "baseUrl" : "http://localhost:4081" }, diff --git a/tests/func/config/configtest_descriptor.json b/tests/func/config/configtest_descriptor.json index f5f5bb67b..21f1c70ca 100755 --- a/tests/func/config/configtest_descriptor.json +++ b/tests/func/config/configtest_descriptor.json @@ -4,8 +4,6 @@ "name" : "config", - "commonlib" : "../../base/yui-test.js", - "config" :{ "baseUrl" : "http://localhost" }, diff --git a/tests/func/examples/developerguide/developerguide_descriptor.json b/tests/func/examples/developerguide/developerguide_descriptor.json index 39608d0a5..457f51433 100755 --- a/tests/func/examples/developerguide/developerguide_descriptor.json +++ b/tests/func/examples/developerguide/developerguide_descriptor.json @@ -4,8 +4,6 @@ "name" : "developerguide", - "commonlib" : "../../../base/yui-test.js", - "config" :{ "baseUrl" : "http://localhost" }, diff --git a/tests/func/examples/input/input_descriptor.json b/tests/func/examples/input/input_descriptor.json index 06c5c3df7..4602a6133 100755 --- a/tests/func/examples/input/input_descriptor.json +++ b/tests/func/examples/input/input_descriptor.json @@ -4,8 +4,6 @@ "name" : "input", - "commonlib" : "../../../base/yui-test.js", - "config" :{ "baseUrl" : "http://localhost" }, diff --git a/tests/func/examples/newsboxes/newsboxes_descriptor.json b/tests/func/examples/newsboxes/newsboxes_descriptor.json index aa61c0f10..e3458a9fd 100755 --- a/tests/func/examples/newsboxes/newsboxes_descriptor.json +++ b/tests/func/examples/newsboxes/newsboxes_descriptor.json @@ -4,8 +4,6 @@ "name" : "newsboxes", - "commonlib" : "../../../base/yui-test.js", - "config" :{ "baseUrl" : "http://localhost" }, diff --git a/tests/func/examples/simple/simple_descriptor.json b/tests/func/examples/simple/simple_descriptor.json index 3c2109c74..8d2442b50 100755 --- a/tests/func/examples/simple/simple_descriptor.json +++ b/tests/func/examples/simple/simple_descriptor.json @@ -4,8 +4,6 @@ "name" : "developerguide", - "commonlib" : "../../../base/yui-test.js", - "config" :{ "baseUrl" : "http://localhost" }, diff --git a/tests/func/routing/routingtest_descriptor.json b/tests/func/routing/routingtest_descriptor.json index 7917f2393..15268d064 100755 --- a/tests/func/routing/routingtest_descriptor.json +++ b/tests/func/routing/routingtest_descriptor.json @@ -4,8 +4,6 @@ "name" : "routing", - "commonlib" : "../../base/yui-test.js", - "config" :{ "baseUrl" : "http://localhost:4082" }, diff --git a/tests/func/serveronly/serveronlytest_descriptor.json b/tests/func/serveronly/serveronlytest_descriptor.json index c93b5dcfd..fb5d71ab8 100644 --- a/tests/func/serveronly/serveronlytest_descriptor.json +++ b/tests/func/serveronly/serveronlytest_descriptor.json @@ -4,8 +4,6 @@ "name" : "serveronly", - "commonlib" : "../../base/yui-test.js", - "config" :{ "baseUrl" : "http://localhost:4083" }, diff --git a/tests/func/serveronly/testbz5264755.js b/tests/func/serveronly/testbz5264755.js index 40c4b4fce..dc43f13a7 100644 --- a/tests/func/serveronly/testbz5264755.js +++ b/tests/func/serveronly/testbz5264755.js @@ -12,7 +12,7 @@ YUI({ suite.add(new Y.Test.Case({ "test bz5264755": function(){ var pagesource= window.document.documentElement.innerHTML; - Y.Assert.isTrue((pagesource.search("\"dependencyCalculations\":\"ondemand\"")!=-1)||(pagesource.search("\"dependencyCalculations\": \"ondemand\"")!=-1)); + Y.Assert.isTrue((pagesource.search("\"appPort\":4083")!=-1)||(pagesource.search("\"appPort\": 4083")!=-1)); } })); diff --git a/tests/func/usecases/usecasestest_descriptor.json b/tests/func/usecases/usecasestest_descriptor.json index fedefb801..39194d0d1 100755 --- a/tests/func/usecases/usecasestest_descriptor.json +++ b/tests/func/usecases/usecasestest_descriptor.json @@ -4,8 +4,6 @@ "name" : "usecase", - "commonlib" : "../../base/yui-test.js", - "config" :{ "baseUrl" : "http://localhost:4085" }, diff --git a/tests/run.js b/tests/run.js index 72996b75e..5e93975de 100755 --- a/tests/run.js +++ b/tests/run.js @@ -131,7 +131,7 @@ function runUnitTests (cmd, callback) { var commandArgs = [ cwd + "/../node_modules/yahoo-arrow/index.js", - cmd.unitPath + "/**/*_descriptor.json", + "--descriptor=" + cmd.unitPath + "/**/*_descriptor.json", "--coverage=true", "--report=true", "--reportFolder=" + arrowReportDir @@ -226,7 +226,7 @@ function runFuncTests (cmd, callback) { var descriptor = cmd.descriptor || '**/*_descriptor.json'; var commandArgs = [ cwd + "/../node_modules/yahoo-arrow/index.js", - cmd.funcPath + '/' + descriptor, + "--descriptor=" + cmd.funcPath + '/' + descriptor, "--report=true", "--reportFolder=" + arrowReportDir ]; @@ -329,7 +329,15 @@ function runMojitoApp (cliOptions, basePath, path, port, params, callback) { } params = params || ''; console.log('Starting ' + path + ' at port ' + port + ' with params ' + (params || 'empty')); - p = runCommand(basePath + '/' + path, cwd + "/../bin/mojito", ["start", port, "--context", params], function () {}); + var cmdArgs = ['start']; + if (port) { + cmdArgs.push(port); + } + if (params) { + cmdArgs.push('--context'); + cmdArgs.push(params); + } + p = runCommand(basePath + '/' + path, cwd + "/../bin/mojito", cmdArgs, function () {}); pids.push(p.pid); pidNames[p.pid] = libpath.basename(path) + ':' + port + (params ? '?' + params : ''); p.stdout.on('data', listener); diff --git a/tests/unit/lib/app/addons/ac/ac_test_descriptor.json b/tests/unit/lib/app/addons/ac/ac_test_descriptor.json index a6d8c353f..37508efb8 100644 --- a/tests/unit/lib/app/addons/ac/ac_test_descriptor.json +++ b/tests/unit/lib/app/addons/ac/ac_test_descriptor.json @@ -74,7 +74,7 @@ }, "deploy.server": { "params": { - "lib": "$$config.lib$$/app/addons/ac/deploy.server.js,../../../../../../lib/app/autoload/loader.common.js,../../../../../../lib/app/addons/ac/http.server.js", + "lib": "$$config.lib$$/app/addons/ac/deploy.server.js,../../../../../../lib/app/addons/ac/http.server.js", "test": "./test-deploy.server.js", "driver": "nodejs" }, @@ -104,14 +104,6 @@ }, "group": "fw,client,server" }, - "output-adapter.common": { - "params": { - "lib": "$$config.lib$$/app/addons/ac/output-adapter.common.js", - "test": "./test-output-adapter.common.js", - "page": "$$config.base$$/mojito-test.html" - }, - "group": "fw,client,server" - }, "params.common": { "params": { "lib": "$$config.lib$$/app/addons/ac/params.common.js", diff --git a/tests/unit/lib/app/addons/ac/test-deploy.server.js b/tests/unit/lib/app/addons/ac/test-deploy.server.js index abfc081a5..2b862eb9c 100644 --- a/tests/unit/lib/app/addons/ac/test-deploy.server.js +++ b/tests/unit/lib/app/addons/ac/test-deploy.server.js @@ -271,199 +271,9 @@ YUI().use('mojito-deploy-addon', 'test', 'json-parse', function(Y) { A.areSame(2, Object.keys(counts).length, 'too many type:location pairs'); A.areSame(1, counts['js top'], 'wrong number of js:top'); A.areSame(1, counts['blob bottom'], 'wrong number of blob:bottom'); - }, - - - 'test dependencyCalculations precomputed': function() { - addon.ac = { - http: { - getHeader: function(h) { - return null; - } - }, - url: { - getRouteMaker: function() { - return { - getComputedRoutes: function() { - return ['routes']; - } - }; - } - } - }; - addon.ac.context = { - lang: 'klingon' - }; - addon.setStore({ - getAppConfig: function() { - return { yui: { dependencyCalculations:'precomputed' } }; - }, - serializeClientStore: function() { - return 'clientstore'; - }, - getAllURLs: function() { return {}; }, - getFrameworkConfig: function() { - return { ondemandBaseYuiModules:[] }; - }, - yui: { - getAppSeedFiles: function () { return ['/static/seed.js']; }, - getAppGroupConfig: function() { return {}; }, - getConfigShared: function() { return {}; }, - langs: { klingon: true } - } - }); - - var YUI_use; - var assetHandler = { - addCss: function(path, location) { - // not testing this - return; - }, - addAssets: function(args) { - // not testing this - return; - }, - addAsset: function(type, location, content) { - if ('blob' === type && 'bottom' === location) { - var matches = content.match(/YUI\(\)\.use\((.*), function/); - YUI_use = matches[1]; - } - return; - } - }; - var binderMap = {}; - - addon.constructMojitoClientRuntime(assetHandler, binderMap); - A.areSame("'mojito-client'", YUI_use); - }, - - - 'test dependencyCalculations ondemand': function() { - addon.ac = { - http: { - getHeader: function(h) { - return null; - } - }, - url: { - getRouteMaker: function() { - return { - getComputedRoutes: function() { - return ['routes']; - } - }; - } - } - }; - addon.ac.context = { - lang: 'klingon' - }; - addon.setStore({ - getAppConfig: function() { - return { yui: { dependencyCalculations:'ondemand' } }; - }, - serializeClientStore: function() { - return 'clientstore'; - }, - getAllURLs: function() { return {}; }, - getFrameworkConfig: function() { - return { ondemandBaseYuiModules:[] }; - }, - yui: { - getAppSeedFiles: function () { return ['/static/seed.js']; }, - getAppGroupConfig: function() { return {}; }, - getConfigShared: function() { return {}; }, - langs: { klingon: true } - } - }); - - var YUI_use; - var assetHandler = { - addCss: function(path, location) { - // not testing this - return; - }, - addAssets: function(args) { - // not testing this - return; - }, - addAsset: function(type, location, content) { - if ('blob' === type && 'bottom' === location) { - var matches = content.match(/YUI\(\)\.use\((.*), function/); - YUI_use = matches[1]; - } - return; - } - }; - var binderMap = {}; - - addon.constructMojitoClientRuntime(assetHandler, binderMap); - A.areSame("'mojito-client'", YUI_use); - }, - - - 'test dependencyCalculations precomputed+ondemand': function() { - addon.ac = { - http: { - getHeader: function(h) { - return null; - } - }, - url: { - getRouteMaker: function() { - return { - getComputedRoutes: function() { - return ['routes']; - } - }; - } - } - }; - addon.ac.context = { - lang: 'klingon' - }; - addon.setStore({ - getAppConfig: function() { - return { yui: { dependencyCalculations:'precomputed+ondemand' } }; - }, - serializeClientStore: function() { - return 'clientstore'; - }, - getAllURLs: function() { return {}; }, - getFrameworkConfig: function() { - return { ondemandBaseYuiModules:[] }; - }, - yui: { - getAppSeedFiles: function () { return ['/static/seed.js']; }, - getAppGroupConfig: function() { return {}; }, - getConfigShared: function() { return {}; }, - langs: { klingon: true } - } - }); + } - var YUI_use; - var assetHandler = { - addCss: function(path, location) { - // not testing this - return; - }, - addAssets: function(args) { - // not testing this - return; - }, - addAsset: function(type, location, content) { - if ('blob' === type && 'bottom' === location) { - var matches = content.match(/YUI\(\)\.use\((.*), function/); - YUI_use = matches[1]; - } - return; - } - }; - var binderMap = {}; - addon.constructMojitoClientRuntime(assetHandler, binderMap); - A.areSame("'mojito-client'", YUI_use); - } }; suite.add(new Y.Test.Case(cases)); diff --git a/tests/unit/lib/app/addons/ac/test-output-adapter.common.js b/tests/unit/lib/app/addons/ac/test-output-adapter.common.js deleted file mode 100644 index 1cc8c62a2..000000000 --- a/tests/unit/lib/app/addons/ac/test-output-adapter.common.js +++ /dev/null @@ -1,258 +0,0 @@ -/* - * Copyright (c) 2011-2012, Yahoo! Inc. All rights reserved. - * Copyrights licensed under the New BSD License. - * See the accompanying LICENSE file for terms. - */ -YUI().use('mojito-output-adapter-addon', 'test', function(Y) { - - var suite = new Y.Test.Suite('mojito-output-adapter-addon tests'), - A = Y.Assert, - OA = Y.ObjectAssert; - - suite.add(new Y.Test.Case({ - - name: 'general tests', - - 'test flush calls done with "more"': function() { - var doneCalled; - var ac = {}; - new Y.mojito.addons.ac.core({}, null, ac); - - ac.done = function(data, meta, more) { - A.areSame('data', data, 'bad data for done'); - A.areSame('meta', meta, 'bad meta for done'); - A.isTrue(more, "flush should've send 'more' = true to done"); - doneCalled = true; - }; - - ac.flush('data', 'meta'); - - A.isTrue(doneCalled, 'flush never called done'); - }, - - 'test when called with string data, done renders a string without templating': function() { - var ac = {}; - var doneCalled; - ac.app = { config: {} }; - ac._adapter = { - done: function(data, meta) { - var ct = meta.http.headers['content-type']; - doneCalled = true; - A.areSame('hi',data, 'bad string to done'); - A.areSame(1, ct.length, "should be only one content-type header"); - A.areSame('text/plain; charset=utf-8', ct[0]); - } - }; - var instance = {views: {}}; - ac.command = {instance: instance}; - new Y.mojito.addons.ac.core(null, null, ac); - - ac.done('hi'); - - A.isTrue(doneCalled, 'done never called'); - - }, - - 'test when called with string data and Content-Type header set, done respects the type': function() { - var ac = {}; - var doneCalled; - ac.app = { config: {} }; - ac._adapter = { - done: function(data, meta) { - var ct = meta.http.headers['content-type']; - doneCalled = true; - A.areSame('hi',data, 'bad string to done'); - A.areSame(1, ct.length, "should be only one content-type header"); - A.areSame('my favorite type', ct[0]); - } - }; - ac.command = {instance: {views: {}}}; - new Y.mojito.addons.ac.core(null, null, ac); - - ac.done('hi', { - http: { - headers: { - 'content-type': ['my favorite type'] - } - } - }); - - - A.isTrue(doneCalled, 'done never called'); - - }, - - 'test when called with "json" meta string, done renders a string with json content type': function() { - var ac = {}; - var doneCalled; - var json = {hi:'there'}; - ac.app = { config: {} }; - ac._adapter = { - done: function(data, meta) { - var ct = meta.http.headers['content-type']; - doneCalled = true; - A.areSame(Y.JSON.stringify(json), data, 'bad string to done'); - A.areSame(1, ct.length, "should be only one content-type header"); - A.areSame('application/json; charset=utf-8', ct[0]); - } - }; - ac.command = {instance: {views: {}}}; - new Y.mojito.addons.ac.core(null, null, ac); - - ac.done(json, 'json'); - - A.isTrue(doneCalled, 'done never called'); - - }, - - 'test when called with "xml" meta string, done renders a string with xml content type': function() { - var ac = {}; - var doneCalled; - var json = {hi:'there'}; - ac.app = { config: {} }; - ac._adapter = { - done: function(data, meta) { - var ct = meta.http.headers['content-type']; - doneCalled = true; - A.areSame('there', data, 'bad string to done'); - A.areSame(1, ct.length, "should be only one content-type header"); - A.areSame('application/xml; charset=utf-8', ct[0]); - } - }; - ac.command = {instance: {views: {}}}; - new Y.mojito.addons.ac.core(null, null, ac); - - ac.done(json, 'xml'); - - A.isTrue(doneCalled, 'done never called'); - - }, - - 'test when there is no view meta, adapter is called directly': function() { - var ac = {}; - var doneCalled; - var data = 'data'; - var meta = {}; - ac.app = { config: {} }; - ac._adapter = { - done: function(d, m) { - doneCalled = true; - A.areSame(data, d, 'bad data to done'); - A.areSame(meta, m, 'bad meta to done'); - } - }; - ac.command = {instance: {views: {}}}; - new Y.mojito.addons.ac.core(null, null, ac); - - ac.done(data, meta); - - A.isTrue(doneCalled, 'done never called'); - - }, - - 'test device-specific view is used for render': function() { - var vrRendered; - // mock view renderer - var VR = Y.mojito.ViewRenderer; - Y.mojito.ViewRenderer = function(engine) { - A.areSame('engine', engine, 'bad view engine'); - return { - render: function(d, type, v, a, m, more) { - vrRendered = true; - A.areSame(data, d, 'bad data to view'); - A.areSame('t', type, 'bad mojitType to view'); - A.areSame(meta, m, 'bad meta to view'); - A.areSame('path', v, 'bad view content path to view engine'); - A.areSame(ac._adapter, a, 'bad adapter to view'); - A.isFalse(more); - } - }; - }; - var ac = { app: { config: {} } }; - var data = {}; - var meta = { view: {name: 'viewName'} }; - ac._adapter = { - done: function() { - A.fail('done should not be called, the view renderer should be calling it'); - } - }; - ac.command = { - instance: { - type: 't', - views: { - viewName: { - engine: 'engine', - 'content-path': 'path' - } - } - } - }; - new Y.mojito.addons.ac.core(null, null, ac); - - ac.done(data, meta, false); - - A.isTrue(vrRendered, 'view render never called'); - - // replace mock - Y.mojito.ViewRenderer = VR; - - }, - - 'test config children params are stripped': function() { - var doneCalled; - var children = { - foo: { - params: 'params' - } - }; - var ac = { - app: { config: {} }, - command: { - instance: { - config: { - children: children - }, - views: { - mockView: { - } - } - } - } - }; - ac._adapter = { - done: function(data, meta) { - doneCalled = true; - A.isObject(meta.binders.binderid, 'no binder id'); - A.isUndefined(meta.binders.binderid.config.children.params, 'config.children.params should be undefined'); - A.isUndefined(meta.binders.binderid.children.params, 'children.params should be undefined'); - } - }; - // mock view renderer - var VR = Y.mojito.ViewRenderer; - Y.mojito.ViewRenderer = function(engine) { - return { - render: function(d, type, v, a, m, more) { - a.done('html', m); - } - }; - }; - new Y.mojito.addons.ac.core({}, null, ac); - - var yguid = Y.guid; - Y.guid = function() { - return 'binderid'; - }; - ac.done({data: 'data'}, { view: {name: 'mockView'}, children: children}); - - A.isTrue(doneCalled, 'never called done'); - - // replace - Y.guid = yguid; - Y.mojito.ViewRenderer = VR; - } - - })); - - //DOOMED: Y.Test.Runner.add(suite); - -}); diff --git a/tests/unit/lib/app/addons/rs/test-config.js b/tests/unit/lib/app/addons/rs/test-config.js index f02c886d8..1a461287d 100644 --- a/tests/unit/lib/app/addons/rs/test-config.js +++ b/tests/unit/lib/app/addons/rs/test-config.js @@ -235,9 +235,6 @@ YUI().use('addon-rs-config', 'mojito-util', 'base', 'oop', 'test', function(Y) { "mojitDirs": [ "soloMojit" ], - "staticHandling": { - "useRollups": true - }, "testKey1": "testVal1-server", "testKey2": "testVal2", diff --git a/tests/unit/lib/app/addons/rs/test-yui.js b/tests/unit/lib/app/addons/rs/test-yui.js index 19c5f3139..22a93e3ee 100644 --- a/tests/unit/lib/app/addons/rs/test-yui.js +++ b/tests/unit/lib/app/addons/rs/test-yui.js @@ -51,11 +51,7 @@ YUI().use( this._appResources = {}; // env: ctx: list of resources this._mojits = {}; this.publish('getMojitTypeDetails', {emitFacade: true, preventable: false}); - this._appConfig = { - yui: { - dependencyCalculations: 'precomputed' - } - }; + this._appConfig = { yui: {} }; }, listAllMojits: function() { diff --git a/tests/unit/lib/app/autoload/autoload_test_descriptor.json b/tests/unit/lib/app/autoload/autoload_test_descriptor.json index 869e5ef6a..11b5ed3fe 100644 --- a/tests/unit/lib/app/autoload/autoload_test_descriptor.json +++ b/tests/unit/lib/app/autoload/autoload_test_descriptor.json @@ -11,7 +11,7 @@ "action-context.common": { "params": { "page": "$$config.base$$/mojito-test.html", - "lib": "$$config.lib$$/app/autoload/action-context.common.js,./../../../../../lib/app/addons/ac/output-adapter.common.js", + "lib": "$$config.lib$$/app/autoload/action-context.common.js", "test": "./test-action-context.common.js" }, "group": "fw,unit,client,server" @@ -114,7 +114,7 @@ "tunnel.client": { "params": { "page": "$$config.base$$/mojito-test.html", - "lib": "$$config.lib$$/app/autoload/tunnel.common.js", + "lib": "$$config.lib$$/app/autoload/tunnel-client.common.js", "test": "./test-tunnel.common.js" }, "group": "fw,unit,client" diff --git a/tests/unit/lib/app/autoload/test-action-context.common.js b/tests/unit/lib/app/autoload/test-action-context.common.js index 936b5c04e..3df99e524 100644 --- a/tests/unit/lib/app/autoload/test-action-context.common.js +++ b/tests/unit/lib/app/autoload/test-action-context.common.js @@ -8,7 +8,18 @@ YUI().use('mojito-action-context', 'test', function (Y) { var suite = new Y.Test.Suite('mojito-action-context tests'), acStash = {}, A = Y.Assert, - OA = Y.ObjectAssert; + OA = Y.ObjectAssert, + store = { + getAppConfig: function() { + return 'app config'; + }, + getStaticContext: function() { + return 'static context'; + }, + getRoutes: function(ctx) { + return "routes"; + } + }; suite.add(new Y.Test.Case({ @@ -47,18 +58,7 @@ YUI().use('mojito-action-context', 'test', function (Y) { }, models: {}, controller: {index: function() {}}, - store: { - getAppConfig: function() { - return 'app config'; - }, - getStaticContext: function() { - return 'static context'; - }, - getRoutes: function(ctx) { - A.areSame('context', ctx, "wrong context for getRoutes"); - return "routes"; - } - } + store: store }); ac._adapter = { @@ -89,18 +89,7 @@ YUI().use('mojito-action-context', 'test', function (Y) { }, models: {}, controller: {index: function() {}}, - store: { - getAppConfig: function() { - return 'app config'; - }, - getStaticContext: function() { - return 'static context'; - }, - getRoutes: function(ctx) { - A.areSame('context', ctx, "wrong context for getRoutes"); - return "routes"; - } - } + store: store }); ac._adapter = { @@ -131,18 +120,7 @@ YUI().use('mojito-action-context', 'test', function (Y) { }, models: {}, controller: {index: function() {}}, - store: { - getAppConfig: function() { - return 'app config'; - }, - getStaticContext: function() { - return 'static context'; - }, - getRoutes: function(ctx) { - A.areSame('context', ctx, "wrong context for getRoutes"); - return "routes"; - } - } + store: store }); ac._adapter = { @@ -174,18 +152,7 @@ YUI().use('mojito-action-context', 'test', function (Y) { controller: {index: function() {}}, dispatcher: 'the dispatcher', adapter: { }, - store: { - getAppConfig: function() { - return 'app config'; - }, - getStaticContext: function() { - return 'static context'; - }, - getRoutes: function(ctx) { - A.areSame('context', ctx, "wrong context for getRoutes"); - return "routes"; - } - } + store: store }); A.areSame('the dispatcher', ac.dispatcher, @@ -207,16 +174,7 @@ YUI().use('mojito-action-context', 'test', function (Y) { } }, controller: {index: function() {}}, - store: { - getAppConfig: function() { - return 'app config'; - }, - getStaticContext: function() { - return 'static context'; - }, - getRoutes: function() { - } - } + store: store }); A.isObject(ac.custom, 'custom required addon is missing'); @@ -240,18 +198,7 @@ YUI().use('mojito-action-context', 'test', function (Y) { }, models: {}, controller: {index: function() {}}, - store: { - getAppConfig: function() { - return 'app config'; - }, - getStaticContext: function() { - return 'static context'; - }, - getRoutes: function(ctx) { - A.areSame('context', ctx, "wrong context for getRoutes"); - return "routes"; - } - } + store: store }); A.areSame('Type', ac.type, 'bad type'); @@ -305,19 +252,326 @@ YUI().use('mojito-action-context', 'test', function (Y) { } }, controller: {index: function() {}}, - store: { - getAppConfig: function() { - return 'app config'; - }, - getStaticContext: function() { - return 'static context'; - }, - getRoutes: function() { + store: store + }); + + OA.areEqual([1,2,3,4], mixes, 'wrong addon attach order, should be based on acAddons'); + } + + })); + + suite.add(new Y.Test.Case({ + + name: 'general tests', + + 'test flush calls done with "more"': function() { + var doneCalled; + var ac = new Y.mojito.ActionContext({ + dispatch: 'the dispatch', + command: { + action: 'index', + instance: { + id: 'id', + type: 'TypeGeneral', + acAddons: [] } + }, + controller: {index: function() {}}, + store: store + }); + + ac.done = function(data, meta, more) { + A.areSame('data', data, 'bad data for done'); + A.areSame('meta', meta, 'bad meta for done'); + A.isTrue(more, "flush should've send 'more' = true to done"); + doneCalled = true; + }; + + ac.flush('data', 'meta'); + + A.isTrue(doneCalled, 'flush never called done'); + }, + + 'test when called with string data, done renders a string without templating': function() { + var doneCalled; + var ac = new Y.mojito.ActionContext({ + dispatch: 'the dispatch', + command: { + action: 'index', + instance: { + id: 'id', + type: 'TypeGeneral', + acAddons: [], + views: {} + } + }, + controller: {index: function() {}}, + store: store + }); + + ac._adapter = { + done: function(data, meta) { + var ct = meta.http.headers['content-type']; + doneCalled = true; + A.areSame('hi',data, 'bad string to done'); + A.areSame(1, ct.length, "should be only one content-type header"); + A.areSame('text/plain; charset=utf-8', ct[0]); } + }; + + ac.done('hi'); + + A.isTrue(doneCalled, 'done never called'); + }, + + 'test when called with string data and Content-Type header set, done respects the type': function() { + var doneCalled; + var ac = new Y.mojito.ActionContext({ + dispatch: 'the dispatch', + command: { + action: 'index', + instance: { + id: 'id', + type: 'TypeGeneral', + acAddons: [], + views: {} + } + }, + controller: {index: function() {}}, + store: store }); - OA.areEqual([1,2,3,4], mixes, 'wrong addon attach order, should be based on acAddons'); + ac._adapter = { + done: function(data, meta) { + var ct = meta.http.headers['content-type']; + doneCalled = true; + A.areSame('hi',data, 'bad string to done'); + A.areSame(1, ct.length, "should be only one content-type header"); + A.areSame('my favorite type', ct[0]); + } + }; + + ac.done('hi', { + http: { + headers: { + 'content-type': ['my favorite type'] + } + } + }); + + A.isTrue(doneCalled, 'done never called'); + }, + + 'test when called with "json" meta string, done renders a string with json content type': function() { + var doneCalled; + var ac = new Y.mojito.ActionContext({ + dispatch: 'the dispatch', + command: { + action: 'index', + instance: { + id: 'id', + type: 'TypeGeneral', + acAddons: [], + views: {} + } + }, + controller: {index: function() {}}, + store: store + }); + var json = {hi:'there'}; + + ac._adapter = { + done: function(data, meta) { + var ct = meta.http.headers['content-type']; + doneCalled = true; + A.areSame(Y.JSON.stringify(json), data, 'bad string to done'); + A.areSame(1, ct.length, "should be only one content-type header"); + A.areSame('application/json; charset=utf-8', ct[0]); + } + }; + + ac.done(json, 'json'); + + A.isTrue(doneCalled, 'done never called'); + }, + + 'test when called with "xml" meta string, done renders a string with xml content type': function() { + var doneCalled; + var ac = new Y.mojito.ActionContext({ + dispatch: 'the dispatch', + command: { + action: 'index', + instance: { + id: 'id', + type: 'TypeGeneral', + acAddons: [], + views: {} + } + }, + controller: {index: function() {}}, + store: store + }); + var json = {hi:'there'}; + + ac._adapter = { + done: function(data, meta) { + var ct = meta.http.headers['content-type']; + doneCalled = true; + A.areSame('there', data, 'bad string to done'); + A.areSame(1, ct.length, "should be only one content-type header"); + A.areSame('application/xml; charset=utf-8', ct[0]); + } + }; + + ac.done(json, 'xml'); + + A.isTrue(doneCalled, 'done never called'); + }, + + 'test when there is no view meta, adapter is called directly': function() { + var doneCalled; + var ac = new Y.mojito.ActionContext({ + dispatch: 'the dispatch', + command: { + action: 'index', + instance: { + id: 'id', + type: 'TypeGeneral', + acAddons: [], + views: {} + } + }, + controller: {index: function() {}}, + store: store + }); + var data = 'data'; + var meta = {}; + + ac._adapter = { + done: function(d, m) { + doneCalled = true; + A.areSame(data, d, 'bad data to done'); + A.areSame(meta, m, 'bad meta to done'); + } + }; + + ac.done(data, meta); + + A.isTrue(doneCalled, 'done never called'); + }, + + 'test device-specific view is used for render': function() { + var vrRendered; + // mock view renderer + var VR = Y.mojito.ViewRenderer; + Y.mojito.ViewRenderer = function(engine) { + A.areSame('engine', engine, 'bad view engine'); + return { + render: function(d, type, v, a, m, more) { + vrRendered = true; + A.areSame(data, d, 'bad data to view'); + A.areSame('t', type, 'bad mojitType to view'); + A.areSame(meta, m, 'bad meta to view'); + A.areSame('path', v, 'bad view content path to view engine'); + A.areSame(ac._adapter, a, 'bad adapter to view'); + A.isFalse(more); + } + }; + }; + var ac = new Y.mojito.ActionContext({ + dispatch: 'the dispatch', + command: { + action: 'index', + instance: { + id: 'id', + type: 't', + acAddons: [], + views: { + viewName: { + engine: 'engine', + 'content-path': 'path' + } + } + } + }, + controller: {index: function() {}}, + store: store + }); + var data = {}; + var meta = { view: {name: 'viewName'} }; + ac._adapter = { + done: function() { + A.fail('done should not be called, the view renderer should be calling it'); + } + }; + + ac.done(data, meta, false); + + A.isTrue(vrRendered, 'view render never called'); + + // replace mock + Y.mojito.ViewRenderer = VR; + }, + + 'test config children params are stripped': function() { + var doneCalled; + var children = { + foo: { + params: 'params' + } + }; + var ac = new Y.mojito.ActionContext({ + dispatch: 'the dispatch', + command: { + action: 'index', + instance: { + id: 'id', + type: 'TypeGeneral', + acAddons: [], + views: { + mockView: {} + }, + binders: { + mockView: {} + }, + config: { + children: children + } + } + }, + controller: {index: function() {}}, + store: store + }); + + ac._adapter = { + done: function(data, meta) { + doneCalled = true; + A.isObject(meta.binders.binderid, 'no binder id'); + A.isUndefined(meta.binders.binderid.config.children.params, 'config.children.params should be undefined'); + A.isUndefined(meta.binders.binderid.children.params, 'children.params should be undefined'); + } + }; + // mock view renderer + var VR = Y.mojito.ViewRenderer; + Y.mojito.ViewRenderer = function(engine) { + return { + render: function(d, type, v, a, m, more) { + a.done('html', m); + } + }; + }; + + var yguid = Y.guid; + Y.guid = function() { + return 'binderid'; + }; + ac.done({data: 'data'}, { view: {name: 'mockView'}, children: children}); + + A.isTrue(doneCalled, 'never called done'); + + // replace + Y.guid = yguid; + Y.mojito.ViewRenderer = VR; } })); diff --git a/tests/unit/lib/app/autoload/test-controller-context.common.js b/tests/unit/lib/app/autoload/test-controller-context.common.js deleted file mode 100644 index dbd04f3f1..000000000 --- a/tests/unit/lib/app/autoload/test-controller-context.common.js +++ /dev/null @@ -1,26 +0,0 @@ -/* - * Copyright (c) 2011-2012, Yahoo! Inc. All rights reserved. - * Copyrights licensed under the New BSD License. - * See the accompanying LICENSE file for terms. - */ -YUI().use('mojito-controller-context', 'test', function(Y) { - - var suite = new Y.Test.Suite('mojito-controller-context-tests'), - A = Y.Assert, - OA = Y.ObjectAssert; - - suite.add(new Y.Test.Case({ - - setUp: function() { - - }, - - tearDown: function() { - - } - - })); - - Y.Test.Runner.add(suite); - -}); diff --git a/tests/unit/lib/app/autoload/test-dispatch.client.js b/tests/unit/lib/app/autoload/test-dispatch.client.js index dfb7ef8bf..8b841eb70 100644 --- a/tests/unit/lib/app/autoload/test-dispatch.client.js +++ b/tests/unit/lib/app/autoload/test-dispatch.client.js @@ -19,7 +19,7 @@ YUI.add('mojito-dispatcher-client-tests', function(Y, NAME) { 'setUp': function() { store = { getAppConfig: function() { - return { yui: { dependencyCalculations: 'ondemand' } }; + return { yui: {} }; }, getStaticContext: function () { }, diff --git a/tests/unit/lib/app/autoload/test-dispatch.server.js b/tests/unit/lib/app/autoload/test-dispatch.server.js index 047d87386..aff2f2aed 100644 --- a/tests/unit/lib/app/autoload/test-dispatch.server.js +++ b/tests/unit/lib/app/autoload/test-dispatch.server.js @@ -19,7 +19,7 @@ YUI.add('mojito-dispatcher-server-tests', function(Y, NAME) { 'setUp': function() { store = { getAppConfig: function() { - return { yui: { dependencyCalculations: 'ondemand' } }; + return { yui: {} }; }, getStaticContext: function () { }, diff --git a/tests/unit/lib/app/autoload/test-loader.common.js b/tests/unit/lib/app/autoload/test-loader.common.js deleted file mode 100644 index 89760fa6a..000000000 --- a/tests/unit/lib/app/autoload/test-loader.common.js +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Copyright (c) 2011-2012, Yahoo! Inc. All rights reserved. - * Copyrights licensed under the New BSD License. - * See the accompanying LICENSE file for terms. - */ -YUI().use('mojito-loader', 'test', function(Y) { - - var suite = new Y.Test.Suite('mojito-loader-tests'), - stashYGet, yGetPasses = true, yGetLoaded, - A = Y.Assert, - AA = Y.ArrayAssert, - OA = Y.ObjectAssert; - - suite.add(new Y.Test.Case({ - - setUp: function() { - stashYGet = Y.Get; - Y.Get = { - script: function(scripts, cfg) { - if (! yGetPasses) { - cfg.onFailure(); - return; - } - yGetLoaded = scripts; - if (typeof window !== 'undefined') { - cfg.onSuccess(); - } - else { - for (var i=0; i