Commit Graph

2383 Commits

Author SHA1 Message Date
Victor Woeltjen
5ae58644d9 [Framework] Add spec for constant registration
Add spec for registration of constant values as
extensions. WTD-572.
2014-11-20 10:52:01 -08:00
Victor Woeltjen
c594ad8918 [Framework] Add spec for property retention
Add spec to verify that static properties exposed by
extension constructors remain visible after these
have been converted to partial constructors. These
static methods have various uses, such as providing
appliesTo methods to classes where pre-instantiation
filtering is useful. WTD-572.
2014-11-20 10:48:04 -08:00
Victor Woeltjen
05f4832608 [Framework] Add bundle definition
Add an (empty) bundle definition for the framework
component. This has the practical effect of avoiding
404 errors in the console log, since platform/framework
is included in bundles.json (the set of active bundles)
in order to ensure detection by the test framework.
This also provides a place for possible future
extensions provided by the framework itself.

WTD-572.
2014-11-20 10:41:39 -08:00
Victor Woeltjen
08ff75c9c0 [Framework] Bring in changes from sandbox
Bring in changes from 'sandbox' branch. These include:

* Reconfiguring require's baseUrl such that relative
  paths work as expected in define call dependencies.
  Previously this only worked as expected in the
  framework bundle, since data-main points there.
* Add support for a 'constants' category of extension,
  to define application constants from bundles. This
  allows services to treat static values (such as
  persistence URIs) as injectable dependencies.
* Various assurances that properties from extension
  definitions will be exposed upon resolved
  implementations, even after partial construction.

WTD-572.
2014-11-20 10:37:27 -08:00
Victor Woeltjen
3682eb73cb [Framework] Remove temporary file
Remove temporary script file (introduced for initial
build/repository setup to illustrate naming conventions
and test declaration) from framework sources.

Completes implementation of framework layer for
WTD-518.
2014-11-07 04:57:51 -08:00
Victor Woeltjen
6dea66558f [Framework] Include Promise polyfill in tests
Provide Promise polyfill in test runner. This allows tests
of objects which use Promise directly to be run in environments
which don't yet implement Promise (including command line
test environment.) Completing test suite for framework layer,
WTD-518.
2014-11-06 19:53:26 -08:00
Victor Woeltjen
2e144ca003 [Framework] Fix code style in specs
Fix code style in specs for framework layer, written
for WTD-518.
2014-11-06 19:46:14 -08:00
Victor Woeltjen
bfcfa0127d [Framework] Spec for FrameworkInitializer
Complete specs for initial implementation of framework
layer, WTD-518.
2014-11-06 19:44:34 -08:00
Victor Woeltjen
0feb7c9699 [Framework] Remove spec for constants
Remove spec for Constants.js (only constants are defined
here, and there is no particular use to verifying their
existence; also, implicitly tested by specs for code
which uses these constants.) WTD-518
2014-11-06 19:33:47 -08:00
Victor Woeltjen
0d80494618 [Framework] Add spec for ImplementationLoader
WTD-518.
2014-11-06 19:29:55 -08:00
Victor Woeltjen
5f7704f1b8 [Framework] Add spec for ExtensionResolver
WTD-518
2014-11-06 19:20:51 -08:00
Victor Woeltjen
69c6811f00 [Framework] Fill in spec for bundle resolver
Fill in spec for bundle resolver, WTD-518.
2014-11-06 19:06:26 -08:00
Victor Woeltjen
2dde62cb79 [Framework] Complete ServiceCompositor spec
WTD-518.
2014-11-06 18:40:25 -08:00
Victor Woeltjen
5d4f1f2008 [Framework] Add spec for partial constructor
Add spec for partial constructor, used to handle two-stage
application of Angular dependencies and constructor
arguments. WTD-518.
2014-11-06 17:09:55 -08:00
Victor Woeltjen
b0267a9c59 [Framework] Complete spec for ExtensionRegistrar
Complete tests for the extension registar, WTD-518.
2014-11-06 16:52:22 -08:00
Victor Woeltjen
1a113b2a6f [Framework] Add specs for custom registrars
WTD-518
2014-11-06 16:08:14 -08:00
Victor Woeltjen
52e2761ac7 [Framework] Fill in spec for Extension
Fill in spec for Extension, part of the framework
component. WTD-518.
2014-11-06 15:41:25 -08:00
Victor Woeltjen
794d11e715 [Framework] Add spec for Bundle
Add spec for Bundle, used by the framework layer.
WTD-518.
2014-11-06 15:20:26 -08:00
Victor Woeltjen
cbea30d9cc [Framework] Add test cases for warning
Verify that warnings are issued when bundles are missing
or malformed. WTD-518.
2014-11-06 14:57:32 -08:00
Victor Woeltjen
587a913405 [Framework] Add test case for BundleLoader
Add a test case for BundleLoader, to improve test coverage
of framework layer. WTD-518.
2014-11-06 14:47:56 -08:00
Victor Woeltjen
8e1eb2f22f [Framework] Initial spec for bundle loader
Add first test case for bundle loader, WTD-518.
2014-11-06 14:28:22 -08:00
Victor Woeltjen
dac05d7841 [Framework] Spec for ApplicationBootstrapper
Add spec for the application bootstrapper; verify
its interactions with Angular. WTD-518.
2014-11-06 08:23:33 -08:00
Victor Woeltjen
e2f8b1eef9 [Framework] Add skeleton specs
Add empty specs for all classes introduced for the
framework layer, WTD-518.

