mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-11-03 21:16:26 +01:00 
			
		
		
		
	#3442 add test suites
This commit is contained in:
		
							parent
							
								
									4296427214
								
							
						
					
					
						commit
						5be881756b
					
				@ -97,6 +97,21 @@ func LoadConfigs() {
 | 
				
			|||||||
	DbCfg.Path = sec.Key("PATH").MustString("data/gogs.db")
 | 
						DbCfg.Path = sec.Key("PATH").MustString("data/gogs.db")
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// parsePostgreSQLHostPort parses given input in various forms defined in
 | 
				
			||||||
 | 
					// https://www.postgresql.org/docs/current/static/libpq-connect.html#LIBPQ-CONNSTRING
 | 
				
			||||||
 | 
					// and returns proper host and port number.
 | 
				
			||||||
 | 
					func parsePostgreSQLHostPort(info string) (string, string) {
 | 
				
			||||||
 | 
						host, port := "127.0.0.1", "5432"
 | 
				
			||||||
 | 
						if strings.Contains(info, ":") && !strings.HasSuffix(info, "]") {
 | 
				
			||||||
 | 
							idx := strings.LastIndex(info, ":")
 | 
				
			||||||
 | 
							host = info[:idx]
 | 
				
			||||||
 | 
							port = info[idx+1:]
 | 
				
			||||||
 | 
						} else if len(info) > 0 {
 | 
				
			||||||
 | 
							host = info
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return host, port
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func getEngine() (*xorm.Engine, error) {
 | 
					func getEngine() (*xorm.Engine, error) {
 | 
				
			||||||
	connStr := ""
 | 
						connStr := ""
 | 
				
			||||||
	var Param string = "?"
 | 
						var Param string = "?"
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										33
									
								
								models/models_test.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								models/models_test.go
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,33 @@
 | 
				
			|||||||
 | 
					// Copyright 2016 The Gogs Authors. All rights reserved.
 | 
				
			||||||
 | 
					// Use of this source code is governed by a MIT-style
 | 
				
			||||||
 | 
					// license that can be found in the LICENSE file.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					package models
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import (
 | 
				
			||||||
 | 
						"testing"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						. "github.com/smartystreets/goconvey/convey"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func Test_parsePostgreSQLHostPort(t *testing.T) {
 | 
				
			||||||
 | 
						testSuites := []struct {
 | 
				
			||||||
 | 
							input      string
 | 
				
			||||||
 | 
							host, port string
 | 
				
			||||||
 | 
						}{
 | 
				
			||||||
 | 
							{"127.0.0.1:1234", "127.0.0.1", "1234"},
 | 
				
			||||||
 | 
							{"127.0.0.1", "127.0.0.1", "5432"},
 | 
				
			||||||
 | 
							{"[::1]:1234", "[::1]", "1234"},
 | 
				
			||||||
 | 
							{"[::1]", "[::1]", "5432"},
 | 
				
			||||||
 | 
							{"/tmp/pg.sock:1234", "/tmp/pg.sock", "1234"},
 | 
				
			||||||
 | 
							{"/tmp/pg.sock", "/tmp/pg.sock", "5432"},
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						Convey("Parse PostgreSQL host and port", t, func() {
 | 
				
			||||||
 | 
							for _, suite := range testSuites {
 | 
				
			||||||
 | 
								host, port := parsePostgreSQLHostPort(suite.input)
 | 
				
			||||||
 | 
								So(host, ShouldEqual, suite.host)
 | 
				
			||||||
 | 
								So(port, ShouldEqual, suite.port)
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						})
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -1,7 +1,12 @@
 | 
				
			|||||||
 | 
					// Copyright 2016 The Gogs Authors. All rights reserved.
 | 
				
			||||||
 | 
					// Use of this source code is governed by a MIT-style
 | 
				
			||||||
 | 
					// license that can be found in the LICENSE file.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
package models
 | 
					package models
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import (
 | 
					import (
 | 
				
			||||||
	"fmt"
 | 
						"fmt"
 | 
				
			||||||
 | 
						"strings"
 | 
				
			||||||
	"testing"
 | 
						"testing"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	. "github.com/smartystreets/goconvey/convey"
 | 
						. "github.com/smartystreets/goconvey/convey"
 | 
				
			||||||
@ -37,7 +42,13 @@ func Test_SSHParsePublicKey(t *testing.T) {
 | 
				
			|||||||
			So(lengthN, ShouldEqual, key.length)
 | 
								So(lengthN, ShouldEqual, key.length)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			keyTypeK, lengthK, errK := SSHKeyGenParsePublicKey(key.content)
 | 
								keyTypeK, lengthK, errK := SSHKeyGenParsePublicKey(key.content)
 | 
				
			||||||
			So(errK, ShouldBeNil)
 | 
								if errK != nil {
 | 
				
			||||||
 | 
									// Some server just does not support ecdsa format.
 | 
				
			||||||
 | 
									if strings.Contains(errK.Error(), "line 1 too long:") {
 | 
				
			||||||
 | 
										continue
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
									So(errK, ShouldBeNil)
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
			So(keyTypeK, ShouldEqual, key.typeName)
 | 
								So(keyTypeK, ShouldEqual, key.typeName)
 | 
				
			||||||
			So(lengthK, ShouldEqual, key.length)
 | 
								So(lengthK, ShouldEqual, key.length)
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user