Compare commits

...
Author SHA1 Message Date
phoenix 371a6d0be4 bump: textsender-models
Go CI / Test and Lint (push) Successful in 7s
Go Release / build-and-release (pull_request) Successful in 6s
Go CI / Test and Lint (pull_request) Successful in 6s
2026-05-28 20:02:27 -04:00
phoenix 548a8eaa07 go fmt
Go Release / build-and-release (pull_request) Successful in 5s
Go CI / Test and Lint (pull_request) Successful in 7s
Go CI / Test and Lint (push) Successful in 17s
2026-05-28 20:01:14 -04:00
phoenix 6d52867485 Added Organization struct
Go CI / Test and Lint (push) Successful in 17s
Go Release / build-and-release (pull_request) Successful in 6s
Go CI / Test and Lint (pull_request) Successful in 16s
2026-05-28 15:22:22 -04:00
phoenix 3ccc1a9a6d UserProfile (#1)
Go Release / build-and-release (push) Successful in 5s
Go CI / Test and Lint (push) Successful in 6s
Reviewed-on: phoenix/textsender-models#1
2026-05-27 22:59:45 -04:00
7 changed files with 98 additions and 9 deletions
+1 -1
View File
@@ -25,7 +25,7 @@ jobs:
run: |
echo "Creating version"
VERSION="0.2.2"
VERSION="0.2.4"
PROJECT_COMMIT_HASH=$(git rev-parse HEAD | cut -c 1-10)
BRANCH_REF="${{ gitea.ref }}"
BRANCH_NAME=$(echo "$BRANCH_REF" | cut -d '/' -f 3)
+7
View File
@@ -5,4 +5,11 @@ go 1.26.2
require (
github.com/golang-jwt/jwt/v5 v5.3.1
github.com/google/uuid v1.6.0
github.com/stretchr/testify v1.11.1
)
require (
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/pmezard/go-difflib v1.0.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
)
+10
View File
@@ -1,4 +1,14 @@
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/golang-jwt/jwt/v5 v5.3.1 h1:kYf81DTWFe7t+1VvL7eS+jKFVWaUnK9cB1qbwn63YCY=
github.com/golang-jwt/jwt/v5 v5.3.1/go.mod h1:fxCRLWMO43lRc8nhHWY6LGqRcf+1gQWArsqaEUEa5bE=
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U=
github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
+13
View File
@@ -0,0 +1,13 @@
package user
import (
"time"
"github.com/google/uuid"
)
type Organization struct {
Id uuid.UUID `json:"id"`
Name string `json:"name"`
Created *time.Time `json:"created,omitempty"`
}
+10 -8
View File
@@ -7,12 +7,14 @@ import (
)
type User struct {
Id uuid.UUID `json:"id"`
PhoneNumber string `json:"phone_number"`
Username string `json:"username"`
Password string `json:"password"`
Firstname *string `json:"first_name,omitempty"`
Lastname *string `json:"last_name,omitempty"`
Created time.Time `json:"created"`
LastLogin *time.Time `json:"last_login,omitempty"`
Id uuid.UUID `json:"id"`
PhoneNumber string `json:"phone_number"`
Username string `json:"username"`
Password string `json:"password"`
// Firstname is a pointer
Firstname *string `json:"first_name,omitempty"`
// Lastname is a pointer
Lastname *string `json:"last_name,omitempty"`
Created time.Time `json:"created"`
LastLogin *time.Time `json:"last_login,omitempty"`
}
+41
View File
@@ -0,0 +1,41 @@
package user
import (
"fmt"
"time"
"github.com/google/uuid"
)
type UserProfile struct {
UserId uuid.UUID `json:"user_id"`
PhoneNumber string `json:"phone_number"`
Username string `json:"username"`
Firstname *string `json:"firstname,omitempty"`
Lastname *string `json:"lastname,omitempty"`
Created time.Time `json:"created"`
LastLogin *time.Time `json:"last_login,omitempty"`
}
func InitUserProfile(usr *User) (usrProfile *UserProfile, err error) {
if usr == nil {
return nil, fmt.Errorf("User is empty")
} else {
usrProfile = new(UserProfile)
usrProfile.UserId = usr.Id
usrProfile.PhoneNumber = usr.PhoneNumber
usrProfile.Username = usr.Username
if usr.Firstname != nil {
usrProfile.Firstname = usr.Firstname
}
if usr.Lastname != nil {
usrProfile.Lastname = usr.Lastname
}
usrProfile.Created = usr.Created
if usr.LastLogin != nil {
usrProfile.LastLogin = usr.LastLogin
}
return usrProfile, nil
}
}
+16
View File
@@ -0,0 +1,16 @@
package user
import (
"testing"
"github.com/stretchr/testify/assert"
)
func TestInitUserProfile(t *testing.T) {
usr := User{Username: "Bob", PhoneNumber: "+12224572351", Password: "TheNight!"}
profile, err := InitUserProfile(&usr)
assert.NoError(t, err, "Error %v", err)
assert.NotEmpty(t, profile, "UserProfile is empty")
}