<commit_before>skip_commits:
  files:
    - README.md
version: $(frameworkVersion).{build}
branches:
  except:
  - gh-pages
configuration: Release
init:
 - ps: >-
      if ($env:APPVEYOR_REPO_TAG -eq "true")
      {
      
        Update-AppveyorBuild -Version "$env:APPVEYOR_REPO_TAG_NAME.$env:APPVEYOR_BUILD_NUMBER"
        
        $env:frameworkVersion = "$env:APPVEYOR_REPO_TAG_NAME" 
        
      }
      
      echo 'frameworkVersion'  $env:frameworkVersion
      
      echo 'version' $env:appveyor_build_version 
      
      iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))

assembly_info:
  patch: true
  file: '**\AssemblyInfo.*'
  assembly_version: $(frameworkVersion)
  assembly_file_version: '{version}'
  assembly_informational_version: $(frameworkVersion)
environment:
  APPVEYOR_RDP_PASSWORD:
    secure: <KEY>
  frameworkVersion: 3.1.0
  GithubAuthToken:
    secure: <KEY>
  COVERALLS_REPO_TOKEN:
    secure: ast5HH2v0jAME1tKDxPMw3TExnMxNp1+wXBea5zIzGNaKBm8ojTzv6YB03eQtEi+
before_build:
- cmd: >-
    nuget restore

build:
  project: TestFramework.sln
  verbosity: minimal
after_build:
 - ps: >-
      echo '********************************************Creating nuget packages********************************************'
      
      Copy-Item .\.nuspec\Objectivity.Test.Automation.Nunit.nuspec .\\Objectivity.Test.Automation.Common\\Objectivity.Test.Automation.Common.nuspec
      
      nuget pack .\Objectivity.Test.Automation.Common\Objectivity.Test.Automation.Common.csproj -symbols -properties Configuration=Release
      
      Copy-Item .\.nuspec\Objectivity.Test.Automation.MsTest.nuspec .\\Objectivity.Test.Automation.Common\\Objectivity.Test.Automation.Common.nuspec
      
      nuget pack .\Objectivity.Test.Automation.Common\Objectivity.Test.Automation.Common.csproj -symbols -properties Configuration=Release
      
      Copy-Item .\.nuspec\Objectivity.Test.Automation.MsTest.nuspec .\\Objectivity.Test.Automation.Common\\Objectivity.Test.Automation.Common.nuspec
      
      nuget pack .\Objectivity.Test.Automation.Common\Objectivity.Test.Automation.Common.csproj -symbols -properties Configuration=Release
      
      Copy-Item .\.nuspec\Objectivity.Test.Automation.Features.nuspec .\\Objectivity.Test.Automation.Common\\Objectivity.Test.Automation.Common.nuspec
      
      nuget pack .\Objectivity.Test.Automation.Common\Objectivity.Test.Automation.Common.csproj -symbols -properties Configuration=Release
      
      Copy-Item .\.nuspec\Objectivity.Test.Automation.Xunit.nuspec .\\Objectivity.Test.Automation.Common\\Objectivity.Test.Automation.Common.nuspec
      
      nuget pack .\Objectivity.Test.Automation.Common\Objectivity.Test.Automation.Common.csproj -symbols -properties Configuration=Release
      
      echo '********************************************Copying files for gh-pages********************************************'
      
      Copy-Item -Path .\README.md -Destination .\Objectivity.Test.Automation.Common.Documentation\Help\ -recurse -force -verbose 
      
      Copy-Item -Path .\Objectivity.Test.Automation.Common.Documentation\icons\Objectivity_logo_avatar.png -Destination .\Objectivity.Test.Automation.Common.Documentation\Help\Objectivity.Test.Automation.Common.Documentation\icons\ -recurse -force -verbose
      
      Copy-Item -Path .\Objectivity.Test.Automation.Common.Documentation\icons\Help.png -Destination .\Objectivity.Test.Automation.Common.Documentation\Help\Objectivity.Test.Automation.Common.Documentation\icons\ -recurse -force -verbose
      
      if ($env:APPVEYOR_REPO_TAG -eq "true")
      {
        echo '********************************************Cloning gh-pages branch********************************************'
      
        Invoke-Expression "git config --global credential.helper store"
        
        Add-Content "$env:USERPROFILE\.git-credentials" "https://$($env:GithubAuthToken):x-oauth-basic@github.com`n"
        
        Invoke-Expression "git config --global core.autocrlf true"
        
        Invoke-Expression "git config --global user.email '<EMAIL>'"
        
        Invoke-Expression "git config --global user.name 'TestAutomationGroup'"
        
        Invoke-Expression "git clone https://github.com/ObjectivityLtd/Test.Automation.git --branch gh-pages .\Help"
        
        Remove-Item -recurse .\Help\* -exclude .git
        
      } else
      {
      
        New-Item -ItemType Directory -Force -Path .\Help
        
      }
      
      Copy-Item -Path .\Objectivity.Test.Automation.Common.Documentation\Help\** -Destination .\Help\ -recurse -force
     
      if ($env:APPVEYOR_REPO_TAG -eq "true")
      {
        echo '********************************************Publishing new version of gh-pages********************************************'
        
        cd .\\Help 
        
        Invoke-Expression "git add --all"
        
        Invoke-Expression "git commit -m 'Publishing to gh-pages $env:appveyor_build_version'"
        
        Invoke-Expression "git push origin gh-pages --porcelain"
        
        cd ..
        
        Remove-Item .\\Help\\.git -Force  -Recurse -ErrorAction SilentlyContinue
        
      }
      
      7z a gh-pages_$env:appveyor_build_version.zip .\\Help\\** 
      
      appveyor PushArtifact gh-pages_$env:appveyor_build_version.zip