Note that Main is omitted, as this launches the full
application.
2014-11-06 08:03:35 -08:00
Victor Woeltjen
b0bd9c5cf1 [Test] Fix command line testing
Change the way missing test suites are detected by
the test runner; PhantomJS (used for executing tests
from the command line build) does not appear to give
consistent HTTP status codes, so use a more general
try-catch mechanism.

Addresses an issue introduced during ongoing
development of framework layer, WTD-518.
2014-11-05 18:06:03 -08:00
Victor Woeltjen
f3e532156d [Example] Add missing semicolon
In context of building examples for WTD-518 self-testing.
2014-11-05 17:53:06 -08:00
Victor Woeltjen
89a70973d6 [Build] Exclude examples from produced WAR
Exclude example bundles from produced web archive; this
allows the example folder to grow (e.g. in support of
framework component demonstration for WTD-518) without
influencing the size of the built archive.
2014-11-05 17:48:59 -08:00
Victor Woeltjen
074958317f [Example] Add composite services example
Add an example showing the use of composite services,
WTD-518.
2014-11-05 17:38:14 -08:00
Victor Woeltjen
3cbdb0b9e2 [Framework] Add missing require argument
Add missing import of the ServiceCompositor to
CustomRegistrars. WTD-518.
2014-11-05 17:37:49 -08:00
Victor Woeltjen
ea4619c3d8 [Framework] Document implementation
Document implementation more fully, including notes on
composite services. WTD-518.
2014-11-05 17:29:04 -08:00
Victor Woeltjen
9e61e89da4 [Framework] Wire in service compositor
Use service compositor as a form of custom registrar.
Also, add clarifying comments. WTD-518.
2014-11-05 16:42:15 -08:00
Victor Woeltjen
67dac667cf [Framework] Change cardinality of custom registrars
Change cardinality of custom registrars from one to
many; this will permit treating the service
compositor as a custom registrar. WTD-518.
2014-11-05 16:25:34 -08:00
Victor Woeltjen
2d0d505b51 [Framework] Simplify inputs to service compositor
Accept the full component array into the service
compositor; this will make it easier to add these
from the registar. WTD-518.
2014-11-05 15:02:46 -08:00
Victor Woeltjen
d9f17dca83 [Framework] Initial service compositor implementation
Initial implementation of the service compositor, which
is responsible for registering components which follow
the provider-aggregator-decorator pattern as named
services within Angular. WTD-518.
2014-11-05 14:51:08 -08:00
Victor Woeltjen
a4f396b876 [Test] Ignore missing suites
Ignore bundles for which no test suites have been defined.
Used to support development of framework layer (don't
stall the test runner just because some bundle does not
have defined tests yet), WTD-518.
2014-11-05 14:10:46 -08:00
Victor Woeltjen
6e59b5881d [Example] Use implementations in examples
Use implementations of custom extensions in examples.
WTD-518.
2014-11-05 14:05:14 -08:00
Victor Woeltjen
b1654f7034 [Framework] Fix partial constructor
Fix the replicated behavior of the new operator in the
partial constructor such that it accepts factory-style
constructors (which will be the norm according to
current code style standards.) WTD-518.
2014-11-05 14:04:24 -08:00
Victor Woeltjen
2f0ea19750 [Framework] Add clarifying comments
Add clarifying comments to code responsible for registering
empty extension categories, WTD-518.
2014-11-05 13:42:51 -08:00
Victor Woeltjen
aeb670bf5f [Example] Add new example bundle
Add an example bundle containing custom extensions,
which can be recognized by extensions from another
bundle. WTD-518.
2014-11-05 13:38:46 -08:00
Victor Woeltjen
033ecec295 [Framework] Handle empty extension sets
Satisfy dependencies on empty extension sets when
necessary; extensions which depend on extension
categories which do not exist then get an empty
array. WTD-518.
2014-11-05 13:25:01 -08:00
Victor Woeltjen
ff9682c40c [Example] Use non-built-in extensions
Use non-built-in extensions in an example bundle,
WTD-518.
2014-11-05 12:40:53 -08:00
Victor Woeltjen
22034d3305 [Framework] Slice arguments correctly
Fix arguments-to-array conversions used for extension
registration. WTD-518.
2014-11-05 12:36:31 -08:00
Victor Woeltjen
7388f4e8bf [Framework] Add documentation to framework component
Add an overview of the stages of framework execution
at the bundle level. WTD-518.
2014-11-05 12:25:37 -08:00
Victor Woeltjen
73e767228f [Framework] Refactor source folder
Refactor framework source folder; move each initialization
stage into its own directory. WTD-518.
2014-11-05 12:18:19 -08:00
Victor Woeltjen
dbd5b148e2 [Framework] Add comments, logging
Add additional comments and logging to components
of the framework layer. WTD-518.
2014-11-04 17:17:35 -08:00
Victor Woeltjen
3ed3ee19d7 [Example] Add example of service registration
Add an example of registering a plain service
with Angular. WTD-518.
2014-11-04 16:13:49 -08:00
Victor Woeltjen
ed4c178a76 [Framework] Log application bootstrapping
Log bootstrapping phase of framework layer initialization.
WTD-518.
2014-11-04 16:13:09 -08:00
Victor Woeltjen
d3c979fa6f [Example] Add example using directives
Add example of binding a directive with Angular using
declarative syntax. WTD-518.
2014-11-04 16:02:36 -08:00
Victor Woeltjen
b712c9a401 [Example] Add controller example
Add example showing declarative registration of
controllers with Angular. WTD-518.
2014-11-04 15:28:59 -08:00
Victor Woeltjen
0e6f419678 [Framework] Allow controller registration
Add tweaks in framework which fix errors which
were preventing controller registration. This
includes maintaining the type of controllers as
functions, even after decorating with information
from the extension. WTD-518.
2014-11-04 15:27:10 -08:00
Victor Woeltjen
b383be0711 [Example] Add example bundle for built-ins
Add bundle which will serve as an example of how to
declare the presence of Angular built-ins as extensions
which will be recognized by the framework layer.

Also useful for generally verifying that functionality
provided by framework layer provides sufficient support
for other bundles to expose application features.
WTD-518.
2014-11-04 14:40:06 -08:00