is it ok to get 100% accuracy in random forest classifier algorithm? while i was building the model to predict the performance of machine using the features like OEF,working time,performance/head etc...

I splitted the training data using

x_trainset, x_testset, y_trainset, y_testset = train_test_split(x, y, test_size=0.3)


then built the model

#Import Random Forest Model
from sklearn.ensemble import RandomForestClassifier

# Create the model with 100 trees
forest=RandomForestClassifier(n_estimators=100)

#Train the model using the training sets
train1=forest.fit(x_trainset, y_trainset)
y_pred=train1.predict(x_testset)

y_pred

o/p:

array(['level2', 'level5', 'level2', 'level3', 'level3', 'level2',
       'level3', 'level2', 'level4', 'level2', 'level2', 'level3',
       'level4', 'level3', 'level3', 'level2', 'level2', 'level3',
       'level3', 'level3', 'level3', 'level3', 'level2', 'level5',
       'level3', 'level3', 'level2', 'level5', 'level4', 'level3',
       'level3', 'level3', 'level2', 'level2', 'level3', 'level3',
       'level3', 'level2', 'level4', 'level2', 'level2', 'level3',
       'level4', 'level3', 'level1', 'level3'], dtype=object)


y_testset

o/p:

120    level2
104    level5
117    level2
91     level3
4      level3
10     level2
133    level3
18     level2
119    level4
61     level2
71     level2
30     level3
27     level4
103    level3
14     level3
59     level2
50     level2
55     level3
53     level3
22     level3
78     level3
114    level3
70     level2
60     level5
6      level3
1      level3
83     level2
82     level5
26     level4
67     level3
62     level3
145    level3
74     level2
11     level2
107    level3
29     level3
138    level3
49     level2
150    level4
8      level2
20     level2
95     level3
51     level4
56     level3
72     level1
102    level3
Name: levels, dtype: object


then found the accuracy and i got like,

from sklearn import metrics #Import scikit-learn metrics module for accuracy calculation
print("Accuracy:",metrics.accuracy_score(y_testset, y_pred))

o/p:

Accuracy: 1.0


In x_trainset,x_testset i have only the features(7) and in y_trainset,y_testset i have only column "levels" which is needed to be predicted

dataset size is about 153

I don't know whether this is correct.Please can anyone answer this as soon as possible
There could be many reasons why you achieved 100% accuracy.One of them could be:Duplicates in your data which are repetitive in both train and test data.I would suggest you to try the following steps:
1.Check if there are any duplicates in the original data
2. Try a different Train-Test split like 80-20
3.Try k-Fold cross validation
4.Checkout for Precision and Recall apart from accuracy.
Hope this helps!