VOL-3864: recently added generated ME Class IDs did not get added to Class ID map

Change-Id: I7ce97b28e928bd8b716cdc3532c0da8a5627118d
diff --git a/VERSION b/VERSION
index e815b86..4312e0d 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-0.15.1
+0.15.2
diff --git a/generated/classidmap.go b/generated/classidmap.go
index 2fe9ea1..3c3bdbe 100644
--- a/generated/classidmap.go
+++ b/generated/classidmap.go
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
- /*
+/*
  * NOTE: This file was generated, manual edits will be overwritten!
  *
  * Generated by 'goCodeGenerator.py':
@@ -53,7 +53,7 @@
 
 func init() {
 	// Create mapping of 16-bit managed entity class IDs to ME-type
-	classToManagedEntityMap = make(map[ClassID]CreateME, 177)
+	classToManagedEntityMap = make(map[ClassID]CreateME, 179)
 
 	classToManagedEntityMap[2] = NewOnuData
 	classToManagedEntityMap[5] = NewCardholder
@@ -170,9 +170,11 @@
 	classToManagedEntityMap[305] = NewDot1AgCfmStack
 	classToManagedEntityMap[306] = NewDot1AgChassisManagementInfo
 	classToManagedEntityMap[307] = NewOctetString
+	classToManagedEntityMap[308] = NewGeneralPurposeBuffer
 	classToManagedEntityMap[309] = NewMulticastOperationsProfile
 	classToManagedEntityMap[310] = NewMulticastSubscriberConfigInfo
 	classToManagedEntityMap[311] = NewMulticastSubscriberMonitor
+	classToManagedEntityMap[312] = NewFecPerformanceMonitoringHistoryData
 	classToManagedEntityMap[313] = NewReAniG
 	classToManagedEntityMap[314] = NewPhysicalPathTerminationPointReUni
 	classToManagedEntityMap[315] = NewReUpstreamAmplifier
diff --git a/messagetypes_test.go b/messagetypes_test.go
index 4814703..a8e13ac 100644
--- a/messagetypes_test.go
+++ b/messagetypes_test.go
@@ -2980,3 +2980,31 @@
 
 // TODO: Create notification tests for all of the following types
 //TestResult,
+
+func TestJira3863(t *testing.T) {
+	goodMessage := "81a9240a013880010700000000000000000000000000000000000000000000000000000000000000000000283f73ddea"
+	data, err := stringToPacket(goodMessage)
+	assert.NoError(t, err)
+
+	packet := gopacket.NewPacket(data, LayerTypeOMCI, gopacket.NoCopy)
+	assert.NotNil(t, packet)
+
+	omciLayer := packet.Layer(LayerTypeOMCI)
+	assert.NotNil(t, packet)
+
+	omciMsg, ok := omciLayer.(*OMCI)
+	assert.True(t, ok)
+	assert.NotNil(t, omciMsg)
+
+	msgLayer := packet.Layer(LayerTypeCreateResponse)
+	assert.NotNil(t, msgLayer)
+
+	// FEC PM ME not in class map so the following was failing (ok2 false)
+	response, ok2 := msgLayer.(*CreateResponse)
+	assert.True(t, ok2)
+	assert.NotNil(t, response)
+
+	// Verify string output for message
+	packetString := packet.String()
+	assert.NotZero(t, len(packetString))
+}