Skip to content

Commit

Permalink
Merge branch 'dev' into feature/core-name-configuration
Browse files Browse the repository at this point in the history
  • Loading branch information
antho1404 authored Sep 24, 2018
2 parents f3b67c0 + 50bf400 commit ea64cae
Show file tree
Hide file tree
Showing 5 changed files with 60 additions and 21 deletions.
8 changes: 5 additions & 3 deletions service/importer/assets/schema.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 5 additions & 5 deletions service/importer/assets/schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
"type": "object",
"additionalProperties": false,
"patternProperties": {
"^[a-zA-Z_-]+$": {
"^[0-9a-zA-Z_-]+$": {
"$ref": "#/definitions/event"
}
}
Expand All @@ -42,7 +42,7 @@
"type": "object",
"additionalProperties": false,
"patternProperties": {
"^[a-zA-Z_-]+$": {
"^[0-9a-zA-Z_-]+$": {
"$ref": "#/definitions/task"
}
}
Expand All @@ -53,7 +53,7 @@
"type": "object",
"additionalProperties": false,
"patternProperties": {
"^[a-zA-Z_-]+$": {
"^[0-9a-zA-Z_-]+$": {
"$ref": "#/definitions/dependency",
"required": [
"image"
Expand All @@ -73,7 +73,7 @@
"type": "object",
"additionalProperties": false,
"patternProperties": {
"^[a-zA-Z_-]+$": {
"^[0-9a-zA-Z_-]+$": {
"type": "object",
"additionalProperties": false,
"required": [
Expand Down Expand Up @@ -131,7 +131,7 @@
"type": "object",
"additionalProperties": false,
"patternProperties": {
"^[a-zA-Z_-]+$": {
"^[0-9a-zA-Z_-]+$": {
"type": "object",
"additionalProperties": false,
"required": [
Expand Down
1 change: 1 addition & 0 deletions service/importer/tests/service-names-valid/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
FROM node
28 changes: 28 additions & 0 deletions service/importer/tests/service-names-valid/mesg.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: "minimal-valid"

events:
Name1-_:
name: "name"
data:
Name1-_:
name: "name"
type: String

tasks:
Name1-_:
inputs:
Name1-_:
name: "name"
type: String

outputs:
Name1-_:
name: "name"
data:
Name1-_:
name: "name"
type: String

dependencies:
Name1-_:
image: nginx
34 changes: 21 additions & 13 deletions service/importer/validation_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,63 +10,71 @@ import (

func TestValidate(t *testing.T) {
validation, err := Validate("./tests/service-valid")
require.Nil(t, err)
require.NoError(t, err)
require.True(t, validation.IsValid())
require.True(t, validation.ServiceFileExist)
require.Equal(t, 0, len(validation.ServiceFileWarnings))
require.Len(t, validation.ServiceFileWarnings, 0)
require.True(t, validation.DockerfileExist)
}

func TestValidateYMLNames(t *testing.T) {
validation, err := Validate("./tests/service-names-valid")
require.NoError(t, err)
require.True(t, validation.IsValid())
require.True(t, validation.ServiceFileExist)
require.Len(t, validation.ServiceFileWarnings, 0)
}

func TestValidateDockerfileIsMissing(t *testing.T) {
validation, err := Validate("./tests/service-docker-missing")
require.Nil(t, err)
require.NoError(t, err)
require.False(t, validation.IsValid())
require.True(t, validation.ServiceFileExist)
require.Equal(t, 0, len(validation.ServiceFileWarnings))
require.Len(t, validation.ServiceFileWarnings, 0)
require.False(t, validation.DockerfileExist)
}

func TestValidateFromMissingServiceFile(t *testing.T) {
validation, err := Validate("./tests/service-file-missing")
require.Nil(t, err)
require.NoError(t, err)
require.False(t, validation.IsValid())
require.False(t, validation.ServiceFileExist)
require.Equal(t, 1, len(validation.ServiceFileWarnings))
require.Len(t, validation.ServiceFileWarnings, 1)
require.True(t, validation.DockerfileExist)
}

func TestValidateFromNonExistingPath(t *testing.T) {
validation, err := Validate("./tests/service-non-existing")
require.Nil(t, err)
require.NoError(t, err)
require.False(t, validation.IsValid())
require.False(t, validation.ServiceFileExist)
require.Equal(t, 1, len(validation.ServiceFileWarnings))
require.Len(t, validation.ServiceFileWarnings, 1)
require.False(t, validation.DockerfileExist)
}

func TestValidateFromMalFormattedServiceFile(t *testing.T) {
_, err := Validate("./tests/service-file-mal-formatted")
require.NotNil(t, err)
require.Error(t, err)
}

func TestValidateFromInvalidServiceFile(t *testing.T) {
validation, err := Validate("./tests/service-file-invalid")
require.Nil(t, err)
require.NoError(t, err)
require.False(t, validation.IsValid())
require.True(t, validation.ServiceFileExist)
require.Equal(t, 1, len(validation.ServiceFileWarnings))
require.Len(t, validation.ServiceFileWarnings, 1)
require.True(t, validation.DockerfileExist)
}

// Test IsValid function

func TestIsValid(t *testing.T) {
isValid, err := IsValid("./tests/service-valid")
require.Nil(t, err)
require.NoError(t, err)
require.True(t, isValid)
}

func TestIsValidMalFormattedServiceFile(t *testing.T) {
_, err := IsValid("./tests/service-file-mal-formatted")
require.NotNil(t, err)
require.Error(t, err)
}

0 comments on commit ea64cae

Please sign in to comment.