sync R3 content from Azure 65/1365/1
authorss412g <shuky.har-noy@intl.att.com>
Tue, 5 Nov 2019 14:24:51 +0000 (16:24 +0200)
committerss412g <shuky.har-noy@intl.att.com>
Tue, 5 Nov 2019 14:25:12 +0000 (16:25 +0200)
Change-Id: I17a1c67c0790649688f2fb319e0750a33e74fef3
Signed-off-by: ss412g <shuky.har-noy@intl.att.com>
.gitreview
RSM/app/main.go
RSM/controllers/root_controller_test.go
RSM/go.mod
RSM/go.sum
RSM/managers/resource_status_initiate_manager_test.go
RSM/rmrcgo/rmr_c_go_api_test.go
RSM/services/rnib_data_service.go
RSM/services/rnib_data_service_test.go
RSM/tests/testhelper/test_utils.go

index d1af4d0..551629e 100644 (file)
@@ -2,3 +2,4 @@
 host=gerrit.o-ran-sc.org
 port=29418
 project=ric-plt/resource-status-manager.git
+defaultbranch=PI3
\ No newline at end of file
index 27333f3..09a7356 100644 (file)
@@ -20,6 +20,7 @@ package main
 import (
        "fmt"
        "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/reader"
+       "gerrit.o-ran-sc.org/r/ric-plt/sdlgo"
        "os"
        "rsm/configuration"
        "rsm/controllers"
@@ -49,10 +50,11 @@ func main() {
                fmt.Printf("#app.main - failed to initialize logger, error: %s", err)
                os.Exit(1)
        }
-       reader.Init("e2Manager", MaxRnibPoolInstances)
+       db := sdlgo.NewDatabase()
+       sdl := sdlgo.NewSdlInstance("e2Manager", db)
+       defer sdl.Close()
        logger.Infof("#app.main - Configuration %s", config)
-       defer reader.Close()
-       rnibDataService := services.NewRnibDataService(logger, config, reader.GetRNibReader)
+       rnibDataService := services.NewRnibDataService(logger, config, reader.GetRNibReader(sdl))
        var msgImpl *rmrcgo.Context
        rmrMessenger := msgImpl.Init(config.Rmr.ReadyIntervalSec, "tcp:"+strconv.Itoa(config.Rmr.Port), config.Rmr.MaxMsgSize, 0, logger)
        rmrSender := rmrsender.NewRmrSender(logger, rmrMessenger)
index e546260..5cda9c2 100644 (file)
@@ -21,7 +21,6 @@ import (
        "fmt"
        "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/common"
        "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/entities"
-       "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/reader"
        "github.com/stretchr/testify/assert"
        "net"
        "net/http"
@@ -43,10 +42,8 @@ func setupRootControllerTest(t *testing.T) (services.RNibDataService, *mocks.Rni
                t.Errorf("#... - failed to parse configuration error: %s", err)
        }
        readerMock := &mocks.RnibReaderMock{}
-       rnibReaderProvider := func() reader.RNibReader {
-               return readerMock
-       }
-       rnibDataService := services.NewRnibDataService(logger, config, rnibReaderProvider)
+
+       rnibDataService := services.NewRnibDataService(logger, config, readerMock)
        return rnibDataService, readerMock
 }
 
index 4815afb..fe496a1 100644 (file)
@@ -2,19 +2,18 @@ module rsm
 
 require (
        cloud.google.com/go v0.46.3 // indirect
-       gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/common v1.0.23
-       gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/entities v1.0.23
-       gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/reader v1.0.23
-       gerrit.o-ran-sc.org/r/ric-plt/sdlgo v0.3.1
+       gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/common v1.0.24
+       gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/entities v1.0.24
+       gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/reader v1.0.24
+       gerrit.o-ran-sc.org/r/ric-plt/sdlgo v0.5.0
        github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d // indirect
        github.com/asaskevich/govalidator v0.0.0-20190424111038-f61b66f89f4a // indirect
        github.com/coreos/bbolt v1.3.3 // indirect
        github.com/coreos/etcd v3.3.15+incompatible // indirect
        github.com/coreos/go-semver v0.3.0 // indirect
        github.com/coreos/go-systemd v0.0.0-20190719114852-fd7a80b32e1f // indirect
-       github.com/go-ozzo/ozzo-validation v3.5.0+incompatible
+       github.com/go-ozzo/ozzo-validation v3.5.0+incompatible // indirect
        github.com/gogo/protobuf v1.3.0 // indirect
-       github.com/golang/protobuf v1.3.2
        github.com/google/go-cmp v0.3.1 // indirect
        github.com/google/pprof v0.0.0-20190908185732-236ed259b199 // indirect
        github.com/google/uuid v1.1.1 // indirect
@@ -59,4 +58,4 @@ require (
        gopkg.in/yaml.v2 v2.2.2
 )
 
-replace gerrit.o-ran-sc.org/r/ric-plt/sdlgo => gerrit.o-ran-sc.org/r/ric-plt/sdlgo.git v0.3.1
+replace gerrit.o-ran-sc.org/r/ric-plt/sdlgo => gerrit.o-ran-sc.org/r/ric-plt/sdlgo.git v0.5.0
index bc4bc33..cb1b235 100644 (file)
@@ -12,12 +12,20 @@ cloud.google.com/go/pubsub v1.0.1/go.mod h1:R0Gpsv3s54REJCy4fxDixWD93lHJMoZTyQ2k
 dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU=
 gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/common v1.0.23 h1:JbSOhvj9fVEUF2XZg8cw5QAyeKUi5xXgpwXrrxfDgLM=
 gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/common v1.0.23/go.mod h1:QJ1uPPZosGbhxUWpUpeM5fLqFHdnWTrVnvW2DgyOCes=
+gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/common v1.0.24 h1:tW817tat6fSSK7NuFKEDHSoSsO3z8kr7QORfbn1Hpuc=
+gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/common v1.0.24/go.mod h1:QJ1uPPZosGbhxUWpUpeM5fLqFHdnWTrVnvW2DgyOCes=
 gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/entities v1.0.23 h1:akVZc8NWJ9oPujd7cQY3Ti3se4PF1/NoC+Dwt+YzINc=
 gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/entities v1.0.23/go.mod h1:GXiXLz4ORBeIr0FLIbzENRykgh3Po5uPkX2jICxnRF0=
+gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/entities v1.0.24 h1:5ZnhEUygvN5PuTXS2bNt6KavT+Wtuh9Vra+EqZIvw+Q=
+gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/entities v1.0.24/go.mod h1:GXiXLz4ORBeIr0FLIbzENRykgh3Po5uPkX2jICxnRF0=
 gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/reader v1.0.23 h1:TYV3HE2UNwGOWiA4C226/WhB94crwjuHKIFTgDDvo8I=
 gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/reader v1.0.23/go.mod h1:uZVjwZjfWV4JJzyQVO/O48Ykph57zfpfMB7nK+WGKX8=
+gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/reader v1.0.24 h1:Wwp36IoHwp091lXVCYLtFK6AMhoGAR4NYEgW1C42h6k=
+gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/reader v1.0.24/go.mod h1:Qi0e0BsGtsMdyJQS0PBtvHBDKEimjtDjQtVUxGZqTtM=
 gerrit.o-ran-sc.org/r/ric-plt/sdlgo.git v0.3.1 h1:ZIhABs0WLMn8lp1Y3719315/3jbV+yLcovOGScL03eM=
 gerrit.o-ran-sc.org/r/ric-plt/sdlgo.git v0.3.1/go.mod h1:y2WhrCvdLkAKdH+ySdHSOSehACJkTMyZghCGVcqoZzc=
+gerrit.o-ran-sc.org/r/ric-plt/sdlgo.git v0.5.0 h1:+P3XuWKSaMbzh5PNtrW9gkZlCN0hKrZq+Cn8JetwBys=
+gerrit.o-ran-sc.org/r/ric-plt/sdlgo.git v0.5.0/go.mod h1:y2WhrCvdLkAKdH+ySdHSOSehACJkTMyZghCGVcqoZzc=
 github.com/Azure/go-ansiterm v0.0.0-20170929234023-d6e3b3328b78/go.mod h1:LmzpDX56iTiv29bbRTIsUNlaFfuhWRQBWjQdVyAevI8=
 github.com/BurntSushi/toml v0.3.1 h1:WXkYYl6Yr3qBf1K79EBnL4mak0OimBfB0XUf9Vl28OQ=
 github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
index a8cea62..fc134a0 100644 (file)
@@ -3,7 +3,6 @@ package managers
 import (
        "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/common"
        "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/entities"
-       "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/reader"
        "github.com/pkg/errors"
        "github.com/stretchr/testify/assert"
        "rsm/configuration"
@@ -36,14 +35,11 @@ func initResourceStatusInitiateManagerTest(t *testing.T) (*mocks.RmrMessengerMoc
        rmrSender := testhelper.InitRmrSender(rmrMessengerMock, logger)
 
        readerMock := &mocks.RnibReaderMock{}
-       rnibReaderProvider := func() reader.RNibReader {
-               return readerMock
-       }
 
        resourceStatusRequestData := &e2pdus.ResourceStatusRequestData{}
        populateResourceStatusInitiateRequestParams(resourceStatusRequestData, config)
 
-       rnibDataService := services.NewRnibDataService(logger, config, rnibReaderProvider)
+       rnibDataService := services.NewRnibDataService(logger, config, readerMock)
        resourceStatusInitiateManager := NewResourceStatusInitiateManager(logger, rnibDataService, rmrSender)
        return rmrMessengerMock, readerMock, resourceStatusRequestData, resourceStatusInitiateManager
 }
index b7bb627..7704636 100644 (file)
@@ -26,7 +26,6 @@ import (
        "rsm/tests"
        "strconv"
        "testing"
-       "time"
 )
 
 var (
@@ -52,27 +51,11 @@ func TestNewMBufSuccess(t *testing.T) {
        assert.Equal(t, msg.Meid, "RanName")
        assert.Equal(t, msg.Len, len(tests.DummyPayload))
 }
-//TODO check why test failure and TestIsReadySuccess success
-func TestInitFailure(t *testing.T) {
-       log := initLog(t)
-       go initRmr(tests.ReadyIntervalSec, tests.GetPort(), tests.MaxMsgSize, tests.Flags, log)
-       time.Sleep(time.Second)
-       if msgr != nil {
-               t.Errorf("The rmr router is ready, should be not ready")
-       }
-}
-
-func TestIsReadyFailure(t *testing.T) {
-       log := initLog(t)
-       go initRmr(tests.ReadyIntervalSec, tests.GetPort(), tests.MaxMsgSize, tests.Flags, log)
-       assert.True(t, msgr == nil || !msgr.IsReady())
-}
 
 func TestSendRecvMsgSuccess(t *testing.T) {
        log := initLog(t)
 
-       go initRmr(tests.ReadyIntervalSec, tests.GetPort(), tests.MaxMsgSize, tests.Flags, log)
-       time.Sleep(time.Duration(2) * time.Second)
+       initRmr(tests.ReadyIntervalSec, tests.GetPort(), tests.MaxMsgSize, tests.Flags, log)
        if msgr == nil || !msgr.IsReady()  {
                t.Errorf("#rmr_c_go_api_test.TestSendRecvMsgSuccess - The rmr router is not ready")
        }
@@ -94,8 +77,7 @@ func TestSendRecvMsgSuccess(t *testing.T) {
 func TestSendMsgRmrInvalidPortError(t *testing.T) {
        log := initLog(t)
 
-       go initRmr(tests.ReadyIntervalSec, "tcp:" + strconv.Itoa(5555), tests.MaxMsgSize, tests.Flags, log)
-       time.Sleep(time.Duration(2) * time.Second)
+       initRmr(tests.ReadyIntervalSec, "tcp:" + strconv.Itoa(5555), tests.MaxMsgSize, tests.Flags, log)
        if msgr == nil || !msgr.IsReady()  {
                t.Errorf("#rmr_c_go_api_test.TestSendMsgRmrInvalidPortError - The rmr router is not ready")
        }
@@ -113,8 +95,7 @@ func TestSendMsgRmrInvalidPortError(t *testing.T) {
 func TestSendMsgRmrInvalidMsgNumError(t *testing.T) {
        log := initLog(t)
 
-       go initRmr(tests.ReadyIntervalSec, tests.GetPort(), tests.MaxMsgSize, tests.Flags, log)
-       time.Sleep(time.Duration(2) * time.Second)
+       initRmr(tests.ReadyIntervalSec, tests.GetPort(), tests.MaxMsgSize, tests.Flags, log)
        if msgr == nil || !msgr.IsReady()  {
                t.Errorf("#rmr_c_go_api_test.TestSendMsgRmrInvalidMsgNumError - The rmr router is not ready")
        }
@@ -132,11 +113,12 @@ func TestSendMsgRmrInvalidMsgNumError(t *testing.T) {
 func TestIsReadySuccess(t *testing.T) {
        log := initLog(t)
 
-       go initRmr(tests.ReadyIntervalSec, tests.GetPort(), tests.MaxMsgSize, tests.Flags, log)
-       time.Sleep(time.Duration(tests.ReadyIntervalSec))
+       initRmr(tests.ReadyIntervalSec, tests.GetPort(), tests.MaxMsgSize, tests.Flags, log)
        if msgr == nil || !msgr.IsReady()  {
                t.Errorf("#rmr_c_go_api_test.TestIsReadySuccess - The rmr router is not ready")
        }
+
+       msgr.Close()
 }
 
 func initRmr(readyIntervalSec int, port string, maxMsgSize int, flags int, log *logger.Logger){
index c5bfcda..f2db2a8 100644 (file)
@@ -35,15 +35,15 @@ type RNibDataService interface {
 
 type rNibDataService struct {
        logger             *logger.Logger
-       rnibReaderProvider func() reader.RNibReader
+       rnibReader         reader.RNibReader
        maxAttempts        int
        retryInterval      time.Duration
 }
 
-func NewRnibDataService(logger *logger.Logger, config *configuration.Configuration, rnibReaderProvider func() reader.RNibReader) *rNibDataService {
+func NewRnibDataService(logger *logger.Logger, config *configuration.Configuration, rnibReader reader.RNibReader) *rNibDataService {
        return &rNibDataService{
                logger:             logger,
-               rnibReaderProvider: rnibReaderProvider,
+               rnibReader:         rnibReader,
                maxAttempts:        config.Rnib.MaxRnibConnectionAttempts,
                retryInterval:      time.Duration(config.Rnib.RnibRetryIntervalMs) * time.Millisecond,
        }
@@ -55,7 +55,7 @@ func (w *rNibDataService) GetNodeb(ranName string) (*entities.NodebInfo, error)
        var nodeb *entities.NodebInfo = nil
 
        err := w.retry("GetNodeb", func() (err error) {
-               nodeb, err = w.rnibReaderProvider().GetNodeb(ranName)
+               nodeb, err = w.rnibReader.GetNodeb(ranName)
                return
        })
 
@@ -68,7 +68,7 @@ func (w *rNibDataService) GetListNodebIds() ([]*entities.NbIdentity, error) {
        var nodeIds []*entities.NbIdentity = nil
 
        err := w.retry("GetListNodebIds", func() (err error) {
-               nodeIds, err = w.rnibReaderProvider().GetListNodebIds()
+               nodeIds, err = w.rnibReader.GetListNodebIds()
                return
        })
 
@@ -77,7 +77,7 @@ func (w *rNibDataService) GetListNodebIds() ([]*entities.NbIdentity, error) {
 
 func (w *rNibDataService) PingRnib() bool {
        err := w.retry("GetListNodebIds", func() (err error) {
-               _, err = w.rnibReaderProvider().GetListNodebIds()
+               _, err = w.rnibReader.GetListNodebIds()
                return
        })
 
index ba0e970..2dbea7c 100644 (file)
@@ -21,7 +21,6 @@ import (
        "fmt"
        "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/common"
        "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/entities"
-       "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/reader"
        "github.com/stretchr/testify/assert"
        "net"
        "rsm/configuration"
@@ -48,11 +47,8 @@ func setupRnibDataServiceTestWithMaxAttempts(t *testing.T, maxAttempts int) (*rN
        config.Rnib.MaxRnibConnectionAttempts = maxAttempts
 
        readerMock := &mocks.RnibReaderMock{}
-       rnibReaderProvider := func() reader.RNibReader {
-               return readerMock
-       }
 
-       rnibDataService := NewRnibDataService(logger, config, rnibReaderProvider)
+       rnibDataService := NewRnibDataService(logger, config, readerMock)
        assert.NotNil(t, rnibDataService)
 
        return rnibDataService, readerMock
index 0b6b6ea..d14b389 100644 (file)
@@ -18,7 +18,6 @@
 package testhelper
 
 import (
-       "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/reader"
        "rsm/configuration"
        "rsm/logger"
        "rsm/mocks"
@@ -51,11 +50,8 @@ func InitTestCase(t *testing.T) (services.RNibDataService, *rmrsender.RmrSender,
        }
 
        readerMock := &mocks.RnibReaderMock{}
-       rnibReaderProvider := func() reader.RNibReader {
-               return readerMock
-       }
 
        rmrSender := InitRmrSender(&mocks.RmrMessengerMock{}, logger)
-       rnibDataService := services.NewRnibDataService(logger, config, rnibReaderProvider)
+       rnibDataService := services.NewRnibDataService(logger, config, readerMock)
        return rnibDataService, rmrSender, logger
 }