Skip to content

Commit 892772f

Browse files
committed
[Angular] Add assert for group to object renderer test
1 parent 7144570 commit 892772f

File tree

1 file changed

+29
-3
lines changed

1 file changed

+29
-3
lines changed

packages/angular-material/test/object-control.spec.ts

Lines changed: 29 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,17 +22,18 @@
2222
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
2323
THE SOFTWARE.
2424
*/
25-
import { BrowserDynamicTestingModule } from '@angular/platform-browser-dynamic/testing';
2625
import { NgRedux, NgReduxModule } from '@angular-redux/store';
26+
import { MockNgRedux } from '@angular-redux/store/lib/testing';
2727
import { CommonModule } from '@angular/common';
2828
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
29+
import { FlexLayoutModule } from '@angular/flex-layout';
2930
import { ReactiveFormsModule } from '@angular/forms';
3031
import {
3132
MatCardModule,
3233
MatFormFieldModule,
3334
MatInputModule
3435
} from '@angular/material';
35-
import { MockNgRedux } from '@angular-redux/store/lib/testing';
36+
import { BrowserDynamicTestingModule } from '@angular/platform-browser-dynamic/testing';
3637
import { NoopAnimationsModule } from '@angular/platform-browser/animations';
3738
import { JsonFormsModule } from '@jsonforms/angular';
3839
import { ControlElement } from '@jsonforms/core';
@@ -48,7 +49,6 @@ import {
4849
ObjectControlRenderer,
4950
ObjectControlRendererTester
5051
} from '../src/other/object.renderer';
51-
import { FlexLayoutModule } from '@angular/flex-layout';
5252

5353
const uischema1: ControlElement = { type: 'Control', scope: '#' };
5454
const uischema2: ControlElement = {
@@ -131,6 +131,32 @@ describe('Object Control', () => {
131131
component = fixture.componentInstance;
132132
}));
133133

134+
it('object control creates group', async(() => {
135+
const mockSubStore = MockNgRedux.getSelectorStub();
136+
component.uischema = uischema2;
137+
component.schema = schema2;
138+
139+
mockSubStore.next({
140+
jsonforms: {
141+
renderers: renderers,
142+
core: {
143+
data: {},
144+
schema: schema2
145+
}
146+
}
147+
});
148+
mockSubStore.complete();
149+
fixture.detectChanges();
150+
component.ngOnInit();
151+
fixture.whenStable().then(() => {
152+
// one for the object renderer and one for the group
153+
expect(fixture.nativeElement.querySelectorAll('mat-card').length).toBe(2);
154+
expect(
155+
fixture.nativeElement.querySelectorAll('mat-card-title')[0].textContent
156+
).toBe('Foo');
157+
});
158+
}));
159+
134160
it('render all elements', async(() => {
135161
const mockSubStore = MockNgRedux.getSelectorStub();
136162
component.uischema = uischema1;

0 commit comments

Comments
 (0)