['   \n  \n [\'NAME _ 1 ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਹੇਠ ਦਿੱਤੇ ਕੋਡ ਲਈ ਯੂਨਿਟ ਟੈਸਟ ਬਣਾਓਃ\' \\n \'\' js\\nfunction NAME _ 2 () {\\n\\n ਸ੍ਥਿਰਾਂਕ [ਗ੍ਰਾਫਸਟੇਟ, ਸੈਟਗ੍ਰਾਫਸਟੇਟ] = ਯੂਜ਼ਸਟੇਟ (\\n {\\n ਨੋਡਸਃ[], \\n ਕਿਨਾਰੇਃ [] \\n} \\n); \\n\\n ਸਥਿਰਤਾ ਸਪਸ਼ਟ ਕਰੋ ਰਾਜ = () => {\\n ਸੈੱਟ ਗਰਾਫ਼ਸਟੇਟ ({\\n ਨੋਡਸਃ [], \\n ਕਿਨਾਰੇਃ [] \\n} \\n}; \\n\\n ਸਥਿਰਤਾ ਅੱਪਡੇਟ ਗਰਾਫ਼ = (ਅੱਪਡੇਟ) => {\\n//ਅੱਪਡੇਟ ਸੂਚੀਆਂ ਦੀ ਸੂਚੀ ਦੇ ਰੂਪ ਵਿੱਚ ਪ੍ਰਦਾਨ ਕੀਤੇ ਜਾਣਗੇ \\n// ਹਰੇਕ ਸੂਚੀ [ENTITY1, ਰਿਲੇਸ਼ਨ, ENTITY2] ਜਾਂ [ENTITY1, ਕਲਰ] \\n\\n ਵਰ ਦੇ ਰੂਪ ਵਿੱਚ ਹੋਵੇਗੀ।ਕਰੰਟ _ ਗਰਾਫ਼ = JSON.parse (JSON.stringify (ਗਰਾਫ਼ਸਟੇਟ)); \\n\\n ਜੇਕਰ (updates.length = = = 0) {\\n ਰਿਟਰਨ; \\n} \\n\\n// ਅੱਪਡੇਟ \\n ਵਿੱਚ ਪਹਿਲੇ ਤੱਤ ਦੀ ਕਿਸਮ ਦੀ ਜਾਂਚ ਕਰੋ।ਜੇਕਰ (ਟਾਈਪ ਆਫ਼ ਅੱਪਡੇਟਸ [0] = = = "ਸਤਰ") {\\n// ਅੱਪਡੇਟਸ ਸਤਰ ਦੀ ਇੱਕ ਸੂਚੀ ਹੈ \\n ਅੱਪਡੇਟਸ = [ਅੱਪਡੇਟਸ] \\n} \\n\\n updates.forEach (ਅੱਪਡੇਟ => {\\n ਜੇਕਰ (update.length)= = = 3) {\\n// ਮੌਜੂਦਾ ਗ੍ਰਾਫ ਨੂੰ ਇੱਕ ਨਵੇਂ ਸਬੰਧ ਨਾਲ ਅੱਪਡੇਟ ਕਰੋ \\n ਸਥਿਰਤਾ [ਇਕਾਈ 1, ਸਬੰਧ, ਇਕਾਈ 2] = ਅੱਪਡੇਟ; \\n\\n// ਚੈੱਕ ਕਰੋ ਕਿ ਕੀ ਨੋਡ ਪਹਿਲਾਂ ਹੀ ਮੌਜੂਦ ਹਨ \\nਵਾਰ ਨੋਡ1 = current_graph.nodes.find (ਨੋਡ => node.id = = ਇਕਾਈ1); \\n ਵਰ ਨੋਡ2 = current_graph.nodes.find (ਨੋਡ => node.id = = ਇਕਾਈ2); \\n\\n ਜੇਕਰ (ਨੋਡ1)= = = ਪਰਿਭਾਸ਼ਿਤ ਨਹੀਂ) {\\n current_graph.nodes.push ({ID: ਇਕਾਈ1, ਲੇਬਲਃ ਇਕਾਈ1, ਰੰਗਃ "#ffffff"}); \\n} \\n\\n ਜੇਕਰ (ਨੋਡ2 = = ਪਰਿਭਾਸ਼ਿਤ ਨਹੀਂ) {\\ncurrent_graph.nodes.push ({ID: ਇਕਾਈ2, ਲੇਬਲਃ ਇਕਾਈ2, ਰੰਗਃ "#ffffff"}); \\n} \\n\\n// ਜਾਂਚ ਕਰੋ ਕਿ ਕੀ ਦੋਵਾਂ ਨੋਡਾਂ ਵਿਚਕਾਰ ਕੋਈ ਕਿਨਾਰਾ ਪਹਿਲਾਂ ਹੀ ਮੌਜੂਦ ਹੈ ਅਤੇ ਜੇਕਰਇਸ ਲਈ, ਲੇਬਲ ਨੂੰ ਅੱਪਡੇਟ ਕਰੋ (ਕਿਨਾਰੇ => edge.from = = ਇਕਾਈ1 & & edge.to = = ਇਕਾਈ2); \\n ਜੇਕਰ (ਕਿਨਾਰੇ! = = ਪਰਿਭਾਸ਼ਿਤ ਨਹੀਂ) {\\nedge.label = ਸਬੰਧ; \\n ਵਾਪਸੀ; \\n} \\n\\n current_graph.edges.push ({ਤੋਂਃ ਇਕਾਈ1, ਤੋਂਃ ਇਕਾਈ2, ਲੇਬਲਃ ਸਬੰਧ}); \\n\\n} ਹੋਰ ਜੇਕਰ (update.length = = = = 2& & ਅੱਪਡੇਟ ਕਰੋ [1]. ਸਟਾਰਟਸ ਨਾਲ ("#")) {\\n// ਮੌਜੂਦਾ ਗ੍ਰਾਫ ਨੂੰ ਇੱਕ ਨਵੇਂ ਰੰਗ ਨਾਲ ਅੱਪਡੇਟ ਕਰੋ \\n ਕਾਂਸਟ [ਇਕਾਈ, ਰੰਗ] = ਅੱਪਡੇਟ; \\n\\n// ਚੈੱਕ ਕਰੋ ਕਿ ਕੀ ਨੋਡ ਪਹਿਲਾਂ ਹੀ ਹੈ।ਮੌਜੂਦ ਹੈ \\n ਵਰ ਨੋਡ = current_graph.nodes.find (ਨੋਡ => node.id = = = ਇਕਾਈ); \\n\\n ਜੇਕਰ (ਨੋਡ = = = ਪਰਿਭਾਸ਼ਿਤ ਨਹੀਂ) {\\n current_graph.nodes.push ({ID: ਇਕਾਈ,ਲੇਬਲਃ ਇਕਾਈ, ਰੰਗਃ ਰੰਗ}); \\n ਵਾਪਸੀ; \\n} \\n\\n// ਨੋਡ ਦਾ ਰੰਗ ਅੱਪਡੇਟ ਕਰੋ \\n node.color = ਰੰਗ; \\n\\n} ਹੋਰ ਜੇ (update.length = = = 2 & &ਅੱਪਡੇਟ ਕਰੋ [0] = = "DELETE") {\\n// ਦਿੱਤੇ ਗਏ ਇੰਡੈਕਸ \'ਤੇ ਨੋਡ ਨੂੰ ਮਿਟਾਓ \\n ਕਾਂਸਟ [_, ਇੰਡੈਕਸ] = ਅੱਪਡੇਟ; \\n\\n// ਚੈੱਕ ਕਰੋ ਕਿ ਕੀ ਨੋਡ ਪਹਿਲਾਂ ਹੀ ਮੌਜੂਦ ਹੈ \\n ਵਰ ਨੋਡ =current_graph.nodes.find (ਨੋਡ => node.id = = = ਇੰਡੈਕਸ); \\n\\n ਜੇਕਰ (ਨੋਡ = = = ਪਰਿਭਾਸ਼ਿਤ ਨਹੀਂ) {\\n ਰਿਟਰਨ; \\n} \\n "] ', 'NAME _ 1 ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਹੇਠ ਦਿੱਤੇ ਕੋਡ ਲਈ ਯੂਨਿਟ ਟੈਸਟ ਬਣਾਓਃ "\'js ਫੰਕਸ਼ਨ NAME _ 2 () {ਕਾਂਸਟ [ਗ੍ਰਾਫਸਟੇਟ, ਸੈਟਗ੍ਰਾਫਸਟੇਟ] = ਯੂਜ਼ਸਟੇਟ ({ਨੋਡਸਃ [], ਕਿਨਾਰੇਃ []}); ਕੰਸਟ ਕਲੀਅਰ ਸਟੇਟ = () => {ਸੈਟ ਗਰਾਫ਼ ਸਟੇਟ ({ਨੋਡਸਃ [], ਕਿਨਾਰੇਃ []})}; ਕੰਸਟ ਅੱਪਡੇਟ ਗਰਾਫ਼ = (ਅੱਪਡੇਟਸ) => {// ਅੱਪਡੇਟਸ ਦੀ ਸੂਚੀ ਦੇ ਰੂਪ ਵਿੱਚ ਪ੍ਰਦਾਨ ਕੀਤਾ ਜਾਵੇਗਾਸੂਚੀਆਂ// ਹਰੇਕ ਸੂਚੀ ਇਸ ਫਾਰਮ ਦੀ ਹੋਵੇਗੀ [ENTITY1, ਰਿਲੇਸ਼ਨ, ENTITY2] ਜਾਂ [ENTITY1, ਕਲਰ] ਵਰ ਕਰੰਟ _ ਗ੍ਰਾਫ = JSON.parse (JSON.stringify (ਗ੍ਰਾਫਸਟੇਟ)); ਜੇਕਰ(updates.length = = = 0) {ਵਾਪਸੀ;}// ਅੱਪਡੇਟਸ ਵਿੱਚ ਪਹਿਲੇ ਤੱਤ ਦੀ ਕਿਸਮ ਦੀ ਜਾਂਚ ਕਰੋ ਜੇਕਰ (ਟਾਈਪ ਆਫ਼ ਅੱਪਡੇਟਸ [0] = = = "ਸਤਰ") {// ਅੱਪਡੇਟਸ ਸਤਰ ਦੀ ਸੂਚੀ ਹੈ।ਅੱਪਡੇਟ = [ਅੱਪਡੇਟ]} updates.forEach (ਅੱਪਡੇਟ => {ਜੇਕਰ (update.length = = = 3) {// ਮੌਜੂਦਾ ਗ੍ਰਾਫ ਨੂੰ ਇੱਕ ਨਵੇਂ ਸਬੰਧ ਸਥਿਰਾਂਕ [ਇਕਾਈ1, ਸਬੰਧ ਨਾਲ ਅੱਪਡੇਟ ਕਰੋ,ਇਕਾਈ2] = ਅੱਪਡੇਟ;// ਜਾਂਚ ਕਰੋ ਕਿ ਕੀ ਨੋਡ ਪਹਿਲਾਂ ਹੀ ਮੌਜੂਦ ਹਨ ਵਾਰ ਨੋਡ1 = current_graph.nodes.find (ਨੋਡ => node.id = = = ਇਕਾਈ1); ਵਰ ਨੋਡ2 =current_graph.nodes.find (ਨੋਡ => node.id = = = ਇਕਾਈ2); ਜੇਕਰ (ਨੋਡ1 = = = ਪਰਿਭਾਸ਼ਿਤ ਨਹੀਂ) {current_graph.nodes.push ({ID: ਇਕਾਈ1, ਲੇਬਲਃ ਇਕਾਈ1, ਰੰਗਃ"#ffffff"});} ਜੇਕਰ (ਨੋਡ2 = = = ਪਰਿਭਾਸ਼ਿਤ ਨਹੀਂ) {current_graph.nodes.push ({ਆਈਡੀਃ ਇਕਾਈ2, ਲੇਬਲਃ ਇਕਾਈ2, ਰੰਗਃ "#ffffff"});}// ਜਾਂਚ ਕਰੋ ਕਿ ਕੀ ਵਿਚਕਾਰ ਕੋਈ ਕਿਨਾਰਾ ਹੈ।ਦੋ ਨੋਡ ਪਹਿਲਾਂ ਹੀ ਮੌਜੂਦ ਹਨ ਅਤੇ ਜੇਕਰ ਅਜਿਹਾ ਹੈ, ਤਾਂ ਲੇਬਲ ਵਾਰ ਏਜ = current_graph.edges.find (ਕਿਨਾਰੇ => edge.from = = = ਇਕਾਈ 1 ਅਤੇ & edge.to = = ਇਕਾਈ 2) ਨੂੰ ਅਪਡੇਟ ਕਰੋ; ਜੇਕਰ(ਕਿਨਾਰੇ! = = ਪਰਿਭਾਸ਼ਿਤ ਨਹੀਂ) {edge.label = ਸਬੰਧ; ਵਾਪਸੀ;} current_graph.edges.push ({ਤੋਂਃ ਇਕਾਈ1, ਤੋਂਃ ਇਕਾਈ2, ਲੇਬਲਃ ਸਬੰਧ);} ਹੋਰ ਜੇ(update.length = = = 2 & & ਅੱਪਡੇਟ [1]. ਸਟਾਰਟਸਵਿਥ ("#"))) {// ਮੌਜੂਦਾ ਗਰਾਫ਼ ਨੂੰ ਇੱਕ ਨਵੇਂ ਰੰਗ ਦੀ ਸਥਿਰਤਾ [ਇਕਾਈ, ਰੰਗ] = ਅੱਪਡੇਟ ਨਾਲ ਅੱਪਡੇਟ ਕਰੋ;// ਚੈੱਕ ਕਰੋ ਕਿ ਕੀ ਨੋਡ ਹੈਪਹਿਲਾਂ ਹੀ ਵਰ ਨੋਡ ਮੌਜੂਦ ਹੈ = current_graph.nodes.find (ਨੋਡ => node.id = = = ਇਕਾਈ); ਜੇਕਰ (ਨੋਡ = = = ਪਰਿਭਾਸ਼ਿਤ ਨਹੀਂ) {current_graph.nodes.push ({ID: ਇਕਾਈ,ਲੇਬਲਃ ਇਕਾਈ, ਰੰਗਃ ਰੰਗ}); ਵਾਪਸ ਕਰੋ;}// ਨੋਡ ਦਾ ਰੰਗ ਅੱਪਡੇਟ ਕਰੋ node.color = ਰੰਗ;} ਹੋਰ ਜੇ (update.length = = = 2 & & ਅੱਪਡੇਟ ਕਰੋ [0] = = "DELETE"){// ਦਿੱਤੇ ਇੰਡੈਕਸ ਤੇ ਨੋਡ ਨੂੰ ਮਿਟਾਓ ਕਾਂਸਟ [_, ਇੰਡੈਕਸ] = ਅੱਪਡੇਟ;// ਚੈੱਕ ਕਰੋ ਕਿ ਕੀ ਨੋਡ ਪਹਿਲਾਂ ਹੀ ਮੌਜੂਦ ਹੈ ਵਾਰ ਨੋਡ = current_graph.nodes.find (ਨੋਡ =>node.id = = = ਇੰਡੈਕਸ); ਜੇਕਰ (ਨੋਡ = = = ਪਰਿਭਾਸ਼ਿਤ ਨਹੀਂ) {ਵਾਪਸੀ;} \' \n ']