test_script:
- ps: >-
    echo '********************************************Executing tests********************************************'

    $OpenCover = (Resolve-Path ".\packages\OpenCover.*\tools\OpenCover.Console.exe").ToString()
    
    echo '********************************************XUnit tests********************************************'
    
    $xunit = (Resolve-Path ".\packages\xunit.runner.console.*\tools\xunit.console.exe").ToString()
    
    & $OpenCover -target:"$xunit" -mergeoutput -targetargs:".\Objectivity.Test.Automation.Tests.Xunit\bin\Release\Objectivity.Test.Automation.Tests.Xunit.dll -appveyor -noshadow" -filter:"+[Objectivity.Test.Automation.Common]*" -register:user -output:opencoverCoverage.xml


    if($lastexitcode -ne 0)
      {
       echo $lastexitcode
      }

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.Xunit\bin\Release\**\*.png

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.Xunit\bin\Release\**\*.html

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.Xunit\bin\Release\*.log
    
    echo '********************************************NUnit tests********************************************'
    
    & $OpenCover -target:nunit3-console.exe -mergeoutput -targetargs:".\Objectivity.Test.Automation.Tests.NUnit\bin\Release\Objectivity.Test.Automation.Tests.NUnit.dll .\Objectivity.Test.Automation.Tests.Angular\bin\Release\Objectivity.Test.Automation.Tests.Angular.dll .\Objectivity.Test.Automation.Tests.Features\bin\Release\Objectivity.Test.Automation.Tests.Features.dll .\Objectivity.Test.Automation.UnitTests\bin\Release\Objectivity.Test.Automation.UnitTests.dll --result=myresults.xml`;format=AppVeyor" -filter:"+[Objectivity.Test.Automation.Common]*" -register:user -output:opencoverCoverage.xml



    if($lastexitcode -ne 0)
      {
       echo $lastexitcode
      }

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.NUnit\bin\Release\**\*.png

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.NUnit\bin\Release\**\*.html

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.NUnit\bin\Release\*.log


    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.Angular\bin\Release\**\*.png

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.Angular\bin\Release\**\*.html

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.Angular\bin\Release\*.log


    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.Features\bin\Release\**\*.png

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.Features\bin\Release\**\*.html

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.Features\bin\Release\*.log


    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.UnitTests\bin\Release\**\*.png

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.UnitTests\bin\Release\**\*.html

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.UnitTests\bin\Release\*.log

    echo '********************************************MSTest tests********************************************'

    & $OpenCover -target:vstest.console.exe -mergeoutput -targetargs:"/logger`:Appveyor .\Objectivity.Test.Automation.Tests.MSTest\bin\Release\Objectivity.Test.Automation.Tests.MsTest.dll /Settings`:.\Objectivity.Test.Automation.Tests.MSTest\bin\Release\Runsettings.runsettings" -filter:"+[Objectivity.Test.Automation.Common]*" -register:user -output:opencoverCoverage.xml


    if($lastexitcode -ne 0)
      {
       echo $lastexitcode
      }

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.MSTest\bin\Release\**\*.png

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.MSTest\bin\Release\**\*.html

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.MSTest\bin\Release\*.log
    
    echo '********************************************Sending coverage test results********************************************'
    
    $coveralls = (Resolve-Path ".\packages\coveralls.net.*\tools\csmacnz.coveralls.exe").ToString()
    
    & $coveralls --opencover -i opencoverCoverage.xml --repoToken $env:COVERALLS_REPO_TOKEN --useRelativePaths --commitId $env:APPVEYOR_REPO_COMMIT --commitBranch $env:APPVEYOR_REPO_BRANCH --commitAuthor $env:APPVEYOR_REPO_COMMIT_AUTHOR --commitEmail $env:APPVEYOR_REPO_COMMIT_AUTHOR_EMAIL --commitMessage $env:APPVEYOR_REPO_COMMIT_MESSAGE --jobId $env:APPVEYOR_BUILD_NUMBER --serviceName appveyor


    appveyor PushArtifact  opencoverCoverage.xml

    echo '********************************************Uploading test results artifact********************************************'
    
    appveyor PushArtifact testresults_$env:appveyor_build_version.zip
