2020-06-07 14:48:41 +03:00
// Copyright 2020 The Gitea Authors. All rights reserved.
2022-11-27 13:20:29 -05:00
// SPDX-License-Identifier: MIT
2020-06-07 14:48:41 +03:00
2022-09-02 15:18:23 -04:00
package integration
2020-06-07 14:48:41 +03:00
import (
"net/http"
"net/url"
"testing"
2020-06-09 02:15:45 +02: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 05:54:07 +01:00
session . MakeRequest ( t , req , http . StatusSeeOther )
2020-06-07 14:48:41 +03:00
2020-06-09 02:15:45 +02: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 11:39:42 +08: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 )
} )
}