Browse Source

Packages updated

pull/1/head
Sebastian 9 years ago
parent
commit
2a1ec8375f
  1. 11
      src/Squidex.Read/Schemas/Services/Implementations/CachingSchemaProvider.cs
  2. 2
      src/Squidex.Read/project.json
  3. 4
      src/Squidex.Store.MongoDb/project.json
  4. 17
      src/Squidex/app/framework/services/local-store.service.spec.ts
  5. 16
      src/Squidex/app/framework/services/notification.service.spec.ts
  6. 40
      src/Squidex/app/theme/_bootstrap.scss
  7. 13
      src/Squidex/project.json
  8. 2
      tests/RunCoverage.bat
  9. 45
      tests/Squidex.Core.Tests/Schemas/BooleanFieldPropertiesTests.cs
  10. 10
      tests/Squidex.Core.Tests/Schemas/BooleanFieldTests.cs
  11. 10
      tests/Squidex.Core.Tests/Schemas/NumberFieldTests.cs
  12. 10
      tests/Squidex.Core.Tests/Schemas/StringFieldTests.cs
  13. 2
      tests/Squidex.Infrastructure.Tests/CQRS/EnvelopeExtensionsTests.cs

11
src/Squidex.Read/Schemas/Services/Implementations/CachingSchemaProvider.cs

@ -65,7 +65,7 @@ namespace Squidex.Read.Schemas.Services.Implementations
public Task On(Envelope<IEvent> @event)
{
if (@event.Payload is SchemaUpdated ||
if (@event.Payload is SchemaUpdated ||
@event.Payload is SchemaDeleted)
{
var oldName = Cache.Get<string>(BuildNamesCacheKey(@event.Headers.AggregateId()));
@ -75,6 +75,15 @@ namespace Squidex.Read.Schemas.Services.Implementations
Cache.Remove(BuildModelCacheKey(@event.Headers.AppId(), oldName));
}
}
else
{
var schemaCreated = @event.Payload as SchemaCreated;
if (schemaCreated != null)
{
Cache.Remove(BuildModelCacheKey(@event.Headers.AppId(), schemaCreated.Name));
}
}
return Task.FromResult(true);
}

2
src/Squidex.Read/project.json

