snapshot of https://github.com/blevesearch/bleve.git (master, 2026-09-15; blobs > 131072B omitted)
Some checks failed
Coverage / coverage (push) Failing after 6s
Tests / test (1.24.x, ubuntu-latest) (push) Failing after 42s
Tests / test (1.26.x, ubuntu-latest) (push) Failing after 38s
Tests / test (1.25.x, ubuntu-latest) (push) Failing after 35s
Tests / test (1.25.x, windows-latest) (push) Has been cancelled
Tests / test (1.26.x, macos-latest) (push) Has been cancelled
Tests / test (1.26.x, windows-latest) (push) Has been cancelled
Tests / test (1.24.x, macos-latest) (push) Has been cancelled
Tests / test (1.24.x, windows-latest) (push) Has been cancelled
Tests / test (1.25.x, macos-latest) (push) Has been cancelled
Some checks failed
Coverage / coverage (push) Failing after 6s
Tests / test (1.24.x, ubuntu-latest) (push) Failing after 42s
Tests / test (1.26.x, ubuntu-latest) (push) Failing after 38s
Tests / test (1.25.x, ubuntu-latest) (push) Failing after 35s
Tests / test (1.25.x, windows-latest) (push) Has been cancelled
Tests / test (1.26.x, macos-latest) (push) Has been cancelled
Tests / test (1.26.x, windows-latest) (push) Has been cancelled
Tests / test (1.24.x, macos-latest) (push) Has been cancelled
Tests / test (1.24.x, windows-latest) (push) Has been cancelled
Tests / test (1.25.x, macos-latest) (push) Has been cancelled
This commit is contained in:
109
analysis/datetime/sanitized/sanitized_test.go
Normal file
109
analysis/datetime/sanitized/sanitized_test.go
Normal file
@@ -0,0 +1,109 @@
|
||||
// Copyright (c) 2023 Couchbase, Inc.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package sanitized
|
||||
|
||||
import (
|
||||
"reflect"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestLayoutValidatorRegex(t *testing.T) {
|
||||
splitRegexTests := []struct {
|
||||
input string
|
||||
output []string
|
||||
}{
|
||||
{
|
||||
input: "2014-08-03",
|
||||
output: []string{"2014", "08", "03"},
|
||||
},
|
||||
{
|
||||
input: "2014-08-03T15:59:30",
|
||||
output: []string{"2014", "08", "03", "15", "59", "30"},
|
||||
},
|
||||
{
|
||||
input: "2014.08-03 15/59`30",
|
||||
output: []string{"2014", "08", "03", "15", "59", "30"},
|
||||
},
|
||||
{
|
||||
input: "2014/08/03T15:59:30Z08:00",
|
||||
output: []string{"2014", "08", "03", "15", "59", "30", "08", "00"},
|
||||
},
|
||||
{
|
||||
input: "2014\\08|03T15=59.30.999999999+08*00",
|
||||
output: []string{"2014", "08", "03", "15", "59", "30", "999999999", "08", "00"},
|
||||
},
|
||||
{
|
||||
input: "2006-01-02T15:04:05.999999999Z07:00",
|
||||
output: []string{"2006", "01", "02", "15", "04", "05", "999999999", "07", "00"},
|
||||
},
|
||||
{
|
||||
input: "A-B C:DTE,FZG.H<I>J;K?L!M`N~O@P#Q$R%S^U&V*W|X'Y\"A(B)C{D}E[F]G/H\\I+J=L",
|
||||
output: []string{"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P",
|
||||
"Q", "R", "S", "U", "V", "W", "X", "Y", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "L"},
|
||||
},
|
||||
}
|
||||
regex := layoutSplitRegex
|
||||
for _, test := range splitRegexTests {
|
||||
t.Run(test.input, func(t *testing.T) {
|
||||
actualOutput := regex.Split(test.input, -1)
|
||||
if !reflect.DeepEqual(actualOutput, test.output) {
|
||||
t.Fatalf("expected output %v, got %v", test.output, actualOutput)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
stripRegexTests := []struct {
|
||||
input string
|
||||
output string
|
||||
}{
|
||||
{
|
||||
input: "3PM",
|
||||
output: "3",
|
||||
},
|
||||
{
|
||||
input: "3.0PM",
|
||||
output: "3",
|
||||
},
|
||||
{
|
||||
input: "3.9AM",
|
||||
output: "3AM",
|
||||
},
|
||||
{
|
||||
input: "3.999999999pm",
|
||||
output: "3",
|
||||
},
|
||||
{
|
||||
input: "2006-01-02T15:04:05.999999999Z07:00MST",
|
||||
output: "2006-01-02T15:04:05Z07:00",
|
||||
},
|
||||
{
|
||||
input: "Jan _2 15:04:05.0000000+07:00MST",
|
||||
output: "Jan _2 15:04:05+07:00",
|
||||
},
|
||||
{
|
||||
input: "15:04:05.99PM+07:00MST",
|
||||
output: "15:04:05+07:00",
|
||||
},
|
||||
}
|
||||
regex = layoutStripRegex
|
||||
for _, test := range stripRegexTests {
|
||||
t.Run(test.input, func(t *testing.T) {
|
||||
actualOutput := layoutStripRegex.ReplaceAllString(test.input, "")
|
||||
if !reflect.DeepEqual(actualOutput, test.output) {
|
||||
t.Fatalf("expected output %v, got %v", test.output, actualOutput)
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user