这是indexloc提供的服务,不要输入任何密码
Skip to content

hemaltandel1/TinyURL

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TinyURL

TinyURL is a straightforward URL shortening service developed using .NET 8 and adhering to principles of Clean Architecture, Domain Driven Design (DDD), and Test Driven Development (TDD). This project enables users to create shortened URLs, retrieve original URLs, delete shortened URLs, and monitor usage statistics.

Prerequisites

  • .NET 8
  • Visual Studio 2022 (Optional)

Getting Started

Running the Application from Visual Studio 2022

  1. Open the Solution File:

    • Open the solution file TinyURL.sln in Visual Studio 2022.
  2. Set the Startup Project:

    • In the Solution Explorer, right-click on the TinyURL.Presentation project and select Set as Startup Project.
  3. Run the Project:

    • Press F5 or click the Run button to start the application.

Using .NET CLI

  1. Open the CLI
  2. Go to directory: ...\TinyURL\src\TinyURL.Presentation
  3. Run command: dotnet run

Running xUnit Tests Using Visual Studio

The unit tests for this project are located in the TinyURL\tests\TinyURL.Presentation.UnitTests directory. Follow the steps below to run these tests using Visual Studio 2022:

1. Open the Solution File

  • Open the solution file TinyURL.sln in Visual Studio 2022.

2. Open Test Explorer

  • Go to Test > Test Explorer from the menu to open the Test Explorer window.

4. Run the Tests

  • In the Test Explorer, you should see a list of all the tests available in the solution, including those under TinyURL.Presentation.UnitTests.
  • To run all the tests, click the Run All button at the top of the Test Explorer window.
  • Alternatively, you can run specific tests by selecting them and clicking Run Selected Tests.

Project Structure

  • TinyURL.Presentation: The console application that provides the CLI interface for interacting with the URL shortening service.
  • TinyURL.Application: Contains the use cases of the application.
  • TinyURL.Domain: Contains the core logic and business rules of the application.
  • TinyURL.Infrastructure: Provides implementations for data storage and other infrastructure-related concerns.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages