2020-06-07 14:48:41 +03:00
// Copyright 2020 The Gitea Authors. All rights reserved.
2022-11-27 21:20:29 +03:00
// SPDX-License-Identifier: MIT
2020-06-07 14:48:41 +03:00
2022-09-02 22:18:23 +03:00
package integration
2020-06-07 14:48:41 +03:00
import (
"net/http"
"net/url"
"testing"
2020-06-09 03:15:45 +03:00
"time"
2020-06-07 14:48:41 +03:00
"github.com/stretchr/testify/assert"
)
func TestRepoLanguages ( t * testing . T ) {
onGiteaRun ( t , func ( t * testing . T , u * url . URL ) {
session := loginUser ( t , "user2" )
// Request editor page
req := NewRequest ( t , "GET" , "/user2/repo1/_new/master/" )
resp := session . MakeRequest ( t , req , http . StatusOK )
doc := NewHTMLParser ( t , resp . Body )
lastCommit := doc . GetInputValueByName ( "last_commit" )
assert . NotEmpty ( t , lastCommit )
// Save new file to master branch
req = NewRequestWithValues ( t , "POST" , "/user2/repo1/_new/master/" , map [ string ] string {
"_csrf" : doc . GetCSRF ( ) ,
"last_commit" : lastCommit ,
"tree_path" : "test.go" ,
"content" : "package main" ,
"commit_choice" : "direct" ,
} )
2022-03-23 07:54:07 +03:00
session . MakeRequest ( t , req , http . StatusSeeOther )
2020-06-07 14:48:41 +03:00
2020-06-09 03:15:45 +03:00
// let gitea calculate language stats
time . Sleep ( time . Second )
2020-06-07 14:48:41 +03:00
// Save new file to master branch
req = NewRequest ( t , "GET" , "/api/v1/repos/user2/repo1/languages" )
2022-12-02 06:39:42 +03:00
resp = MakeRequest ( t , req , http . StatusOK )
2020-06-07 14:48:41 +03:00
var languages map [ string ] int64
DecodeJSON ( t , resp , & languages )
assert . InDeltaMapValues ( t , map [ string ] int64 { "Go" : 12 } , languages , 0 )
} )
}