Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
小 白蛋
Mizu
Commits
162dc9de
Commit
162dc9de
authored
4 years ago
by
Roee Gadot
Browse files
Options
Download
Email Patches
Plain Diff
no message
parent
4ecccba4
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
tap/go.mod
+2
-1
tap/go.mod
tap/go.sum
+2
-3
tap/go.sum
tap/src/autogenerated_mizuEntry.go
+151
-42
tap/src/autogenerated_mizuEntry.go
tap/src/main.go
+17
-15
tap/src/main.go
tap/src/mizuEntry.go
+4
-5
tap/src/mizuEntry.go
with
176 additions
and
66 deletions
+176
-66
tap/go.mod
+
2
-
1
View file @
162dc9de
...
...
@@ -4,5 +4,6 @@ go 1.16
require (
github.com/google/martian v2.1.0+incompatible
github.com/jinzhu/gorm v1.9.16
gorm.io/driver/sqlite v1.1.4
gorm.io/gorm v1.21.8
)
This diff is collapsed.
Click to expand it.
tap/go.sum
+
2
-
3
View file @
162dc9de
github.com/CyrusBiotechnology/go-har v0.0.0-20160107200632-7e81ccfd566e h1:5/mVjqdyM1KH36dKfdfQ+En+Fqdj16aAlx9salHhzRY=
github.com/CyrusBiotechnology/go-har v0.0.0-20160107200632-7e81ccfd566e/go.mod h1:F06TYwuSm2x+nwDbYZ/K/I10kmiKWZWSMugUQ/YTSdQ=
github.com/PuerkitoBio/goquery v1.5.1/go.mod h1:GsLWisAFVj4WgDibEWF4pvYnkVQBpKBKeU+7zCJoLcc=
github.com/andybalholm/cascadia v1.1.0/go.mod h1:GsXiBklL0woXo1j/WYWtSYYC4ouU9PqHO0sqidkEA4Y=
github.com/denisenkom/go-mssqldb v0.0.0-20191124224453-732737034ffd h1:83Wprp6ROGeiHFAP8WJdI2RoxALQYgdllERc3N5N2DM=
...
...
@@ -22,10 +20,11 @@ github.com/jinzhu/now v1.1.2 h1:eVKgfIdy9b6zbWBMgFpfDPoAMifwSZagU9HmEU6zgiI=
github.com/jinzhu/now v1.1.2/go.mod h1:d3SSVoowX0Lcu0IBviAWJpolVfI5UJVZZ7cO71lE/z8=
github.com/lib/pq v1.1.1 h1:sJZmqHoEaY7f+NPP8pgLB/WxulyR3fewgCM2qaSlBb4=
github.com/lib/pq v1.1.1/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo=
github.com/mattn/go-sqlite3 v1.14.0 h1:mLyGNKR8+Vv9CAU7PphKa2hkEqxxhn8i32J6FPj1/QA=
github.com/mattn/go-sqlite3 v1.14.0/go.mod h1:JIl7NbARA7phWnGvh0LKTyg7S9BA+6gx71ShQilpsus=
github.com/mattn/go-sqlite3 v1.14.5 h1:1IdxlwTNazvbKJQSxoJ5/9ECbEeaTTyeU7sEAZ5KKTQ=
github.com/mattn/go-sqlite3 v1.14.5/go.mod h1:WVKg1VTActs4Qso6iwGbiFih2UIHo0ENGwNd0Lj+XmI=
github.com/mattn/go-sqlite3 v1.14.7 h1:fxWBnXkxfM6sRiuH3bqJ4CfzZojMOLVc0UTsTglEghA=
github.com/mattn/go-sqlite3 v1.14.7/go.mod h1:NyWgC/yNuGj7Q9rpYnZvas74GogHl5/Z4A/KQRfk6bU=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20190325154230-a5d413f7728c/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20191205180655-e7c4368fe9dd h1:GGJVjV8waZKRHrgwvtH66z9ZGVurTD1MT0n1Bb+q4aM=
...
...
This diff is collapsed.
Click to expand it.
tap/src/autogenerated_mizuEntry.go
+
151
-
42
View file @
162dc9de
...
...
@@ -7,8 +7,7 @@ import (
"strings"
"time"
"github.com/google/martian/har"
"github.com/jinzhu/gorm"
"gorm.io/gorm"
)
// ===== BEGIN of all query sets
...
...
@@ -60,11 +59,11 @@ func (qs MizuEntryQuerySet) All(ret *[]MizuEntry) error {
// Count is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
Count
()
(
int
,
error
)
{
var
count
int
err
:=
qs
.
db
.
Count
(
&
count
)
.
Error
return
count
,
err
}
//
func (qs MizuEntryQuerySet) Count() (int, error) {
//
var count int
//
err := qs.db.Count(&count).Error
//
return count, err
//
}
// CreatedAtEq is an autogenerated method
// nolint: dupl
...
...
@@ -122,52 +121,140 @@ func (qs MizuEntryQuerySet) DeleteNumUnscoped() (int64, error) {
return
db
.
RowsAffected
,
db
.
Error
}
// DeletedAtEq is an autogenerated method
// EntryEq is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
EntryEq
(
entry
string
)
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Where
(
"entry = ?"
,
entry
))
}
// EntryGt is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
EntryGt
(
entry
string
)
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Where
(
"entry > ?"
,
entry
))
}
// EntryGte is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
EntryGte
(
entry
string
)
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Where
(
"entry >= ?"
,
entry
))
}
// EntryIdEq is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
EntryIdEq
(
entryId
string
)
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Where
(
"entry_id = ?"
,
entryId
))
}
// EntryIdGt is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
EntryIdGt
(
entryId
string
)
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Where
(
"entry_id > ?"
,
entryId
))
}
// EntryIdGte is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
EntryIdGte
(
entryId
string
)
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Where
(
"entry_id >= ?"
,
entryId
))
}
// EntryIdIn is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
EntryIdIn
(
entryId
...
string
)
MizuEntryQuerySet
{
if
len
(
entryId
)
==
0
{
qs
.
db
.
AddError
(
errors
.
New
(
"must at least pass one entryId in EntryIdIn"
))
return
qs
.
w
(
qs
.
db
)
}
return
qs
.
w
(
qs
.
db
.
Where
(
"entry_id IN (?)"
,
entryId
))
}
// EntryIdLike is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
DeletedAtEq
(
deletedAt
time
.
Time
)
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Where
(
"
deleted_at = ?"
,
deletedAt
))
func
(
qs
MizuEntryQuerySet
)
EntryIdLike
(
entryId
string
)
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Where
(
"
entry_id LIKE ?"
,
entryId
))
}
//
DeletedAtG
t is an autogenerated method
//
EntryIdL
t is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
DeletedAtGt
(
deletedAt
time
.
Time
)
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Where
(
"
deleted_at > ?"
,
deletedAt
))
func
(
qs
MizuEntryQuerySet
)
EntryIdLt
(
entryId
string
)
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Where
(
"
entry_id < ?"
,
entryId
))
}
//
DeletedAtG
te is an autogenerated method
//
EntryIdL
te is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
DeletedAtGte
(
deletedAt
time
.
Time
)
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Where
(
"
deleted_at >= ?"
,
deletedAt
))
func
(
qs
MizuEntryQuerySet
)
EntryIdLte
(
entryId
string
)
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Where
(
"
entry_id <= ?"
,
entryId
))
}
//
DeletedAtIsNotNull
is an autogenerated method
//
EntryIdNe
is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
DeletedAtIsNotNull
(
)
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Where
(
"
deleted_at IS NOT NULL"
))
func
(
qs
MizuEntryQuerySet
)
EntryIdNe
(
entryId
string
)
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Where
(
"
entry_id != ?"
,
entryId
))
}
//
DeletedAtIsNull
is an autogenerated method
//
EntryIdNotIn
is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
DeletedAtIsNull
()
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Where
(
"deleted_at IS NULL"
))
func
(
qs
MizuEntryQuerySet
)
EntryIdNotIn
(
entryId
...
string
)
MizuEntryQuerySet
{
if
len
(
entryId
)
==
0
{
qs
.
db
.
AddError
(
errors
.
New
(
"must at least pass one entryId in EntryIdNotIn"
))
return
qs
.
w
(
qs
.
db
)
}
return
qs
.
w
(
qs
.
db
.
Where
(
"entry_id NOT IN (?)"
,
entryId
))
}
//
DeletedAtLt
is an autogenerated method
//
EntryIdNotlike
is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
DeletedAtLt
(
deletedAt
time
.
Time
)
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Where
(
"
deleted_at < ?"
,
deletedAt
))
func
(
qs
MizuEntryQuerySet
)
EntryIdNotlike
(
entryId
string
)
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Where
(
"
entry_id NOT LIKE ?"
,
entryId
))
}
//
DeletedAtLte
is an autogenerated method
//
EntryIn
is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
DeletedAtLte
(
deletedAt
time
.
Time
)
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Where
(
"deleted_at <= ?"
,
deletedAt
))
func
(
qs
MizuEntryQuerySet
)
EntryIn
(
entry
...
string
)
MizuEntryQuerySet
{
if
len
(
entry
)
==
0
{
qs
.
db
.
AddError
(
errors
.
New
(
"must at least pass one entry in EntryIn"
))
return
qs
.
w
(
qs
.
db
)
}
return
qs
.
w
(
qs
.
db
.
Where
(
"entry IN (?)"
,
entry
))
}
//
DeletedAtN
e is an autogenerated method
//
EntryLik
e is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
DeletedAtNe
(
deletedAt
time
.
Time
)
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Where
(
"deleted_at != ?"
,
deletedAt
))
func
(
qs
MizuEntryQuerySet
)
EntryLike
(
entry
string
)
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Where
(
"entry LIKE ?"
,
entry
))
}
// EntryLt is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
EntryLt
(
entry
string
)
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Where
(
"entry < ?"
,
entry
))
}
// EntryLte is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
EntryLte
(
entry
string
)
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Where
(
"entry <= ?"
,
entry
))
}
// EntryNe is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
EntryNe
(
entry
string
)
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Where
(
"entry != ?"
,
entry
))
}
// EntryNotIn is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
EntryNotIn
(
entry
...
string
)
MizuEntryQuerySet
{
if
len
(
entry
)
==
0
{
qs
.
db
.
AddError
(
errors
.
New
(
"must at least pass one entry in EntryNotIn"
))
return
qs
.
w
(
qs
.
db
)
}
return
qs
.
w
(
qs
.
db
.
Where
(
"entry NOT IN (?)"
,
entry
))
}
// EntryNotlike is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
EntryNotlike
(
entry
string
)
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Where
(
"entry NOT LIKE ?"
,
entry
))
}
// GetDB is an autogenerated method
...
...
@@ -330,10 +417,16 @@ func (qs MizuEntryQuerySet) OrderAscByCreatedAt() MizuEntryQuerySet {
return
qs
.
w
(
qs
.
db
.
Order
(
"created_at ASC"
))
}
// OrderAscBy
DeletedAt
is an autogenerated method
// OrderAscBy
Entry
is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
OrderAscByDeletedAt
()
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Order
(
"deleted_at ASC"
))
func
(
qs
MizuEntryQuerySet
)
OrderAscByEntry
()
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Order
(
"entry ASC"
))
}
// OrderAscByEntryId is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
OrderAscByEntryId
()
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Order
(
"entry_id ASC"
))
}
// OrderAscByID is an autogenerated method
...
...
@@ -384,10 +477,16 @@ func (qs MizuEntryQuerySet) OrderDescByCreatedAt() MizuEntryQuerySet {
return
qs
.
w
(
qs
.
db
.
Order
(
"created_at DESC"
))
}
// OrderDescBy
DeletedAt
is an autogenerated method
// OrderDescBy
Entry
is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
OrderDescByDeletedAt
()
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Order
(
"deleted_at DESC"
))
func
(
qs
MizuEntryQuerySet
)
OrderDescByEntry
()
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Order
(
"entry DESC"
))
}
// OrderDescByEntryId is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
OrderDescByEntryId
()
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Order
(
"entry_id DESC"
))
}
// OrderDescByID is an autogenerated method
...
...
@@ -432,10 +531,10 @@ func (qs MizuEntryQuerySet) OrderDescByUrl() MizuEntryQuerySet {
return
qs
.
w
(
qs
.
db
.
Order
(
"url DESC"
))
}
// Preload
Entry
is an autogenerated method
// Preload
DeletedAt
is an autogenerated method
// nolint: dupl
func
(
qs
MizuEntryQuerySet
)
Preload
Entry
()
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Preload
(
"
Entry
"
))
func
(
qs
MizuEntryQuerySet
)
Preload
DeletedAt
()
MizuEntryQuerySet
{
return
qs
.
w
(
qs
.
db
.
Preload
(
"
DeletedAt
"
))
}
// ServiceEq is an autogenerated method
...
...
@@ -743,18 +842,25 @@ func (u MizuEntryUpdater) SetCreatedAt(createdAt time.Time) MizuEntryUpdater {
// SetDeletedAt is an autogenerated method
// nolint: dupl
func
(
u
MizuEntryUpdater
)
SetDeletedAt
(
deletedAt
*
time
.
Time
)
MizuEntryUpdater
{
func
(
u
MizuEntryUpdater
)
SetDeletedAt
(
deletedAt
gorm
.
DeletedAt
)
MizuEntryUpdater
{
u
.
fields
[
string
(
MizuEntryDBSchema
.
DeletedAt
)]
=
deletedAt
return
u
}
// SetEntry is an autogenerated method
// nolint: dupl
func
(
u
MizuEntryUpdater
)
SetEntry
(
entry
har
.
Entry
)
MizuEntryUpdater
{
func
(
u
MizuEntryUpdater
)
SetEntry
(
entry
string
)
MizuEntryUpdater
{
u
.
fields
[
string
(
MizuEntryDBSchema
.
Entry
)]
=
entry
return
u
}
// SetEntryId is an autogenerated method
// nolint: dupl
func
(
u
MizuEntryUpdater
)
SetEntryId
(
entryId
string
)
MizuEntryUpdater
{
u
.
fields
[
string
(
MizuEntryDBSchema
.
EntryId
)]
=
entryId
return
u
}
// SetID is an autogenerated method
// nolint: dupl
func
(
u
MizuEntryUpdater
)
SetID
(
ID
uint
)
MizuEntryUpdater
{
...
...
@@ -837,6 +943,7 @@ var MizuEntryDBSchema = struct {
UpdatedAt
MizuEntryDBSchemaField
DeletedAt
MizuEntryDBSchemaField
Entry
MizuEntryDBSchemaField
EntryId
MizuEntryDBSchemaField
Url
MizuEntryDBSchemaField
Method
MizuEntryDBSchemaField
Status
MizuEntryDBSchemaField
...
...
@@ -849,6 +956,7 @@ var MizuEntryDBSchema = struct {
UpdatedAt
:
MizuEntryDBSchemaField
(
"updated_at"
),
DeletedAt
:
MizuEntryDBSchemaField
(
"deleted_at"
),
Entry
:
MizuEntryDBSchemaField
(
"entry"
),
EntryId
:
MizuEntryDBSchemaField
(
"entry_id"
),
Url
:
MizuEntryDBSchemaField
(
"url"
),
Method
:
MizuEntryDBSchemaField
(
"method"
),
Status
:
MizuEntryDBSchemaField
(
"status"
),
...
...
@@ -865,6 +973,7 @@ func (o *MizuEntry) Update(db *gorm.DB, fields ...MizuEntryDBSchemaField) error
"updated_at"
:
o
.
UpdatedAt
,
"deleted_at"
:
o
.
DeletedAt
,
"entry"
:
o
.
Entry
,
"entry_id"
:
o
.
EntryId
,
"url"
:
o
.
Url
,
"method"
:
o
.
Method
,
"status"
:
o
.
Status
,
...
...
This diff is collapsed.
Click to expand it.
tap/src/main.go
+
17
-
15
View file @
162dc9de
...
...
@@ -5,17 +5,11 @@ import (
"encoding/json"
"fmt"
"github.com/google/martian/har"
"github.com/jinzhu/gorm"
// "gorm.io/driver/sqlite"
_
"github.com/jinzhu/gorm/dialects/sqlite"
"gorm.io/driver/sqlite"
"gorm.io/gorm"
"os"
)
func
check
(
e
error
)
{
if
e
!=
nil
{
panic
(
e
)
}
}
func
main
()
{
FILEPATH
:=
"/Users/roeegadot/Downloads/testing.har"
...
...
@@ -41,24 +35,32 @@ func main() {
}
func
getGormDB
()
*
gorm
.
DB
{
db
,
_
:=
gorm
.
Open
(
"sqlite"
,
"roee.db"
)
db
,
_
:=
gorm
.
Open
(
sqlite
.
Open
(
"gorm.db"
),
&
gorm
.
Config
{})
migErr
:=
db
.
AutoMigrate
(
&
MizuEntry
{})
if
migErr
!=
nil
{
panic
(
"Cannot run migration"
)
}
return
db
}
func
saveHarToDb
(
entry
har
.
Entry
)
{
entryData
:=
entry
a
,
_
:=
json
.
Marshal
(
entry
)
mizuEntry
:=
MizuEntry
{
EntryId
:
NewObjectID
(),
Entry
:
entryData
,
Url
:
entryData
.
Request
.
URL
,
Method
:
entryData
.
Request
.
Method
,
Status
:
entryData
.
Response
.
Status
,
EntryId
:
NewObjectID
()
.
Hex
(),
// simple way to store it and not convert to bytes
Entry
:
string
(
a
),
Url
:
(
&
entry
)
.
Request
.
URL
,
Method
:
(
&
entry
)
.
Request
.
Method
,
Status
:
(
&
entry
)
.
Response
.
Status
,
Source
:
""
,
Service
:
"MyService"
,
}
if
err
:=
mizuEntry
.
Create
(
getGormDB
());
err
!=
nil
{
fmt
.
Print
(
err
)
panic
(
"cannot create"
)
}
}
This diff is collapsed.
Click to expand it.
tap/src/mizuEntry.go
+
4
-
5
View file @
162dc9de
package
main
import
(
"github.com/jinzhu/gorm"
"github.com/google/martian/har"
"gorm.io/gorm"
)
...
...
@@ -10,11 +9,11 @@ import (
// gen:qs
type
MizuEntry
struct
{
gorm
.
Model
// The Entry itself
Entry
har
.
Entry
`json:"entry,omitempty"`
// The Entry itself
(as string)
Entry
string
`json:"entry,omitempty"`
//TODO: here we will add fields we need to query for
EntryId
ObjectID
`json:"entryId"`
EntryId
string
`json:"entryId"`
Url
string
`json:"url"`
Method
string
`json:"method"`
Status
int
`json:"status"`
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment