vsternbach / angularjs-testbed Goto Github PK
View Code? Open in Web Editor NEWTesting angularjs applications written in typescript using angular decorators the angular way
License: MIT License
Testing angularjs applications written in typescript using angular decorators the angular way
License: MIT License
Hi, I have a component which depends on ngModel
controller, here is my implementation:
import { Component, ViewParent, Input } from 'angular-ts-decorators';
import { INgModelController } from 'angular';
@Component({
selector: 'connect-content',
template: require('./connectContent.tpl.html')
})
/*@ngInject*/
export class ConnectContent {
@ViewParent('ngModel') ngModel: INgModelController;
@Input() connectContentId: string;
constructor () {
}
}
When I try to create the test instance of this component via TestBed.createComponent(ConnectContent)
in my test suite I get a self-explanatory error:
Error: [$compile:ctreq] Controller 'ngModel', required by directive 'connectContent', can't be found!
https://errors.angularjs.org/1.7.5/$compile/ctreq?p0=ngModel&p1=connectContent
As I've looked into your (wonderful btw) library's code I see the require
property is not taken into account at all when compiling directive inside of _compileComponent
function.
Is there any working path to get around this?
If not how do you think that one should be tackled? While adding dumb attributes based on requires and passing some empty values to them can be an option it might not work (based on component's logic).
Another way would be to prepare non-standard (for Angular2+) method for passing object containing attributes names & values. But I don't know if tricks
like that are supposed to be inside of angularjs-testbed
library :<
3.3.29
to 3.3.30
.This version is covered by your current version range and after updating it in your project the build failed.
@types/jquery is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.
There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.
Your Greenkeeper Bot 🌴
1.9.3
to 1.10.0
.This version is covered by your current version range and after updating it in your project the build failed.
tslib is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.
This release fixes enumerability in object rest's __rest
helper (see details here) and adds a new __spreadArrays
helper (done as part of a change for more accurate array spreads).
The new version differs by 5 commits.
e1aae12
Update version to '1.10.0'.
ab40523
Add '__spreadArrays' helper (#67)
57efce4
Modified __rest to check if property is enumerable. (#66)
ca03390
Merge pull request #57 from styfle/patch-1
b99cbbc
Update .npmignore
See the full diff
There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.
Your Greenkeeper Bot 🌴
1.6.54
to 1.6.55
.This version is covered by your current version range and after updating it in your project the build failed.
@types/angular is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.
There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.
Your Greenkeeper Bot 🌴
2.6.3
to 2.7.0
.This version is covered by your current version range and after updating it in your project the build failed.
rimraf is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.
There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.
Your Greenkeeper Bot 🌴
devDependency
angular was updated from 1.7.8
to 1.7.9
.devDependency
angular-mocks was updated from 1.7.8
to 1.7.9
.This version is covered by your current version range and after updating it in your project the build failed.
This monorepo update includes releases of one or more dependencies which all belong to the angular1 group definition.
angular1 is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.
There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.
Your Greenkeeper Bot 🌴
3.4.0
to 3.5.0
.This version is covered by your current version range and after updating it in your project the build failed.
jasmine-core is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.
The new version differs by 117 commits.
99799f7
Still need some ruby stuff around to release the jasmine-core gem
e8263e3
bump version to 3.5.0
53561ae
Show details of syntax (etc) errors when loading Jasmine's own specs
68f25a7
Don't create env instances in beforeEach
96ba66a
Built distribution
ba4a8d1
Fixed jsdocs
65d9e93
Removed broken & long-disabled JsApiReporter integration specs
2d3ac38
toBeRejectedWithError can expect the error to be Error, not just a subtype
5a219da
Added basic integration tests for all built-in matchers
f056f3b
Fixed indentation
aeb0b73
Merge branch 'dtychshenko-1740-fail-on-no-expectations'
7263a38
Adds new configuration option to failSpecWithNoExpectations that will report specs without expectations as failures if enabled
e8870db
Merge branch 'fix-missing-asynchronous-stacktrace' of https://github.com/prantlf/jasmine into prantlf-fix-missing-asynchronous-stacktrace
35d1508
Show argument diffs in toHaveBeenCalledWith failure messages
19292e4
Stop testing against PhantomJS
There are 117 commits in total.
See the full diff
There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.
Your Greenkeeper Bot 🌴
When using in my unit test I have the following errros:
31 07 2018 13:57:04.950:ERROR [compiler.karma-typescript]: node_modules/angularjs-testbed/types/ComponentFixture.d.ts(17,26): error TS2304: Cannot find name 'JQLite'.
31 07 2018 13:57:04.950:ERROR [compiler.karma-typescript]: node_modules/angularjs-testbed/types/DebugElement.d.ts(1,23): error TS2688: Cannot find type definition file for 'jquery'.
31 07 2018 13:57:04.950:ERROR [compiler.karma-typescript]: node_modules/angularjs-testbed/types/DebugElement.d.ts(3,27): error TS2702: 'JQuery' only refers to a type, but is being used as a namespace here.
31 07 2018 13:57:04.951:ERROR [compiler.karma-typescript]: node_modules/angularjs-testbed/types/DebugElement.d.ts(5,39): error TS2304: Cannot find name 'JQLite'.
31 07 2018 13:57:04.951:ERROR [compiler.karma-typescript]: node_modules/angularjs-testbed/types/DebugElement.d.ts(7,21): error TS2702: 'JQuery' only refers to a type, but is being used as a namespace here.
Maybe the required @types
should be added as dependencies
or at least peerDependencies
?
🚨 You need to enable Continuous Integration on all branches of this repository. 🚨
To enable Greenkeeper, you need to make sure that a commit status is reported on all branches. This is required by Greenkeeper because it uses your CI build statuses to figure out when to notify you about breaking changes.
Since we didn’t receive a CI status on the greenkeeper/initial
branch, it’s possible that you don’t have CI set up yet. We recommend using Travis CI, but Greenkeeper will work with every other CI service as well.
If you have already set up a CI for this repository, you might need to check how it’s configured. Make sure it is set to run on all new branches. If you don’t want it to run on absolutely every branch, you can whitelist branches starting with greenkeeper/
.
Once you have installed and configured CI on this repository correctly, you’ll need to re-trigger Greenkeeper’s initial pull request. To do this, please delete the greenkeeper/initial
branch in this repository, and then remove and re-add this repository to the Greenkeeper App’s white list on Github. You'll find this list on your repo or organization’s settings page, under Installed GitHub Apps.
2.1.0
to 2.1.1
.This version is covered by your current version range and after updating it in your project the build failed.
copyfiles is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.
There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.
Your Greenkeeper Bot 🌴
This does not seem to work:
interface IFooResource extends ng.resource.IResourceClass<IFoo> {}
function FooResource($resource: ng.resource.IResourceService) {
return $resource('/foo/:id', {
format: 'json',
id: '@id'
});
}
describe('FooResource', () => {
let resource: IFooResource;
beforeEach(() => {
TestBed.configureTestingModule({
imports: [
ngResource
],
providers: [{
provide: 'FooResource',
useFactory: ($resource) => FooResource($resource),
deps: [
'$resource'
]
}]
})
.compileComponents();
resource = TestBed.get('FooResource');
});
});
it gives a Error: [$injector:unpr] Unknown provider: FooResourceProvider <- FooResource
error.
Maybe there is another way to import the resource?
3.0.3
to 3.0.4
.This version is covered by your current version range and after updating it in your project the build failed.
coveralls is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.
The new version differs by 5 commits.
8ac4325
version bump
9d9c227
Bump extend from 3.0.1 to 3.0.2 (#226)
33119a7
Bump js-yaml from 3.11.0 to 3.13.1 (#225)
f5549c7
Bump handlebars from 4.1.0 to 4.1.2 (#224)
4df732b
Style fix (#211)
See the full diff
There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.
Your Greenkeeper Bot 🌴
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.