Skip to content
Snippets Groups Projects
Select Git revision
  • a3051c82d36edf5ba2c1376ecfa75824b24f1f6e
  • master default protected
  • add-frequency-to-form
  • dev protected
  • ckan-2.11.0
  • add-package-custom-fields
  • fix-adding-datasets-for-users-and-editors
  • add-auth-subroute
  • 71-migrate-custom-fields-to-ckanext-scheming
  • add-author-maintainer-information
  • fix-inline-flex-btns
  • fix-known-spatial-uri-validation
  • py3
  • 47-aktuelle-resource-einer-collection-wird-nicht-mehr-gefunden
  • 10-eingabe-der-dct-accrualperiodicity-in-weboberflache
  • v1.3
  • 2.5.3
  • 2.5.2
  • 2.5.1
  • 2.5.0
  • 2.4.7
  • 2.4.6
  • 2.4.5
  • 2.4.4
  • 2.4.3
  • 2.4.2
  • 2.4.1
  • 2.4.0
  • 2.3.1
  • 2.3.0
  • 2.2.0
  • 2.1.0
  • 2.0.0
  • 1.4.3
  • 1.4.2
  • 1.4.1
36 results

validation.py

Blame
  • grpc_server_test.go 3.72 KiB
    /*
     * Copyright (C) 2023-2024
     * Das Land Schleswig-Holstein vertreten durch den
     * Ministerpräsidenten des Landes Schleswig-Holstein
     * Staatskanzlei
     * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
     *
     * Lizenziert unter der EUPL, Version 1.2 oder - sobald
     * diese von der Europäischen Kommission genehmigt wurden -
     * Folgeversionen der EUPL ("Lizenz");
     * Sie dürfen dieses Werk ausschließlich gemäß
     * dieser Lizenz nutzen.
     * Eine Kopie der Lizenz finden Sie hier:
     *
     * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
     *
     * Sofern nicht durch anwendbare Rechtsvorschriften
     * gefordert oder in schriftlicher Form vereinbart, wird
     * die unter der Lizenz verbreitete Software "so wie sie
     * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN -
     * ausdrücklich oder stillschweigend - verbreitet.
     * Die sprachspezifischen Genehmigungen und Beschränkungen
     * unter der Lizenz sind dem Lizenztext zu entnehmen.
     */
    
    package mock
    
    import (
    	"context"
    	pb "fachstellen-proxy/gen/go"
    	"fmt"
    	"github.com/stretchr/testify/assert"
    	"google.golang.org/grpc"
    	"google.golang.org/grpc/credentials/insecure"
    	"net"
    	"testing"
    	"time"
    )
    
    func TestStartGrpcServer(t *testing.T) {
    	t.Run("should start gRPC server", func(t *testing.T) {
    		SetUpGrpcServer()
    
    		conn, err := net.DialTimeout("tcp", fmt.Sprintf("localhost:%d", GrpcMockPort), 2*time.Second)
    
    		assert.NoError(t, err)
    
    		conn.Close()
    	})
    
    	t.Run("TestFachstelleRegistrationEndpoints", func(t *testing.T) {
    		setUpGrpcEnv := func() (pb.FachstelleRegistrationServiceClient, func()) {
    			SetUpGrpcServer()
    
    			conn, err := grpc.NewClient(fmt.Sprintf("localhost:%d", GrpcMockPort), grpc.WithTransportCredentials(insecure.NewCredentials()))
    			assert.NoError(t, err)
    
    			cleanUp := func() {
    				conn.Close()
    			}
    			client := pb.NewFachstelleRegistrationServiceClient(conn)
    
    			return client, cleanUp
    		}
    
    		t.Run("should have no error", func(t *testing.T) {
    			client, cleanUp := setUpGrpcEnv()
    			defer cleanUp()
    
    			resp, err := client.Register(context.Background(), &pb.GrpcFachstelleRegistrationRequest{Fachstelle: &pb.GrpcFachstelle{MukId: "testMukId"}})
    
    			assert.NoError(t, err)
    			assert.NotNil(t, resp)
    		})
    
    		t.Run("should have error", func(t *testing.T) {
    			client, cleanUp := setUpGrpcEnv()
    			defer cleanUp()
    
    			resp, err := client.Register(context.Background(), &pb.GrpcFachstelleRegistrationRequest{})
    
    			assert.Error(t, err)
    			assert.Nil(t, resp)
    		})
    	})
    
    	t.Run("TestCollaborationEndpoints", func(t *testing.T) {
    		setUpGrpcEnv := func() (pb.CollaborationServiceClient, func()) {
    			SetUpGrpcServer()
    
    			conn, err := grpc.NewClient(fmt.Sprintf("localhost:%d", GrpcMockPort), grpc.WithTransportCredentials(insecure.NewCredentials()))
    			assert.NoError(t, err)
    
    			cleanup := func() {
    				conn.Close()
    			}
    			client := pb.NewCollaborationServiceClient(conn)
    
    			return client, cleanup
    		}
    
    		t.Run("TestFindVorgang", func(t *testing.T) {
    			t.Run("should have no error", func(t *testing.T) {
    				client, cleanUp := setUpGrpcEnv()
    				defer cleanUp()
    
    				resp, err := client.FindVorgang(context.Background(), &pb.GrpcFindVorgangRequest{VorgangId: "testVorgangId", SamlToken: "testSamlToken"})
    
    				assert.NoError(t, err)
    				assert.NotNil(t, resp)
    			})
    
    			t.Run("should have error", func(t *testing.T) {
    				client, cleanUp := setUpGrpcEnv()
    				defer cleanUp()
    
    				resp, err := client.FindVorgang(context.Background(), &pb.GrpcFindVorgangRequest{})
    
    				assert.Error(t, err)
    				assert.Nil(t, resp)
    			})
    		})
    
    		t.Run("TestGetFileContent", func(t *testing.T) {
    			client, cleanUp := setUpGrpcEnv()
    			defer cleanUp()
    
    			resp, err := client.GetFileContent(context.Background(), &pb.GrpcGetFileContentRequest{})
    
    			assert.NoError(t, err)
    			assert.NotNil(t, resp)
    		})
    	})
    }