artifacts:
- path: .\Objectivity.Test.Automation.Common.*.nupkg
  name: NuGet
deploy:
- provider: NuGet
  api_key:
    secure: <KEY>
  on:
    branch: master
    appveyor_repo_tag: true
<commit_msg>Fixed small build issue<commit_after>skip_commits:
  files:
    - README.md
version: $(frameworkVersion).{build}
branches:
  except:
  - gh-pages
configuration: Release
init:
 - ps: >-
      if ($env:APPVEYOR_REPO_TAG -eq "true")
      {
      
        Update-AppveyorBuild -Version "$env:APPVEYOR_REPO_TAG_NAME.$env:APPVEYOR_BUILD_NUMBER"
        
        $env:frameworkVersion = "$env:APPVEYOR_REPO_TAG_NAME" 
        
      }
      
      echo 'frameworkVersion'  $env:frameworkVersion
      
      echo 'version' $env:appveyor_build_version 
      
      iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))

assembly_info:
  patch: true
  file: '**\AssemblyInfo.*'
  assembly_version: $(frameworkVersion)
  assembly_file_version: '{version}'
  assembly_informational_version: $(frameworkVersion)
environment:
  APPVEYOR_RDP_PASSWORD:
    secure: <KEY>
  frameworkVersion: 3.1.0
  GithubAuthToken:
    secure: <KEY>
  COVERALLS_REPO_TOKEN:
    secure: ast5HH2v0jAME1tKDxPMw3TExnMxNp1+wXBea5zIzGNaKBm8ojTzv6YB03eQtEi+
before_build:
- cmd: >-
    nuget restore

build:
  project: TestFramework.sln
  verbosity: minimal
