public void Generate_KeyCode_From_Url() { var cacheMock = new Mock <IDataCache>(); var RepoMock = new Mock <IRepository>(); RepoMock.Setup(x => x.Add(It.IsAny <TopLevelModel>())).Returns(new TopLevelModel() { Id = 1 }); var urlExecutor = new SingleLayer(cacheMock.Object, RepoMock.Object); urlExecutor.SetUrl("https://tabish.com/first%2FSecond"); var result = urlExecutor.GetShortUrl(); result.ShouldNotBeNullOrEmpty(); result.ShouldBe("b"); }