@ -4,7 +4,7 @@
"dependencies": {
"Microsoft.Extensions.Caching.Memory": "1.1.0",
"Microsoft.NETCore.App": "1.1.0",
"MongoDB.Driver": "2.4.0",
"MongoDB.Driver": "2.4.1",
"NETStandard.Library": "1.6.1",
"NodaTime": "2.0.0-alpha20160729",
"Squidex.Core": "1.0.0-*",

4
src/Squidex.Store.MongoDb/project.json

@ -1,11 +1,11 @@
{
"dependencies": {
"Autofac": "4.2.1",
"IdentityServer4": "1.0.0-rc5",
"IdentityServer4": "1.0.0",
"Microsoft.AspNetCore.Identity": "1.1.0",
"Microsoft.AspNetCore.Identity.MongoDB": "1.0.2",
"Microsoft.NETCore.App": "1.1.0",
"MongoDB.Driver": "2.4.0",
"MongoDB.Driver": "2.4.1",
"NETStandard.Library": "1.6.1",
"Squidex.Core": "1.0.0-*",
"Squidex.Events": "1.0.0-*",

17
src/Squidex/app/framework/services/local-store.service.spec.ts

@ -56,4 +56,21 @@ describe('LocalStore', () => {
expect(passedKey).toBe('mykey');
expect(returnedVal).toBe('myval');
});
it('should set and get from fallback value when local store failed', () => {
const localStoreService = new LocalStoreService();
localStoreService.configureStore({
setItem: (k: string, v: string) => {
throw 'Not supported';
},
getItem: (k: string) => {
throw 'Not supported';
}
});
localStoreService.set('mykey', 'myval');
expect(localStoreService.get('mykey')).toBe('myval');
});
});

16
src/Squidex/app/framework/services/notification.service.spec.ts

@ -24,6 +24,22 @@ describe('NotificationService', () => {
expect(notificationService).toBeDefined();
});
it('should create error', () => {
const notification = Notification.error('MyError');
expect(notification.displayTime).toBe(10000);
expect(notification.message).toBe('MyError');
expect(notification.messageType).toBe('error');
});
it('should create info', () => {
const notification = Notification.info('MyInfo');
expect(notification.displayTime).toBe(10000);
expect(notification.message).toBe('MyInfo');
expect(notification.messageType).toBe('info');
});
it('should publish notification', () => {
const notificationService = new NotificationService();
const notification = Notification.error('Message');

40
src/Squidex/app/theme/_bootstrap.scss

@ -149,6 +149,13 @@
text-align: right;
}
select {
&.form-control {
padding-top: 0;
padding-bottom: 0;
}
}
.form-hint {
& {
font-size: .8rem;
@ -192,10 +199,41 @@
}
}
.modal {
&-content,
&-header {
border: 0;
}
&-header {
@include border-radius-top(.3rem);
background: $color-modal-header-background;
h4 {
color: $color-modal-header-foreground;
font-size: 1rem;
font-weight: normal;
}
.close {
& {
@include opacity(1);
@include text-shadow-none;
color: $color-modal-header-foreground;
font-size: 1.6rem;
font-weight: 400;
}
&:hover {
color: lighten($color-modal-header-foreground, 15%);
}
}
}
&-content {
@include box-shadow(0, 6px, 16px, .4);
border: 0;
}
&-dialog {

13
src/Squidex/project.json

@ -2,9 +2,9 @@
"dependencies": {
"Autofac": "4.2.1",
"Autofac.Extensions.DependencyInjection": "4.0.0",
"IdentityServer4": "1.0.0-rc5",
"IdentityServer4.AccessTokenValidation": "1.0.1-rc5",
"IdentityServer4.AspNetIdentity": "1.0.0-rc5",
"IdentityServer4": "1.0.0",
"IdentityServer4.AccessTokenValidation": "1.0.2",
"IdentityServer4.AspNetIdentity": "1.0.0",
"Microsoft.AspNetCore.Authentication.Cookies": "1.1.0",
"Microsoft.AspNetCore.Authentication.Google": "1.1.0",
"Microsoft.AspNetCore.Authentication.OpenIdConnect": "1.1.0",
@ -22,11 +22,10 @@
"Microsoft.Extensions.Logging.Console": "1.1.0",
"Microsoft.Extensions.Logging.Debug": "1.1.0",
"Microsoft.Extensions.Options.ConfigurationExtensions": "1.1.0",
"MongoDB.Driver": "2.4.0",
"NJsonSchema": "6.6.6192.39835",
"NSwag.AspNetCore": "8.1.0",
"MongoDB.Driver": "2.4.1",
"NJsonSchema": "7.3.6214.20986",
"OpenCover": "4.6.519",
"ReportGenerator": "2.5.2-beta2",
"ReportGenerator": "2.5.2",
"Squidex.Core": "1.0.0-*",
"Squidex.Events": "1.0.0-*",
"Squidex.Infrastructure": "1.0.0-*",

2
tests/RunCoverage.bat

@ -45,7 +45,7 @@ exit /b %errorlevel%
exit /b %errorlevel%
:RunReportGeneratorOutput
"%UserProfile%\.nuget\packages\ReportGenerator\2.4.5\tools\ReportGenerator.exe" ^
"%UserProfile%\.nuget\packages\ReportGenerator\2.5.2\tools\ReportGenerator.exe" ^
-reports:"%~dp0\GeneratedReports\*.xml" ^
-targetdir:"%~dp0\GeneratedReports\Output"
exit /b %errorlevel%

45
tests/Squidex.Core.Tests/Schemas/BooleanFieldPropertiesTests.cs

@ -6,7 +6,10 @@
// All rights reserved.
// ==========================================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using FluentAssertions;
using Squidex.Infrastructure;
using Xunit;
@ -30,5 +33,47 @@ namespace Squidex.Core.Schemas
new ValidationError("Editor ist not a valid value", "Editor")
});
}
[Fact]
public void Should_set_or_freeze_sut()
{
var sut = new BooleanFieldProperties();
foreach (var property in sut.GetType().GetRuntimeProperties().Where(x => x.Name != "IsFrozen"))
{
var value =
property.PropertyType.GetTypeInfo().IsValueType ?
Activator.CreateInstance(property.PropertyType) :
null;
property.SetValue(sut, value);
var result = property.GetValue(sut);
Assert.Equal(value, result);
}
sut.Freeze();
foreach (var property in sut.GetType().GetRuntimeProperties().Where(x => x.Name != "IsFrozen"))
{
var value =
property.PropertyType.GetTypeInfo().IsValueType ?
Activator.CreateInstance(property.PropertyType) :
null;
Assert.Throws<InvalidOperationException>(() =>
{
try
{
property.SetValue(sut, value);
}
catch (Exception e)
{
throw e.InnerException;
}
});
}
}
}
}

10
tests/Squidex.Core.Tests/Schemas/BooleanFieldTests.cs

@ -34,6 +34,16 @@ namespace Squidex.Core.Schemas
Assert.NotEqual(sut, sut.Enable());
}
[Fact]
public async Task Should_not_add_error_if_valid()
{
var sut = new BooleanField(1, "name", new BooleanFieldProperties { Label = "Name" });
await sut.ValidateAsync(CreateValue(null), errors);
Assert.Empty(errors);
}
[Fact]
public async Task Should_add_errors_if_boolean_is_required()
{

10
tests/Squidex.Core.Tests/Schemas/NumberFieldTests.cs

@ -35,6 +35,16 @@ namespace Squidex.Core.Schemas
Assert.NotEqual(sut, sut.Enable());
}
[Fact]
public async Task Should_not_add_error_if_valid()
{
var sut = new NumberField(1, "name", new NumberFieldProperties { Label = "Name" });
await sut.ValidateAsync(CreateValue(null), errors);
Assert.Empty(errors);
}
[Fact]
public async Task Should_add_errors_if_number_is_required()
{

10
tests/Squidex.Core.Tests/Schemas/StringFieldTests.cs

@ -35,6 +35,16 @@ namespace Squidex.Core.Schemas
Assert.NotEqual(sut, sut.Enable());
}
[Fact]
public async Task Should_not_add_error_if_valid()
{
var sut = new StringField(1, "name", new StringFieldProperties { Label = "Name" });
await sut.ValidateAsync(CreateValue(null), errors);
Assert.Empty(errors);
}
[Fact]
public async Task Should_add_errors_if_string_is_required()
{

2
tests/Squidex.Infrastructure.Tests/CQRS/EnvelopeExtensionsTests.cs

@ -70,7 +70,7 @@ namespace Squidex.Infrastructure.CQRS
sut.SetActor(actor);
Assert.Equal(actor, sut.Headers.Actor());
Assert.Equal(actor, RefToken.Parse(sut.Headers["User"].ToString()));
Assert.Equal(actor, RefToken.Parse(sut.Headers["Actor"].ToString()));
}
[Fact]

Loading…
Cancel
Save