Hi,

Thanks for the help.

BR
Abraham

On Tuesday, May 25, 2021 at 6:58:31 AM UTC+3 Neal McConachie wrote:

> The first recommendation I have is to make yourself a set of tests.  
>
> In terms of this specific problem, it is likely because you're comparing 
> pointers.
> Here is an alternate approach that doesn't use reflection, and deals with 
> the pointers as well:
>
> https://play.golang.org/p/9o7yGioRWYl
>
> I'd recommend you expand the tests to make sure you're happy with 
> situations where the PmnId property is not given.
>
> (Please excuse the formatting - I'm on my phone).
>
> On Monday, 24 May 2021 at 16:44:34 UTC+1 Van Fury wrote:
>
>> Hi,
>>
>> I have an array of JSON objects as
>>
>> Structs:
>> ```
>> type Data struct {
>>     TaiList []Tai `json:"taiList"`
>> }
>>
>> type Tai struct {
>>     PlmnId *PlmnId `json:"plmnId"`
>>
>>     Tac string `json:"tac"`
>>
>>     Nid string `json:"nid"`
>> }
>>
>> type PlmnId struct {
>>     Mcc string `json:"mcc"`
>>
>>     Mnc string `json:"mnc"`
>> }
>> ```
>>
>> The JSON is of the form
>>
>> ```
>> {
>>     "taiList": [
>>       {
>>         "plmnId": {
>>             "mcc": "244",
>>             "mnc": "24"
>>         },
>>         "tac": "00001",
>>         "nid": "99"
>>         },
>>         {
>>         "plmnId": {
>>             "mcc": "244",
>>             "mnc": "34"
>>         },
>>         "tac": "00001",
>>         "nid": "555"
>>         }
>>     ]
>> }
>> ``` 
>>
>> I would like to check if the JSON object "ta" is contain in the "taiList".
>>
>> ```
>>  var ta = model.Tai{
>>     PlmnId: &model.PlmnId{Mcc: "244", Mnc: "34"},
>>     Tac:    "00001",
>>     Nid:    "555",
>> }
>> ```
>>
>>
>> I tried with the code below
>>
>> ```
>> func CheckTai(tai model.Tai, TaiList []model.Tai) bool {
>>     for _, Tai := range TaiList {
>>         if reflect.DeepEqual(Tai, tai) {
>>             return true
>>         }
>>     }
>>     return false
>> }
>>
>> ```
>>
>> but CheckTai function return false. 
>> The CheckTai only return true when there is only one JSON object that 
>> match the list as
>>
>> ```
>> {
>>       "taiList": [
>>         {
>>           "plmnId": {
>>             "mcc": "244",
>>             "mnc": "24"
>>           },
>>           "tac": "00001",
>>           "nid": "555"
>>         }
>>
>>       ]
>>     }
>> ```
>>
>> Need help or idea on how to perform this check.
>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/golang-nuts/27836fba-6dc3-4aed-93ec-d44871fe6dd8n%40googlegroups.com.

Reply via email to