lib/raykit/dotnet.rb



module Raykit
    class DotNet
        # initialize a C# library

        def self.initialize_csharp_lib(name)
            if(!Dir.exists?(name)) 
                FileUtils.mkdir(name)
                Dir.chdir(name) do
                    puts `dotnet new classlib -lang C#`
                end
                puts `dotnet new sln`
                puts `dotnet sln #{name}.sln add #{name}/#{name}.csproj`
        
                FileUtils.mkdir("#{name}.Test")if(!Dir.exist?("#{name}.Test"))
                Dir.chdir("#{name}.Test") do
                    puts `dotnet new nunit -lang C#`
                    puts `dotnet add reference ../#{name}/#{name}.csproj`
                end

                puts `dotnet sln #{name}.sln add #{name}.Test/#{name}.Test.csproj`
            end
        end

        # initialize a C# console application

        def self.initialize_csharp_console(name)
            if(!Dir.exists?(name)) 
                FileUtils.mkdir(name)
                Dir.chdir(name) do
                    puts `dotnet new console -lang C#`
                end
                puts `dotnet new sln`
                puts `dotnet sln #{name}.sln add #{name}/#{name}.csproj`
        
                FileUtils.mkdir("#{name}.Test")if(!Dir.exist?("#{name}.Test"))
                Dir.chdir("#{name}.Test") do
                    puts `dotnet new nunit -lang C#`
                    puts `dotnet add reference ../#{name}/#{name}.csproj`
                end

                puts `dotnet sln #{name}.sln add #{name}.Test/#{name}.Test.csproj`
            end
        end
    end
end