after_build:
 - ps: >-
      echo '********************************************Creating nuget packages********************************************'
      
      Copy-Item .\.nuspec\Objectivity.Test.Automation.Nunit.nuspec .\\Objectivity.Test.Automation.Common\\Objectivity.Test.Automation.Common.nuspec
      
      nuget pack .\Objectivity.Test.Automation.Common\Objectivity.Test.Automation.Common.csproj -symbols -properties Configuration=Release
      
      Copy-Item .\.nuspec\Objectivity.Test.Automation.MsTest.nuspec .\\Objectivity.Test.Automation.Common\\Objectivity.Test.Automation.Common.nuspec
      
      nuget pack .\Objectivity.Test.Automation.Common\Objectivity.Test.Automation.Common.csproj -symbols -properties Configuration=Release
      
      Copy-Item .\.nuspec\Objectivity.Test.Automation.MsTest.nuspec .\\Objectivity.Test.Automation.Common\\Objectivity.Test.Automation.Common.nuspec
      
      nuget pack .\Objectivity.Test.Automation.Common\Objectivity.Test.Automation.Common.csproj -symbols -properties Configuration=Release
      
      Copy-Item .\.nuspec\Objectivity.Test.Automation.Features.nuspec .\\Objectivity.Test.Automation.Common\\Objectivity.Test.Automation.Common.nuspec
      
      nuget pack .\Objectivity.Test.Automation.Common\Objectivity.Test.Automation.Common.csproj -symbols -properties Configuration=Release
      
      Copy-Item .\.nuspec\Objectivity.Test.Automation.Xunit.nuspec .\\Objectivity.Test.Automation.Common\\Objectivity.Test.Automation.Common.nuspec
      
      nuget pack .\Objectivity.Test.Automation.Common\Objectivity.Test.Automation.Common.csproj -symbols -properties Configuration=Release
      
      echo '********************************************Copying files for gh-pages********************************************'
      
      Copy-Item -Path .\README.md -Destination .\Objectivity.Test.Automation.Common.Documentation\Help\ -recurse -force -verbose 
      
      New-Item .\Objectivity.Test.Automation.Common.Documentation\Help\Objectivity.Test.Automation.Common.Documentation\icons\ -Type Directory
      
      Copy-Item -Path .\Objectivity.Test.Automation.Common.Documentation\icons\Objectivity_logo_avatar.png -Destination .\Objectivity.Test.Automation.Common.Documentation\Help\Objectivity.Test.Automation.Common.Documentation\icons\ -recurse -force -verbose
      
      Copy-Item -Path .\Objectivity.Test.Automation.Common.Documentation\icons\Help.png -Destination .\Objectivity.Test.Automation.Common.Documentation\Help\Objectivity.Test.Automation.Common.Documentation\icons\ -recurse -force -verbose
      
      if ($env:APPVEYOR_REPO_TAG -eq "true")
      {
        echo '********************************************Cloning gh-pages branch********************************************'
      
        Invoke-Expression "git config --global credential.helper store"
        
        Add-Content "$env:USERPROFILE\.git-credentials" "https://$($env:GithubAuthToken):x-oauth-basic@github.com`n"
        
        Invoke-Expression "git config --global core.autocrlf true"
        
        Invoke-Expression "git config --global user.email '<EMAIL>'"
        
        Invoke-Expression "git config --global user.name 'TestAutomationGroup'"
        
        Invoke-Expression "git clone https://github.com/ObjectivityLtd/Test.Automation.git --branch gh-pages .\Help"
        
        Remove-Item -recurse .\Help\* -exclude .git
        
      } else
      {
      
        New-Item -ItemType Directory -Force -Path .\Help
        
      }
      
      Copy-Item -Path .\Objectivity.Test.Automation.Common.Documentation\Help\** -Destination .\Help\ -recurse -force
     
      if ($env:APPVEYOR_REPO_TAG -eq "true")
      {
        echo '********************************************Publishing new version of gh-pages********************************************'
        
        cd .\\Help 
        
        Invoke-Expression "git add --all"
        
        Invoke-Expression "git commit -m 'Publishing to gh-pages $env:appveyor_build_version'"
        
        Invoke-Expression "git push origin gh-pages --porcelain"
        
        cd ..
        
        Remove-Item .\\Help\\.git -Force  -Recurse -ErrorAction SilentlyContinue
        
      }
      
      7z a gh-pages_$env:appveyor_build_version.zip .\\Help\\** 
      
      appveyor PushArtifact gh-pages_$env:appveyor_build_version.zip
