Faits :
A.
Après son divorce, A._ s'est inscrite au chômage. Elle a été employée à 60 % par la société B._ SA (anciennement C._ SA) du 22 novembre 2010 au 31 juillet 2011 sur la base d'un contrat de durée déterminée. Arrivée en fin de droit de chômage, A._ a conclu le 8 novembre 2011 un contrat de travail temporaire avec l'Etat de Neuchâtel pour une durée allant du 7 novembre 2011 au 6 mai 2012. Le contrat, qui portait sur une activité de collaboratrice à 50 % auprès du Service D._ , a été résilié le 13 décembre 2011, au cours de la période d'essai, A._ se trouvant en arrêt maladie de longue durée. Du 6 août au 26 décembre 2012, la prénommée a travaillé à 50 % auprès du Service E._ en vertu d'un nouveau contrat de travail temporaire conclu le 8 août 2012 avec l'Etat de Neuchâtel. A partir du 1er janvier 2013, elle a été engagée à temps partiel par la société F._ AG, puis licenciée en raison d'une restructuration interne avec effet au 31 mai 2013.
Le 16 juillet 2013, A._ s'est à nouveau annoncée à l'assurance-chômage en requérant des indemnités de chômage à partir du 1er juin 2013. Par décision du 23 août 2013, confirmée sur opposition le 1er novembre 2013, la Caisse cantonale neuchâteloise d'assurance-chômage (ci-après: la caisse) lui a refusé le droit au chômage, au motif qu'elle ne présentait pas une période de cotisation de douze mois au minimum durant le délai-cadre déterminant qui s'étendait du 1er juin 2011 au 31 mai 2013, mais seulement de sept mois (soit du 1er juin au 31 juillet 2011 et du 1er janvier au 31 mai 2013).
B.
Par jugement du 20 mars 2014, la Cour de droit public du Tribunal cantonal neuchâtelois a admis le recours formé par A._ contre la décision sur opposition du 1er novembre 2013. Elle a annulé cette décision et renvoyé la cause à la caisse pour nouvelle décision dans le sens des considérants.
C.
La caisse interjette un recours en matière de droit public contre ce jugement cantonal dont elle requiert l'annulation. Elle conclut au renvoi de la cause à l'autorité précédente ou à l'autorité de première instance pour nouvelle décision au sens des considérants.
A._ et le Secrétariat d'Etat à l'économie ne se sont pas déterminés.
D.
Par ordonnance du 11 juillet 2014, le juge instructeur a attribué l'effet suspensif au recours.
Considérant en droit :
1.
En tant qu'il renvoie la cause à la caisse pour nouvelle décision, le jugement entrepris doit être qualifié de décision incidente, qui ne peut être déférée immédiatement au Tribunal fédéral que si la condition du préjudice irréparable est réalisée ou pour des motifs d'économie de la procédure (art. 93 al. 1 let. a LTF). Lorsqu'une administration ou un assureur social sont contraints par le jugement incident à rendre une décision qu'ils estiment contraire au droit et qu'ils ne pourront eux-mêmes pas attaquer, un tel jugement incident peut être déféré au Tribunal fédéral sans attendre le prononcé du jugement final (ATF 133 V 477 consid. 5.2 p. 483). Cette éventualité est en l'espèce réalisée, le jugement attaqué ayant un effet contraignant pour la recourante en ce sens que celle-ci est tenue de statuer à nouveau sur le droit aux prestations de chômage de l'intimée en considérant que celle-ci remplit la condition de la période de cotisation. Il convient par conséquent d'entrer en matière.
2.
2.1. Selon l'art. 8 al. 1 let. e LACI (RS 837.0), l'assuré a droit à l'indemnité de chômage s'il remplit les conditions relatives à la période de cotisation ou en est libéré. Des délais-cadres de deux ans s'appliquent, en règle générale, aux périodes d'indemnisation et de cotisation (art. 9 al. 1 LACI). Le délai-cadre applicable à la période d'indemnisation commence à courir le premier jour où toutes les conditions dont dépend le droit à l'indemnité sont réunies (art. 9 al. 2 LACI). Le délai-cadre applicable à la période de cotisation commence à courir deux ans plus tôt (art. 9 al. 3 LACI). Celui qui, dans les limites du délai-cadre, a exercé durant douze mois au moins une activité soumise à cotisation remplit les conditions relatives à la période de cotisation (art. 13 al. 1 LACI).
2.2. L'art. 23 al. 3bis, 1re phrase, LACI, entré en vigueur au 1er avril 2011 (RO 2011 1167), prévoit qu'un gain réalisé dans le cadre d'une mesure relative au marché du travail financée par les pouvoirs publics n'est pas assuré. Cette disposition se rapporte aussi bien au calcul du gain assuré qu'à la période de cotisation (ATF 139 V 212). Selon l'art. 38 al. 1 OACI (RS 837.02), sont réputées mesures relatives au marché du travail au sens de l'art. 23 al. 3bis LACI, les mesures d'intégration professionnelle financées en tout ou en partie par les pouvoirs publics.
3.
La caisse reproche aux premiers juges d'avoir retenu que les activités exercées par l'intimée dans le cadre des contrats d'emplois temporaires conclus avec l'Etat de Neuchâtel comptaient comme période de cotisation alors qu'elles s'inscrivaient dans un contexte de mesures cantonales d'intégration professionnelle au sens des art. 23 al. 3bis LACI et 38 al. 1 OACI, de sorte qu'elles ne pouvaient pas être prises en considération pour l'ouverture du droit aux prestations de l'assurance-chômage.
4.
Le champ d'application de l'art. 23 al. 3bis LACI concerne les mesures du marché du travail par opposition aux emplois ordinaires sur le marché du travail (voir BORIS RUBIN, Commentaire de la loi sur l'assurance-chômage, éd. 2014, n. 45 ad art. 23 LACI). Il s'est agi d'empêcher que des programmes d'emploi temporaire soient organisés dans le seul but de générer des périodes de cotisations de l'assurance-chômage (Message du 3 septembre 2008 relatif à la modification de la loi sur l'assurance-chômage, FF 2008 7029 ss, p. 7046). La distinction entre une activité lucrative ordinaire et une mesure relative au marché du travail s'opère en fonction d'indices tels que le mode de conclusion du contrat, les prestations contractuelles, la durée du contrat et le but de celui-ci (ATF 139 V 212 consid. 4.2 p. 214; BORIS RUBIN, ibid.).
En l'espèce, les contrats de travail conclus les 8 novembre 2011 et 8 août 2012 entre l'intimée et l'Etat de Neuchâtel, représenté par l'office des emplois temporaires, font référence aux art. 23 ss du Règlement [de la République et canton de Neuchâtel] du 20 décembre 2006 concernant les mesures d'intégration professionnelle (RMIP; RSN 823. 201). Ce règlement institue des mesures cantonales complémentaires aux mesures du marché du travail prévues par la législation fédérale (art. 1 RMIP en relation avec l'art. 42 de la loi [de la République et canton de Neuchâtel] du 25 mai 2004 sur l'emploi et l'assurance-chômage [LEmpl; RSN 813.10]). L'art. 23 RMIP concerne les programmes d'emplois temporaires. Ces programmes donnent aux demandeurs d'emploi qui n'ont pas ou plus droit aux indemnités de l'assurance-chômage la possibilité de travailler à titre temporaire au sein notamment d'une administration fédérale, cantonale ou communale (al. 1). La durée de la mesure est en principe de six mois, renouvelable pour une durée maximale de six mois (al. 3). La participation à un programme d'emplois temporaires est soumise à la réalisation de certaines conditions qui sont fixées à l'art. 24 RMIP. C'est l'office des emplois temporaires qui examine les demandes y relatives (art. 18 RMIP). Les dépenses entraînées par cette mesure sont assumées par l'Etat et les communes (art. 13 RMIP).
5.
Compte tenu du mode de conclusion des contrats de travail en cause et des conditions que l'intimée a dû remplir pour en bénéficier, on doit retenir que l'on se trouve en présence d'une mesure du marché du travail financée par les pouvoirs publics qui tombe dans le champ d'application de l'art. 23 al. 3bis LAC et non pas d'un contrat de travail ordinaire. En conséquence, les activités exercées par l'intimée à ce titre ne peuvent générer des périodes de cotisation. Le recours doit être admis et le jugement attaqué annulé.
6.
Il peut être exceptionnellement renoncé à la perception de frais judiciaires (art. 66 al. 1, 2ème phrase, LTF).
Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est admis. La décision de la Cour de droit public du Tribunal cantonal neuchâtelois du 20 mars 2014 est annulée. La décision sur opposition de la Caisse cantonale neuchâteloise d'assurance-chômage du 1er novembre 2013 est confirmée.
2.
Il n'est pas perçu de frais judiciaires.
3.
Le présent arrêt est communiqué aux parties, au Tribunal cantonal de la République et canton de Neuchâtel, Cour de droit public, et au Secrétariat d'Etat à l'économie (SECO).
Lucerne, le 23 mars 2015
Au nom de la Ire Cour de droit social
du Tribunal fédéral suisse
La Présidente : Leuzinger
La Greffière : von Zwehl