test_script:
- ps: >-
    echo '********************************************Executing tests********************************************'

    $OpenCover = (Resolve-Path ".\packages\OpenCover.*\tools\OpenCover.Console.exe").ToString()
    
    echo '********************************************XUnit tests********************************************'
    
    $xunit = (Resolve-Path ".\packages\xunit.runner.console.*\tools\xunit.console.exe").ToString()
    
    & $OpenCover -target:"$xunit" -mergeoutput -targetargs:".\Objectivity.Test.Automation.Tests.Xunit\bin\Release\Objectivity.Test.Automation.Tests.Xunit.dll -appveyor -noshadow" -filter:"+[Objectivity.Test.Automation.Common]*" -register:user -output:opencoverCoverage.xml


    if($lastexitcode -ne 0)
      {
       echo $lastexitcode
      }

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.Xunit\bin\Release\**\*.png

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.Xunit\bin\Release\**\*.html

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.Xunit\bin\Release\*.log
    
    echo '********************************************NUnit tests********************************************'
    
    & $OpenCover -target:nunit3-console.exe -mergeoutput -targetargs:".\Objectivity.Test.Automation.Tests.NUnit\bin\Release\Objectivity.Test.Automation.Tests.NUnit.dll .\Objectivity.Test.Automation.Tests.Angular\bin\Release\Objectivity.Test.Automation.Tests.Angular.dll .\Objectivity.Test.Automation.Tests.Features\bin\Release\Objectivity.Test.Automation.Tests.Features.dll .\Objectivity.Test.Automation.UnitTests\bin\Release\Objectivity.Test.Automation.UnitTests.dll --result=myresults.xml`;format=AppVeyor" -filter:"+[Objectivity.Test.Automation.Common]*" -register:user -output:opencoverCoverage.xml



    if($lastexitcode -ne 0)
      {
       echo $lastexitcode
      }

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.NUnit\bin\Release\**\*.png

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.NUnit\bin\Release\**\*.html

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.NUnit\bin\Release\*.log


    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.Angular\bin\Release\**\*.png

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.Angular\bin\Release\**\*.html

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.Angular\bin\Release\*.log


    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.Features\bin\Release\**\*.png

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.Features\bin\Release\**\*.html

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.Features\bin\Release\*.log


    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.UnitTests\bin\Release\**\*.png

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.UnitTests\bin\Release\**\*.html

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.UnitTests\bin\Release\*.log

    echo '********************************************MSTest tests********************************************'

    & $OpenCover -target:vstest.console.exe -mergeoutput -targetargs:"/logger`:Appveyor .\Objectivity.Test.Automation.Tests.MSTest\bin\Release\Objectivity.Test.Automation.Tests.MsTest.dll /Settings`:.\Objectivity.Test.Automation.Tests.MSTest\bin\Release\Runsettings.runsettings" -filter:"+[Objectivity.Test.Automation.Common]*" -register:user -output:opencoverCoverage.xml


    if($lastexitcode -ne 0)
      {
       echo $lastexitcode
      }

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.MSTest\bin\Release\**\*.png

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.MSTest\bin\Release\**\*.html

    7z a testresults_$env:appveyor_build_version.zip .\Objectivity.Test.Automation.Tests.MSTest\bin\Release\*.log
    
    echo '********************************************Sending coverage test results********************************************'
    
    $coveralls = (Resolve-Path ".\packages\coveralls.net.*\tools\csmacnz.coveralls.exe").ToString()
    
    & $coveralls --opencover -i opencoverCoverage.xml --repoToken $env:COVERALLS_REPO_TOKEN --useRelativePaths --commitId $env:APPVEYOR_REPO_COMMIT --commitBranch $env:APPVEYOR_REPO_BRANCH --commitAuthor $env:APPVEYOR_REPO_COMMIT_AUTHOR --commitEmail $env:APPVEYOR_REPO_COMMIT_AUTHOR_EMAIL --commitMessage $env:APPVEYOR_REPO_COMMIT_MESSAGE --jobId $env:APPVEYOR_BUILD_NUMBER --serviceName appveyor


    appveyor PushArtifact  opencoverCoverage.xml

    echo '********************************************Uploading test results artifact********************************************'
    
    appveyor PushArtifact testresults_$env:appveyor_build_version.zip
artifacts:
- path: .\Objectivity.Test.Automation.Common.*.nupkg
  name: NuGet
deploy:
- provider: NuGet
  api_key:
    secure: <KEY>
  on:
    branch: master
    appveyor_repo_tag: true

{'fraction_non_alphanumeric': 0.19216589861751152, 'fraction_numerical': 0.003502304147465438, 'mean_word_length': 3.7083966153178562, 'pattern_counts': {'":': 0, '<': 11, '<?xml version=': 0, '>': 19, 'https://': 6, 'lorem ipsum': 0, 'www.': 0, 'xml': 12}, 'pii_count': 2, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1140840', 'n_tokens_mistral': 6951, 'n_tokens_neox': 6654, 'n_words': 885}